stalld-1.19.1-4.el8 > 6 6_6 3!pQp)Tξ7]mtZ`eΑ ]mtZ`Zz;ih-*`_fl'g" C|`M~Wt`mH@yJZx "I_V HJ>( 'Δן`N|q?xY6 iґ7hExop^V*x֍_. ^kIȆkUI>7L 403!nW*WGn ̹,s53Axa6 $<~:9,\7ƼsFv0B"^G`0Vj*N z/zDL.xɢx;a@4pMXg/#L~m%uϧq_~q ,ޭ;l.lie̔9dX0h+{V.\O*G_nu[~.թ4j;_-3XHDgS:٪LT2zuDKk,p 8d3555254c223df12c355e39d5a94af4b0188c2e7569f709546886fae61e90c4e5caead148aec710dfd2fe33091719e9f2a39a90۫3!pQp)Tξ7]mtZ`eΑ ]mtZ`jqn'N)9՜Ca:r',}fw4@4,*HuAדRzCC4-7T~J.@ɭg@`eqb{('v'Idj/i!%$%s]\#exg"HNգz d ߌ^@n`#sĽ:-ʾ?^T:2]ZU3 bt]T6}`;p4&?%d   X 5\       t (89: F$G%H%(I%4R%8\%<]%H^%d%e%f%%%%%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Ή)ord1-prod-x86build002.svc.aws.rockylinux.orgKojiRockyGPLv2infrastructure@rockylinux.orgUnspecifiedstalld-1.19.1.tar.bz2Start-stalld-service-as-initrc_t.patchhttps://gitlab.com/rt-linux-tools/stalld/stalld.gitlinuxx86_64o(_eΈeΈeΈecef844b8733e79ea4de4e17af5eb6f240b5a981b1615658b06f10d33187b4dd1b0c5c492e72cc7baa9b757b2680e54f253f738327ab7c86ca7888dab6c2a8c17f2bb5b6b1a769b545d1533026b2ec3ce4c3407430e39e5587434d7773c171ba mockbuildmockbuildmockbuildmockmockmock  bpftoolclanggccglibc-devellibbpf-develllvmmakerpmlib(CompressedFileNames)rpmlib(FileDigests)systemd-rpm-macros3.0.4-14.6.0-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 filesord1-prod-x86build002.svc.aws.rockylinux.org 1708034345Start-stalld-service-as-initrc_t.patchstalld-1.19.1.tar.bz2stalld.speccpiogzip9utf-81d766c3c1c50be3e131147e9d006b4d9e36a4327467defa868f3e6f982a7d36f?et\Ͳ%h˲X3bfffF K%l1,fffbfw}=?Uybe授QQ'99-9 Y 4Kce7afzRq4;98ZY9@#Hog4!`[k2dq\̬솬&\@ ;# #@0q0  7@ ctx-, c3CGz5?#20AF{YLlll,:F6FF8'# Б(*" W0O0C{`dC d;m` p Aњ; ?0@~57513rȂ >:3m4:::8#ژ$Ӟf4ӿژ'?8PP@RMLtt 27F1`hdg2a89-: oAP@HWE0`dnhut+p8)@4t W >㬥T`;@+'c@r}< d9@!EuLJx?O'<*LHBB@&Edb*2Y )y GSiALd[;E[d8??'+sSE[+s>6;11~dZ]u/ hbW??Hz#wOf\LBZ*Zm_m?#"mo^Oef=ѓ/l/ o>:RpP}Ò'V\G[uSʦ3#}S.95χdzc?oxLn]X/Ϯ<5|zU4o髡g|rݺ~}2r8M-ffњl +pg|em;Td*CLu TH 3ALOtI'ӕqDq$^65O ߢ?woQ{/On~_&5F2g6!$%.|/ށg>D> ^'u wg h3'kwr_)=wۗW7yę̽COzD/a;"\fM~!igȫE@AWL ƺ\tN'FAzPGD-9O!$G,) >#*C Ȇ"8,zWC-"K!́%7 M-BM HFjN"^D.}8Hk_4#"* ))SD,D"$ GևB&+"*<+B4WQJpМIa+j䨘JZtBHebIS@jDK*)FO3@~%b WCC,e9:W&&1H?_ CHJPFSB~$QMHbq?ۋ2Q)i A3|6 * ,M N %L5 /#c4O $ ǔ˦āI% {CccceS/MA"9)I[Nh80X4O 2X[ַNO҇w1G튨W_M=lnj΍[+u7Boɏr$!T̴KCPȵ0La=36v߬ػ^t/Ȃ3;\,r 'aKb8xP\$`a91#e#HgSmFJZa U';ho]ْl)s, tщTkC G`MGLxƩ٭@6@.Kx޿m.r>O g9B41x6dU200t$8(tE*䁣؟¢`3#J3/! &2T3i6X7nICWѦI⯍i[9plD1 $_Ue9N+3 KiNblGO07t21cxWl.4_sG*֎;ڔT7#u"m6 Ň [nܳ _2hRXU%c[S<eIT†x7uIL6hƂ.Q;Շ ]<źҖf٭@]jdݻ51Rp\s9r]iAp8Bq5AT'ܧÑKj_*x6x+nSAyp~!L>JWu9,ơ5Í1 uؼ~o,ozg!l]6_I'DR.ҥ2[eAj75ʵṁ]HDgX]YPtT'XWb v}~ԸA'pb=k2|K,e iŪdUS#@]#:46lO5;#O!z&]ZV20-&u]̷Ť١ n/)USxI?9Ꟶs"K4II6[ ҟ?bZ߾:{ NOڙB,4$#l^򰘌ݿEF!svN.RՈv<goٗPQ-oV.jjRC kս\>g47 $@mgyZPPЭY )LD)7ր:{Db, j9A93O~C'1ަ&5;߈&=lTƘ' ^C>l?^TO/7fϣKllemTD8w[Sw@en:cCf]ұS3D -|QK-nZGۖw!{ZKi Z$"fczwn5iE0י)ZGYETxS39:o#ݍc}x.0!0xB;ObÊ㦝Ó#ϖ0"M_UȺ|Oߵ:MYd/a3J-zJD;;9B@& Z P˫S*LN+M/qAEz- 3f7.jW/1ʈsEڳD ^cȶPS9XTxXof NۛQe}(xNe!DU6op>C$%%87&ksX%%6(½eʂ_hɨg~ 'HH׎-OHlL1.-)m{9S\l}ͮN%\ujgֵ .ɗ't736_Uu+UAT鮋w d0Uy3jd!IӢ _2 (b\&1"iK'FQS\flҍM p;"_BƇ \y靚nM>-TC$JxʩKOP{~vㅞX}Ř8,V%[@ /;,]^J k}q3^ Rů3( "M6:yj/ݤ%c7'~S}^hzI!KV]mjIǶCg%N&KHR>nuL_Qϱ65u I^j((!нqGȵ_swУrDz˸IG{%h&IA/St_ &:^LgFʞ u90o% z {rL^^o^6+S 4tf܏ֿ6-xNܡ%󃿇W!+|US&vx6U! ~eTVBSDEGl<-B.'ӧL`0^H8)nYNZJI 0D>5;>rv{M=X ˎszZAMk,Y~-!S{C:D<,|m~pcYkDDĝ'~E)6K.؋n4s| ke uiFpYZAnez~[3΍Hpe(+sGgj{@wXBsnZs קc4BQvmǾEjFEwF[ScR4,8K|~g~EE}b87$_5[>;A9W"W|~눉Yg lH8Nl^6)drD!3þl>R A|"B[>qLBn1ѥ}r aנ^QRл DJ1qGkA,Χ0xI)Ԓ |@oq5^}7HLͣnoU1ީcɎ.Xlj@K}9zQ?\.5`XE|%KE,Z/^JbKS\援"WBF!FdPI\ro6k,0mK7xq>|y^PKX跛ao%!y:kոHdęةGD#TG 5f`!. ~o]#VV>C[Y6qq ~s".K_ե m#Gp.18qxMA.;˲y~A'u<{H|uG(gY&8Y53kZ#*qvڅ17lsVI.~Zv}HfOMA|\[*.ZОގXWR^ЙXia/\u#Ϲi` δ)͂-ofBx(꿏2CW;`蜌6X⣾3$&  n VuG~7Bv#Tw΅̸?̨طYx|05\rj^R*c}:/i-~ܝ(Ÿs㵐NΏ0ygS,J& Vq7=w$'bSh{:dkRƕ! :!Jc+](=7VN.=oZx^Ŧʊ,WG" r`-ѲϡC.RיCȲK61iE B)0FT4r:" h24?gV]E_e>f]}~G l !.b':Z|kӀFKJ!MVIz78Q8D|%Qh!?GJl<09耓̰oNhzL4z>9ͧ_` v9,ZoJywC"H~{A{ɭlP9,= 1G3v߰gBI2{zA!ƍx5fTmRtPL̖,p0!,}d|&9sIޫFBrE?m"2HpcNbw{nɨr\wSLr5*??c3琫!8ՅĕM56[G0 *OǶ7k4HN6hC@J#Ձ2%^~# 34]Orwl~؏ WC>96Һ5 ^{-Nݴ4VN;$bߪ/B'<烾@8,Mѿ9cǺh^J\|\O]iq1ƴYq,tT.13 ʫn3oЭ.H& )̵9kdpyGE}7Cu F1Qz([bf>Fa?S(0|5('V{|o+|uޅeܳH H걇|mZ} Mi+r0MTϲ͕"K|o:ͻ'^2J8D71wZmC?oeOE|H :(K8@#3+̥t'NxGUhK~}H~U!׉jm?:դ&6ݎ|:Is#MHi[(oxt AiDkǭ1:Ͳb #5jajbp ^y\-yzJ̟Z|n+&-{ܫNtt+V*^)\\x j LJgjHOm+_FJQ'av Uۍ\x02S~;85/S1 ϐψșGVмy7",a޵2fL; )]o wgΤH h㌤7`y%X5ԝ:GlWߙ~V:cqFmC }'8()@<-hbQ3+[!+q Th]J0߭ݪhvNFiisyc-"MW93}n6Hsc4V|5},١^W沯0$G4ekeɄ0Jw}_,1Ag7-ʳ'crL(,Y'y;&((Er )YX8\G3I!h\q>: y %r\^Gv3Jx|rss ?"%y˧!pE&Lopqz98ŏ+eCAnbW0+qw yWwա5B!3&  Sj[%At&cpJ!?cc'|т?902ڰ闡J%{XMA(O F01(6 GpMBya@ 9tqW]j/`Z )NH۶sWEǢ>ҕb" M),b9d!o{8r|̪s#ckoP VNL gܹ,7NK- 1WR~G'%vnmWӹd:z:1~w0 VY;r##8JQMi\ІMZI [%\;} !ȮKd[&D[ T5գT^C "7xw^gLedS d)$\̋_#l'zUìhmLiv}3{^F|̷ r w&D.9[7jmd]1j&ޚ +dl\b{B2XּUYW۩[3蘭 WԶ|m.^( R;.lNr8KI"`Ҍ[@~&/Y{^#Fz͉> 8BT?uofc^M Ξ~zo.jw}Zf<3:*at٪<\L.МJJm N,dLd||ǖJ~FukG<%#e`Qn rGv Ե1*".u.2sYh j\ OLmXS}zHJ[*I6P!湝sוpҩ p$,,-/i.A]jaI}aa#gO0'wk.J5T+_lAA_]EKU8R fO#0oxk=S!^Pg!ѷsQĶgr27nb~^)7%ԍ.&YWQ vZ6i۴m5I>*،*6!ƺ-)*Ϫ,ʀzvlKRiMS7hi^2O(Φ1F9 9< ԫbT*$\==adծRj %u+B:.ȯoH͈V(s yeDE*"ıP6B*KFB^hm$B SQ3Vj?u <$Y%}dmJ ADIew #%-ufkWSɽXC/W $#Dqm-& /X'<~HsDD+axe+!Gj]ױ1Gٷh}=)Ԭ"hp)TK/N{ R\S9cƵQQ{rۏl:CCw+_5:P)O8G:5kJ0:##R߬&gڏ]1ny9RJ+J+sQjkuVx].\$ 7nT.! FKJIZy9Ij;T7Z&&@5~S2RXE<0MM^mLh&X\sG{ʥDTeq~ pOV6〕!D쵋d58Fk*SŕZ)hK'[mO2Cޘ]4KkR\i‘uN>'j61tk-%:*iݱu·Z! (*Q&@ p.٧6T2aqbR'Șq2Cִ۵9Rõ9eřSJ]qzE42"dZN^q&*sl9AiY9;J^L4ߜ û" fgG;L" "+HT'\zSXe.[0ԼGiCm[DZyC\vgY*\Sh KjY i((^(J~$]1P\)k.0Әd?Fф)gFH?DvÙ"hԙYڒ+UǼ oV )yĒ+ŜAe3gy4Gi˸Oa]&>&rN=m]ɴ{rs/ $qڝ/FVEk]f84G&}wmG>.4ǫڪfWh%Zt'~[se773cPtW=ǯtK[Þ)w=+b. AL7I+`ꄕ)[0ȡɐjE.jU OV.o@HC+ǢDۆ-l'C{ [^½FI'VIrb@HAcdFV1ϬjebrL"jĈb] "$j5EP1%1t>\o LcOn'%Q1x8`*F6N9eڀ M4~H2ɗ q]e1w+CHRDZ+7AS &Ee ~~AQW0yܧ nZr ?a =2$a< wy,HKswb拷ymoSŀN2 t f}V7SwO\>%ut-%-\eNw#ŭ6^AE' 5φ~;~}HP?W p†nFUom}|hIw_ֻCbv'IB_TUśz;5݈ )r1'UaSԣst_N R_k2{j2[[B€G2!P`! Cװܼ)=VTg2^j׮@g1t4Hf.XɔS}e)t9(\mf?[#_TcMZ=ŏ0;Fr/&HP22M0RPđEH2I;{ 6LMsbZyY10%ZOod`6q$Ycm׌Ye]ѓVS0HbK-9@V6?%Ocp4krVL&F}~jt~ EA-2hBA$y:E7^: ;&SJc,^ /@h0#y TZm3|`hχ*M {kJ7c[q5wҏy@:׿Ωw&? 9U_8e2p iΟ谴rpD:+GhpO'wyUh(_Uise :c;㺠v밷ZJ噥.Wkx]4/ZqUFƅaQ|g{zೝ72OX*EuͩxEh;.> u]՞y<"܋0=oWxVS^};Ξw)fBH|>&B~fjI߷gld)-z)o)O')TsH Ge ;5!D5R % #=hzٍ  H,~z>RzIA'CɣՎ0=3$'/Ф1H(J @>>@񿱀f.;xdifNz)c$J$ZRFFa1:7tuʽcu&G}>;<緺=ݻIQQ䠋M=,9O5\xf95U%Ull% g XLڐbM`ZhwV{!*w1LVlho'c/wzWKCCz1FLĜ4y&w΋KE7fhoe>hU= "$O F:?~k1N %yӍЄ=绥q=ƚ(3aD<_R&kIyH HBI6^_W~]|k=0O hP'Z'D~h7cmDӲ:rN>%#ErHAcN +P:)·l8e 2.4nC<-ɓ)chB mw|}sHVLp[+23FeMqZ߃~痋/ #LEʻ(5V-Oˎ&8d3\J9QE9Iw2:/bGz*o68uTaa@/zd26>Nws20E.nI֬:sg\x >W7ԭnzn"X(7h.l{y%ia5<ޔP|Iہ͉Jj [ǶwG2L4e\?q}uu JGkh]j 6}o6'g^o#37;| GnK w咡 -a3|e";XPtXja6G8b-N6jfgRSP.>v>fm1}ˎP:$lo_zOijWCu=m9"iw_bڕ'?z>13 ԛC֩&^|,T&r- u,mL}\aK!Dp{_YN[%UQQbQV!B.{%iǟYYpdZ5숝Y&?,@2Dv#dƁ#Y1~OwD @@Do|Xl~#/9?`p"7'ofp&mpiZ!!]?.VI%> ^4-F5{ 4":!PmzyZD Uo}#4xvP#2ƞӿw*UxDfyO8?V:7<~NM! <)Lo]7Y~O!2FMoRW F/ tlա^_ts"%qi=oB#שN3}#,~[gCR4o@U'-ƔuF5/^Obc?לcFge$^g~j 3_< gI뙗u,.G&tv?^B ]vtN~%Ȗhk| :FEHn؎wx!մ<.N}VŊ,kuNdD_xfʜXߖ죜v_px.(x2d{TWG# [[{Z A^xT@,'o CZԐc@($ ?9ͮ,&\qU9)$Aխscvu?BtM^wVx@oy.̔2aɸ@?)ݖP?^ p4|0[9/R/tȌ1 4(B b/AD,WnF_ 6l$ш 3jR&=L]Y p!9)؃ l硈'R !L HZ_$=j૏$^ؓ`B)>VZ_-O^]>rf>PnV Mk~_z}F< 4C4@O**6k$*! p~D4iGm5L$r`8]~7ZXdlay^&ArCclC1CO HqguR:"7lMI 1ɞ 9mH{78q8K tjAi)%ݐ ?bC$CyRsFjHhkE/3k( AP p˚ u0c D숍㖎=sH&.\I$ g~ uE{o*\ *a@AM1աL1QGY]15Dm[`b묍0&d {Pr*, PYD yKg8!08rp1aٗnRjҰ57]JOvBд!82L lwGmƧlq0\83(}(SAj#<9b4fno`O <4q #E6^o~;OS9xU̮{`JZY cXLѣYS!D5S`'xPui(c+o3=G!4;TeqAlFhv6@{3*0;-M(.#DA㗬Xpǔ:[-|M gܣqPƉb³DVeYkh)ûxGrR&"2"yI"mX`3-M0;y/8u:!2F]{#ޚ?GoL,0!HtւHDr&a92[3n M9PV\+4# h0|)ٙ @L B m«²㞎Q5G C( ȉdBj4M@1Է;n a96뎄 ;DЅ0֐6ӫ//o2t_iHH22v ]e^C@pn)H9Y!>O'ΞDzx?ҮY'=ǧgFԣ=;0,A@ :C0GXpXw#yLJ=H)IURQH^*ባqRy.&At#w bAao r5sEdudL^ K(-w$j(sWXWLtLTo'G7 RmgMfa@tr&W"`IX5H汇 p/*g>c'D]ދ^`)E0Hz!z|(ȔtitA%b{=[2%qv5;lp.BP ieuJ=LoH#v S5rzm0L564bc_%l 2^ +K@ H0(o{_rMa>"f5#t Tq:Q"DS :XBǀǀ+{ %x,N2/h9s!;q{=x&jBLHf"TIyd"L8D_Nc)Ƒ`1KZN{D,4MTd)8\:oT#Zؠ9LsZlHAyVԐ1/|b sPsdThtnkI!{h(:g;Z iQ š;Uq.硢 `Ԝ` BKptl7qH\[ah亪_7$ ( 灒"b*`7;&F&g> JDMk`v)G mܯFlj 8n߉ᓈIӛԌʬ{E!n9=kC>{V 9#`cEmUBoVń@ ai&CM8@8@th{Oۘ9 D ,vzGd8  IӬ2i.qF2s O*v4|ƐaՋ~z O? LJBߊDU 3"~\6\;0ÿ|Vq [G:u(PûXG> 2ryA3ﺂ"*~Q }G_.JpiTgKe xa11RP?xbdPI܀͊htP4!e ' ƓOS0+nm^v<$b|.$dQ(.~ݵLzw!Bif) ΅.(joA/7wt 8G> (':{ݜLZQEBa\eP7|P˽.;yx5L:j YnǨTRD@ ?*}=u{4Ta0!Y9_b\z)$-j= 5=H9$5#Ѭҟvƥ`n9㯆nTJT}Ssx񟂓5+͓1fI=Y yBL=Bh0\='Zx[ r!ב5#e=$UDI P ɼ9I{;q-ΔChR6h(T$C٪(.(Bzd.6BrL C:vt+h2;anR pZ#qDj!Ǭs{K]Sڏ$( 5!UbЦ J3@l7ޒ] zOC/4Cy#HJ%%$"  .~'qsBcAC3NJ˵!؋옣 bBB@!"cku"'!l 2lĠ߸$$c2N< 8KT L2CPb@"H d[`\uRrI,٦ų牽h퓢,$4A[_ܚ!oG AVéAvD_Q'Dlo(r~7bUQ$0]\Edt3o)1ꙅ#t}.xn+|5dM(BNk74YR*r_6i.ݣCyrL&H,,ȸoj^ڏp:5 9645"Oj[Es&oގ! )/C։&Hm,' Y1(b-Cs1>'k ;NJ'XԃOW]֕.rөƀyݷ00DvS//qV.;(v"!8tNǬ{TI>C$)] >TYfz"3S#0w1FGBS/ɛFPlLV!? %XSq3U ),b8JBD%s@qu!FP̓7=EpD.>'OVN|5aOA=?'#/ؘ0LE7q&0`Ԁf#(1Rz5d1N ӡ%f:.DY =poDbWNƗ3_-ܘ%i4d_ -% H %4ϡ^t扢k05PBǷ<)r]&R0! Qùϴ3> ?Kv $1 БJ2X"cT61o7=W={xh VK0ƔO-y>k#`k$;Ha+F6Zv1yS3zhlp aULZ!11ZSq>q}K\- 51t%/c$QB5!okesWi\<ޒ>&&LiS E6:\^^Ҫ6]0:U8ܹ$6C3Z X%&ri"\6#&VGC߅ ;Cnxlcj1I0^V| IƁ޹نy"<`A=4ُ}֐'0#*23,C@FWJxh3~=QT=U5J")*D,Pw#ojDϬ8A@/ _[i1 f9M G@'to;=*~b9hWzAߏ8)6Q+aDxS.-5kW:'Q ;x+Ӱ/ܫ@b٩vu<9krܗ-ٞڰyƄ>Lp9W;ң~b8[t`T\έErH`C ;zqj,rGawrԡW]9Np4\o~sldcI+u:|y vuR]7׎rpwHߑ'GOɳ:-Tjjկ!q߶T(G>:3;F:N%):A8iToRL3>9֝[a08L.<ʶ]ϵdMqGɇ̉  iɼ!q82z^}dMm.$zy>1q~]BB:bKWff̗r^9נsJN,BB1 ˦h* vbS*P0pv(2"pT#qGX:xtdc6Pzm[vhwlf _ʰy36Q+.#5 y0av^-ƸU1="aFU/a "AXH À0BdI &Ia\HH7μ.y8' ),RE`d"g 3)TC!ѧ %BS%@wCg~`f!,8* _`VkH|k]ԦaûI?2vˣfmJxz(8xAϊNzKeus(:a$1x`Ͳllɋ.9#jc= : J6fY0y:phQ̮ L:&2jV#ՂH&fvL Hӗ-[D3d6!`1c=Ja!] a !,NN!R}츪`9?E wÎgdsĚNL?/V!uO\c/dl:қhk,NZ? Bbݳ_NNGO0r܈Ђ4E˰ %QDb  م %>PMtJ^1O]c/ŃqA?s ʠ̈3 IG2&="4ÙF(fv4:퉁DAM#F&(檪J윞S=tshd !|Tښ@%lEInbs~ES3ؒ "MPHs!,K)|EAq$is B!|KQ#=j! :ԁȟF rHD"ݻ/MH v05b! JjpǨwB *ʺ3|[5g@"A6VҒFYd IF0LDLAo~90& , $,1?T9F=}|g""ywj[|KQ+ID'`EcPty n+p(@K(a&Q*{xpF~| 1}pp*tusB; "H4QYiՊvv!3@`jOV!QPӟw)8DY 0p Bs4V6Ni-c) B̸?I1N ȠQjJ D&ah(8.;†nQ6Tld@RckKoA4Tau @,SGᬭOG Gp,dxRCq|i `yYfh&#iՊ7 Q)HCH3%$IIE DAK!@RҔAPPBRC$*hYH 0 oFlur0N_z䉅wG4EQ*{c&j2 &"e%J FJR`|A|>?;aLn{=sL 8%26ͫBBp q9z"b'B b5*R@{"EddH@7u~W<}G ƸQ,efa\9" [ާK& EO { /OY`b'@.H$^k zg/ia͙&I%AA.Üo0k hƂ"-2{(8^ LBʦIqP$ie޸weG $8cv3Fk ՆGoxA\hŗ8rCNKLۡDX(&sStELXN% I0BQT8_G6xP'{}Ѿty &!m xlJA9GBpp3X84d A0u=P},d;Mvh_C d)K/] )]YWf܆``n3lgw*NسD9Ԉc.MՀKVaƐڲnAmkjeOC&U,ᶴ9`ַ81&ǛrQa ]I$n@6QZ_,>зBfRuk $Ok)644qd#DrAa4K0d@Ev7<1XUM9a|N0&\@"1mԋzIÐ0;qqMj)8"D xh.NE_Auc#$Mxyf׈o fi gq0& B_.d46B(ىy5{9NThheo#IuX,DFgۀT)H[&292f0&HM4VO"QZ_cd.ZSE+x:B C(R$-E 0J0MRD +#BzX.MJ)!PNPl@HB)TA ]ؑ AX;A=PϽz^>={U#ԣ3-etĪc?aMUN;Ϛ4EF̑8ЧBrL1dJ%Q'v?X}vSڬJMOr/=φΙ3!Ui-eYU/z>x7ft;Y-sD[Ϛ9Kˇ9(a34}\/V,\ʽ%$I%iUNtzjLC>L3`OA%ZfhlRTqI̥P^}^C'X],7b=vPhp-;IQƴfx < Z'v1lssKLm5涥;U[G=,Kop!BHmw}mZ.j|3e$s6Ɣnj:ع N͓c1uV y?2wI@&1cW;WJ.;՝xꊊߦe¯O(o ]]WK7͓b S*mtc9OM_*DobN{z z!8v[,"?tMKaÑ =OrI+#c )5zIJi/S"C ?rF!7?/}TjO\~1nJeaKA_<~os@nŒ#͡ zӅ[4)ꨠgjWe_RqײZ2Oѯ9_%`G_ufDZS t=}{@l˨ F/mYT$|cuD9xqߪ*Ό3nxs0ErMgi%# ėVYr1kϷrϕ_vPwFٕɞUn(|N[o޸HY/0hЫK%??w*8boLw*TM(r!8֙Rk@M魩Wn[vϔ9!Z! HgLQkآH1msnKk UY k'D?I\S5Z tv=t jY Yb5BPGtݲ佸z{Tlj:]?uQ6>!'HgE'D%L*fM韇&>QxDqD"SB5 ?;054=হ"Wrbe-eȨV7Y-s?ɯU D:ܸN5cm7̨by+ᓤؗԊ9[:o5$_|W . kJ)[*O>oq^3f|[9x\SW)2R=z7ył2mYI܉=y'IqjZzYLx_ZB.kRZxJlXOn;پn_ڵQN)TyG49~xgUϺZ_Dw ,׬ Ȼ~<nn7o"*i+])-wgX딻[qsv uRCSC:ķ{m->>۴- .%7Hh FdIqG*R3eP{Vkҩխy:j.!{@Iݬ)]mORߵM)BfnƆ{$0}73`%2K1T(WI{2S젇aI [^he0rILoݤlyxNv,CϪⷧ˲ ]v>X.i} Ym_ $|Wkf;ʟ;w61h.Y9fݖSzE2ER6Ƥ__!W%3fO|hتN.5gwPzwA}k{Zm ̚OY0@1+B7_d?kYbGG[՜{ŋ\yM LZjED&֥`*o-_ٝ٨g՛QQ5 ak4V2su8ZjSL($VrI1))'j^`oxjhflWɨGLC4 n͵'mhӷ׼/9Rz'Ikw8~ 7oFG z&ڽ>M ;wPnٽ%Jb١K.JY\9 Dh<í6֊5h_H .]a?ب[WZ=72%޲E@;Qy$uI GU*{-]z΄,@xqeJɗ;P>ă/ZTuH)\{o~h}Af:ܮ!Ѫ~n '<^۫p{^T\/0Fk]YvQўV1ǂnWE!A[So?F1+]8'1-W@ê{kzEԉ~xn34j!Ɂlr֞TزW<']nnMԾaJ+5핻5Vۭfۄw4mZyCzvq3͛=]~1z$׻[Z8Mss9y vozƀ+ҮEhY=Y.V!߲yRpv}"5fj&u;./[tlQvT}v. *W_3m$W齤瑂{>%)Zn$,&ջ)j k1ٟ櫗}.78e=6+Cu'O|JrCo3|ϝ>di\-G7ّmS?_ij;{ zf+e~sF䁶xշ=ݢC=4әn`#2UIόQYixnO_V̛82ᆅw gT(V.W亇WF7jU5' 3}*62LڡϼܸM ܧYnevJɶ'_'dat~N"Fm*:*Þ $ǍR#SܸgóZPh!CchBҜ*]鹕$Եb0;햣z<|2G*f+!wov%`KArǐ~~buqM/\|^[u<](Đq3+/w-ZטxmUocJgA[m7_<-5 6by˗\Vw]3Vrv I1ڻČu+4Y_zІrWY?-os=$S;}S).a ac坛]͖;( V,/%b\@/Z; _JT( :T|W.琍dQ.1N؊⤎yY{~2RuǼV6o.]ze]7=H-"9G%/>_Meg/;VwnTбGBȊ=k u!%X&EJ[Cx}U^ZbbH#ާ+ T`VP+5߀ Qٜk!q\7mc؅g|  ~ZY@~O'z{B~uW=7=$vZ\b x.=/"xPtzOSO2OJR Ӝ:E9$bYm㈖TP=#}v|0er&nw= ,1P]J}Yn\SksގWE^t.-`MZO&ԓtBJ3i{TG:B;0=k2K'5+KLFȔg(~ۿ@RڰppCj^%N-fr>xaɷ !h99r-%hIۏ$3a, {S)s>QC;\=ͳ(XeQj_j(RN.()XNϿ1a,S )M[YM&W&,l\cW?DO Ş/WGAm7ֵc * M_Fe+ŕC~w 痿a'%(=UvL[ 7SG̫cXgy, +ֻOgn|-]@bǖԫ٘H~aK!S,o;zI?/2`߻X`n {Yp麷ZUcQK3>XhE|/Omֻr?T[aK꺶3Tɐ`/6{>YOUN@"^[گde"޹wI]f<[o[B>PrcTG^UiiIyq&ke;, e[uIh`[v:5@-"\b[.lBQi4 {h]VrGH/)o ʏbJԧ(-*#VҒ{E|Olzғ'# vNu I}1}kNlr17|xkj mo[A. +w?SFA WyrN`#Yzཹ-F/!!W| 6TQN|ee;w|d"kO~HNz3+?^Aj7Qҙ:]zwP8Z ҷ1NO_D=byLl?y1D<\} qV8/HE ߓLOH "`LDu`]G ]x Ɠirn $4K#A>՜ȹ ,tj5< Y ^ 1?f H4f\ dKr~]Ւ*ǜ֐%0+Q>ShpB$Qt]=0͢P$1d(N$ $z yxQBL`CI0#+.#&2Uk0d1l(a#ERܵMTn(a#Z":fL[gQĖZ%0 SZnd @t6*5-J2* &@i9/NH%@Y6@5%BMAHWi@Y?YӝQAx & #'ƿxw`91>c37=21h[Z4%:(4"Cb3hP" ~MlM V#lvӀPLJ>("Pl`l58R)L EfSh2) 璐p6$lV5k Āki@&"쎅$2 !'F0Q]A0PTJ*C1 2fP @`2 dQԎ OD'XJQLŠSaEXT $,tM~x '7 I'Yrnsnd`(:dJ!fC(;>^I!`Lf"L&c[پƅd+ X"PuC :1H8Ɏ#BE0N/P` 4#5D33 1(`a"M\@ PVƀ!{3c&@NL-jxMDnOxOdI΢ɜ< 7gQ (\!vBc H 0?G8DRyyIu$ yD.0qTFh԰U0V<3Ĕo㠥zB<M~Lm< j ,^- q[3xia`&?J$P$E6&'l<1LCed27ka&[s[a1a-wd\ 8 ǘ\lD`gI,NH2i1 ?R{811(1p/pMBnHެ@gG*1,s ;DH`%H[2pa^R~<ā8 UYaǘ\ΜP-fC-78Z!0LcJ Gڸ1+~,Z k+" e0X @aр^dg !,68M&L##% "2,)2)0߰4ntIl HFL UG|iX,uvc,|M3Es!_I1ký`:*p97O7uyeH7.`?? ~5Ȇ[(p|\d'n!MWל V0/:{F  ?[n:rt B+^έp9߯OHl *'0 d<8vLfe ccg8ґSeCn7K 2ln9w氰ʚ]&Κ`9[Fڵ^R=`&9KA^Sz)pE@d5H:gkr0> 9xdў48gp?z [kQXp!&A #dA*GpyFtV>Ce@`826t@7omo[> @?B: I\MWpM3z_ b PP+\n K{Uyd7嚏bǙpGp~=0kkuqbr' aI̘i/WDzB }3DÚ8lE9䙎 fG@1CEZAq,&M#1\ ϭ!䝘|'8"UI`썜H9!pl} ']q*X6ιo>nT* ^r"9-Pr8gp:O$ >5HMM|