irqbalance-1.9.2-150500.1.3 >  A dRp9|(fJnۜ,0nd:W%K c/nCG|+jƒ+"l-!Q,|.#R%cbfĔ9]M/#w^lڧMK . ʗ,B=Xt^"4>q)1Wjf3i_>̪B!5?9]?fPkSqw/Ns׎Q?"Gnځ nuϝnEafeb9145e900c0a3da40169589cd62e2e1a653075d2702fc2933f4aae2264f7d43bc0753dd7f57c4e52b742f722b10f3787cc211ݐdRp9|+\GYʁYs%<*_Gv'עwH*L߃qVIwS;M{A",f~dK؇Muxo[jxOcQ`4L cD[ྒpb}#GX31UX#H瘯2(Wф/F(ftc^LI h܋kg+C݂iZS3př+\5:jfUz(b((Nq9>#>kh˰={o>pOC?Cpd   E ,U[c " +x             & X| (8$9D$:$==>=?=@=F=G= H> I>4 X>@Y>H\>l ]> ^?b?c@d@e@f@l@uA vA(wBl xB yBzBBBBBCCCCCC C$C*ClCirqbalance1.9.2150500.1.3Daemon to balance IRQs on SMP machinesirqbalance dynamically switches the CPUs for IRQs to prevent cpu0 from being used for all IRQs.dRnebbioloiSUSE Linux Enterprise 15SUSE LLC GPL-2.0-or-laterhttps://www.suse.com/System/Daemonshttps://github.com/Irqbalance/irqbalancelinuxppc64le if [ -x /usr/bin/systemctl ]; then test -n "$FIRST_ARG" || FIRST_ARG="$1" [ -d /var/lib/systemd/migrated ] || mkdir -p /var/lib/systemd/migrated || : for service in irqbalance.service ; do sysv_service=${service%.*} if [ ! -e /usr/lib/systemd/system/$service ] && [ ! -e /etc/init.d/$sysv_service ]; then mkdir -p /run/systemd/rpm/needs-preset touch /run/systemd/rpm/needs-preset/$service elif [ -e /etc/init.d/$sysv_service ] && [ ! -e /var/lib/systemd/migrated/$sysv_service ]; then /usr/sbin/systemd-sysv-convert --save $sysv_service || : mkdir -p /run/systemd/rpm/needs-sysv-convert touch /run/systemd/rpm/needs-sysv-convert/$service fi done fi PNAME=irqbalance SUBPNAME= SYSC_TEMPLATE=/usr/share/fillup-templates/sysconfig.$PNAME$SUBPNAME # If template not in new /usr/share/fillup-templates, fallback to old TEMPLATE_DIR if [ ! -f $SYSC_TEMPLATE ] ; then TEMPLATE_DIR=/var/adm/fillup-templates SYSC_TEMPLATE=$TEMPLATE_DIR/sysconfig.$PNAME$SUBPNAME fi SD_NAME="" if [ -x /bin/fillup ] ; then if [ -f $SYSC_TEMPLATE ] ; then echo "Updating /etc/sysconfig/$SD_NAME$PNAME ..." mkdir -p /etc/sysconfig/$SD_NAME touch /etc/sysconfig/$SD_NAME$PNAME /bin/fillup -q /etc/sysconfig/$SD_NAME$PNAME $SYSC_TEMPLATE fi else echo "ERROR: fillup not found. This should not happen. Please compare" echo "/etc/sysconfig/$PNAME and $TEMPLATE_DIR/sysconfig.$PNAME and" echo "update by hand." fi if [ -x /usr/bin/systemctl ]; then test -n "$FIRST_ARG" || FIRST_ARG="$1" [ -d /var/lib/systemd/migrated ] || mkdir -p /var/lib/systemd/migrated || : if [ "$YAST_IS_RUNNING" != "instsys" ]; then /usr/bin/systemctl daemon-reload || : fi for service in irqbalance.service ; do sysv_service=${service%.*} if [ -e /run/systemd/rpm/needs-preset/$service ]; then /usr/bin/systemctl preset $service || : rm "/run/systemd/rpm/needs-preset/$service" || : elif [ -e /run/systemd/rpm/needs-sysv-convert/$service ]; then /usr/sbin/systemd-sysv-convert --apply $sysv_service || : rm "/run/systemd/rpm/needs-sysv-convert/$service" || : touch /var/lib/systemd/migrated/$sysv_service || : fi done fi test -n "$FIRST_ARG" || FIRST_ARG="$1" if [ "$FIRST_ARG" -eq 0 -a -x /usr/bin/systemctl ]; then # Package removal, not upgrade /usr/bin/systemctl --no-reload disable irqbalance.service || : ( test "$YAST_IS_RUNNING" = instsys && exit 0 test -f /etc/sysconfig/services -a \ -z "$DISABLE_STOP_ON_REMOVAL" && . /etc/sysconfig/services test "$DISABLE_STOP_ON_REMOVAL" = yes -o \ "$DISABLE_STOP_ON_REMOVAL" = 1 && exit 0 /usr/bin/systemctl stop irqbalance.service ) || : fi test -n "$FIRST_ARG" || FIRST_ARG="$1" if [ $1 -eq 0 ]; then # Package removal for service in irqbalance.service ; do sysv_service="${service%.*}" rm -f "/var/lib/systemd/migrated/$sysv_service" || : done fi if [ -x /usr/bin/systemctl ]; then /usr/bin/systemctl daemon-reload || : fi if [ "$FIRST_ARG" -ge 1 ]; then # Package upgrade, not uninstall if [ -x /usr/bin/systemctl ]; then ( test "$YAST_IS_RUNNING" = instsys && exit 0 test -f /etc/sysconfig/services -a \ -z "$DISABLE_RESTART_ON_UPDATE" && . /etc/sysconfig/services test "$DISABLE_RESTART_ON_UPDATE" = yes -o \ "$DISABLE_RESTART_ON_UPDATE" = 1 && exit 0 /usr/bin/systemctl try-restart irqbalance.service ) || : fi fi LBFHA큤A큤dRdRdRdRc_y,c_y,dRdRc_y,dR53aae1bc689211cd128967ff5f53b771505e14356b07409e82c8b896976a303173044573e4a45daf47c424b0a1175e5647591cf4e2de01a5cd5b5e2d94fdf9062d56220b7258ebd0f42cca0249cc5261c1e596bf460d3e5f0c62938e6a11aa93cf96bc63af9882228a0e747d6bb0149c68fd6e203f9e277a572f486ad425f1e65a36c48878d6f099cd045cc1e4af366a7035625fc35ade6e1cad012892011c2d32b1062f7da84967e7019d01ab805935caa7ab7321a7ced0e30ebe75e5df1670b11637e2d94765b3ee22f88307e51d0efad10fd0109545cdea70df82cfc70857servicerootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootirqbalance-1.9.2-150500.1.3.src.rpmirqbalanceirqbalance(ppc-64) @@@@@@@@    /bin/sh/bin/sh/bin/sh/bin/shcoreutilsdiffutilsfillupgreplibc.so.6()(64bit)libc.so.6(GLIBC_2.17)(64bit)libcap-ng.so.0()(64bit)libglib-2.0.so.0()(64bit)libm.so.6()(64bit)libm.so.6(GLIBC_2.17)(64bit)libnuma.so.1()(64bit)libnuma.so.1(libnuma_1.1)(64bit)rpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)3.0.4-14.6.0-14.0-15.2-14.14.3cn9@ch@cWcN@cGb@ba8a8a.a`.`u`H_9^W@^^^@]'$]!][[ @Z@XXe@XwoXVIV@VLh@VKV@UT7dmueller@suse.comdmueller@suse.comdmueller@suse.comdmueller@suse.comdmueller@suse.comdmueller@suse.comschwab@suse.detrenn@suse.detrenn@suse.detrenn@suse.detrenn@suse.detrenn@suse.detrenn@suse.detrenn@suse.dedmueller@suse.comjosef.moellers@suse.comtrenn@suse.defvogt@suse.comkukuk@suse.comtrenn@suse.dejengelh@inai.detrenn@suse.detrenn@suse.deegotthold@suse.comrbrown@suse.comfschnizlein@suse.comdimstar@opensuse.orgdmueller@suse.commsuchanek@suse.comschwab@suse.dempluskal@suse.commbrugger@suse.commbrugger@suse.comdmueller@suse.commpluskal@suse.comp.drouand@gmail.com- add irqbalance-systemd-netlink.patch (related to bsc#1205308)- update to 1.9.2: * avoid coredump on build_one_dev_entry() * avoid double free on deinit_thermal() * change the log level in thermal.c * fix a minor typo - drop Avoid-double-free-on-deinit_thermal.patch, uninitialized.patch: (upstream)- run tests - add Avoid-double-free-on-deinit_thermal.patch (bsc#1204607)- add uninitialized.patch (bsc#1204371) - build with thermald support on x86_64 (jsc#PED-1039)- update to 1.9.1: * get irq->module relationship from /sys/bus/pci/*/driver * ensure --banmod is respected * check whether savedptr is NULL before invoking strlen * add meson * support thermal events * fix irqbalance never exits * irqbalance-ui: able to scroll and show coulist and irqs' name - drop proc-interrupts.patch (upstream) D proc-interrupts.patch- Update to version 1.9.0: * correct wait time in oneshot mode * Document updates * disable irqbalance when we only have a single cpu/cache domain * fix UI to fetch full messages from UNIX socket * avoid some buffer overflows * fix UI printf style formatting * drop bounding set from irqbalance- proc-interrupts.patch: parse_proc_interrupts: fix parsing interrupt counts- Update to version 1.8.0.18.git+2435e8d: * fix unsigned integer subtraction sign overflow * fix opendir fails in check_platform_device * irqbalance: Check validity of numa_node * configure.ac: use pkg-config to find numa * Disable the communication socket when UI is disabled * Fix comma typo in ui.c * drop NoNewPrivs from irqbalance service * remove no existing irq in banned_irqs * Fix compile issue with none AARCH64 builds- Fixes integrated mainline: * bsc#1119461 * bsc#1138190 * bsc#1154905 * bsc#1178477 bsc#1183405 (removed patches due to mainline integration): procinterrupts-check-xen-dyn-event-more-flexible.patch * bsc#1182254 bsc#1156315 (removed patches due to mainline integration): fix-ambiguous-parsing-of-node-entries-in-sys.patch * bsc#1183157 also-fetch-node-info-for-non-PCI-devices.patch- Update to version 1.8.0.18.git+2435e8d.obscpio: * fix unsigned integer subtraction sign overflow - Make git hash in version better visable .git+- Update to version 1.8.0.14.ga7f8148: * irqbalance: Check validity of numa_node * configure.ac: use pkg-config to find numa * Disable the communication socket when UI is disabled - Use %{?systemd_ordering} instead of %{?systemd_requires}- Update to version 1.8.0.8.gbd5aaf5 (jsc#SLE-17697): * Fix comma typo in ui.c * drop NoNewPrivs from irqbalance service * remove no existing irq in banned_irqs * Fix compile issue with none AARCH64 builds * Fix irqbalance cannot obtain the full name of irq - Enhance _service magic and add git hashtag to version- Add _service file pointing to github sources A _service - Update to version 1.8.0: * Add return value check of opendir in do_one_cpu * Hotplug may occur again during sleep, so wait until there is no hotplug- Update to version 1.7.0+git20210222.9db8d5c: * ui: fix cpu/irq menu off by one * fix uint64_t printf format (use PRIu64) * Also fetch node info for non-PCI devices * Add hot pull method for irqbalance * Add log for hotplug appropriately * add irq hotplug feature for irqbalance * Remove some unused constant macros in constants.h * Add a deprecation notice for IRQBALANCE_BANNED_CPUS * Add IRQBALANCE_BANNED_CPULIST to env file * log correctly for isolated and nohz_full cpus * Update README.md * Add some examples for IRQBALANCE_BANNED_CPUS * Adjust how we determine if a cpu is online * activate_mapping: activate only online CPUs * add env variable to ban cpus using cpulist syntax * put arg parsing detail into parse_command_line() * Updating configure script to version 1.7.0 * Add strlen checking for IRQBALANCE_BANNED_CPUS * remove redundant "/" in SOCKET_TMPFS * Fix typo in service unit file * arm64: Add irq aff change check For aarch64, the PPIs format in /proc/interrputs can be parsed and add to interrupt db, and next, the number of interrupts is counted and used to calculate the load. Finally these interrupts maybe scheduled between the NUMA domains. * Correct typos in irqbalance.c * free cpu_ban_string when the next request come * improve irq migrate rule to avoid high irq load * make the option 'V' closer to the option with no arg- update to 1.7.0: * Strlen checking for IRQBALANCE_BANNED_CPU env var * Typo cleanup in SOCKET_TMPFS * consolidation of numa node creation on non-numa systems * fix uninitialized use of package_mask in affinity setup * use num_online_cpus instead of core_count * fix a null ptr crash in do_one_cpu * make list searching common from glib * fix a calloc parameter bug * remove some unused variables * use g_list_free_full * remove redundant call to free_cl_opts * fix some resource leaks in main() * fix some use after free issues in check_for_irq_ban * fix resource leaks in irqballance-ui, and in add_one_node - remove Correct-capitalizing-in-service-file.patch: upstream- Corrected mis-spelling (wrong CamelCase) of "EnvironmentFile" in misc/irqbalance.service [bsc#1172665, Correct-capitalizing-in-service-file.patch]- Update to latest git HEAD version 0348a3b. There has been no version update for quite some time, but some restructuring and fixes we want to have included. D install-man-pages.patch- Package COPYING and README.md - Add some deps for the -ui subpackage- Use fillup_prereq macro - Move ui into sub-package to get minimal core much smaller- Add git hash tag and date in version as source is derived from master/HEAD branch. Thanks to namtrac. This is done via _service file. Also add an example how to get back to a stable release version - Update to latest git master version: git commit f7fdebbaa4dbc27fcdeb7- Use noun phrase in summaries.- Update to version 1.6.0 (b47eea84cbb93f533b0cba2f1aa): * fix balancing when numa information isn't available * Refine document about IRQBALANCE_BANNED_CPUS * Fix string truncation issues detected by GCC 8 * fix socket path creation * Update document for option --banmod and --deepestcache * Fix ambiguous parsing of *node* entries in /sys. * procinterrupts: check xen-dyn-event more flexible * misc: Add an example for policy script * policyscript: ignore non-executable files when specifying a directory remove because already mainline: D fix_buffer_overflow_compiler.patch- Allow compilation with SLE-12 and before by: * removing -std=C99 Latest compiler version does not complain anymore, SLE12 SPx and before did. * Fix a possible buffer overflow compiler warning A fix_buffer_overflow_compiler.patch- Removed aarch64-compile-fixes.patch because it is mainline now. - Update to version 1.4.0: * Fixed an erroneous calculation of min_load that restricted candidates to a subset of objects * Fixed powerpc hotplug detection * Cleaned up syslog target dependency * Added some self test infrastructure (via make check) - Update to version 1.3.0 * New features in this release: optimization of platform device irq detection Added sample udev rules to trigger irq rescans on device add/remove Made irqbalance ui an optional compile component Added support for Intel CoD Add -v | --version option to command line * Bug fixes in this release: Misc compiler warning fixes and spelling errors Compilation error fix on aarch64 Compilation error fix when using clang in c99 mode Unused variable cleanup Lots of memory leak cleanup in irqbalance-ui Prevent irqbalance from running in a container Fix irq affinity assignment in some cases to wrong numa node Fix oneshot mode exclude legacy irq 255 * Deprecations: without-glib2 is removed, we just need it enough that we can't dummy it up anymore- Replace references to /var/adm/fillup-templates with new %_fillupdir macro (boo#1069468)- Remove superfluous comment out man package packing- Switch to ncurses6: use ncurses6-config to find the correct CFLAGS and libraries (boo#1021328).- update to 1.2.0: * sort_irq logic rework to fix unintended ordering * removal of the affinity_hint infrastructure as its not needed * fixes for invalid cpumask parsing * many other minior fixes (see git log) * Aarch64 support * live interactive monitoring of irqbalance and live adjustment with irqbalance-ui - remove fix-aarch64-support.patch: upstreamed - add install-man-pages.patch - add aarch64-compile-fixes.patch- Set-fd-limit.patch: Increase limit on file descriptors (bsc#998399) (fate#321645)- fix-aarch64-support.patch: Fix AArch64 support- Update to 1.1.0 * Banning support fixes * Load calculation improvements * Documentation fixes * Fix command line preservation across re-scan * Memory leak fixes * Misc. bug fixes * ARM irq support * New --banmod option * New sleep interval option- Only exclude arch s390 and s390x- enable build for aarch64- enable build for %arm- Clenup spec file with spec-cleaner - Remove bug-893478_warn-once.patch - Update to 1.0.9 * PCI quirk support * System Logging compatibility * isolcpus inheritance * Misc. Bugfixes- Update to version 1.0.8 * No ChangeLog available - Fix home page and download source Url - Update bug-893478_warn-once.patch; (submitted and accepted to/by upstream)/bin/sh/bin/sh/bin/sh/bin/shnebbiolo 1683130318 1.9.2-150500.1.31.9.2-150500.1.3irqbalance.serviceirqbalancercirqbalanceirqbalanceAUTHORSREADME.mdsysconfig.irqbalanceirqbalanceCOPYINGirqbalance.1.gz/usr/lib/systemd/system//usr/sbin//usr/share/doc/packages//usr/share/doc/packages/irqbalance//usr/share/fillup-templates//usr/share/licenses//usr/share/licenses/irqbalance//usr/share/man/man1/-fmessage-length=0 -grecord-gcc-switches -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector-strong -funwind-tables -fasynchronous-unwind-tables -fstack-clash-protection -gobs://build.suse.de/SUSE:SLE-15-SP5:GA/standard/1c9ec16eb941c7df5c77dd5a8405389d-irqbalancecpioxz5ppc64le-suse-linuxASCII textELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, interpreter /lib64/ld64.so.2, BuildID[sha1]=0dac5c7f758398661ddeb67aa3a7e52659ee0f9a, for GNU/Linux 3.10.0, strippeddirectoryHTML document, UTF-8 Unicode text (gzip compressed data, max compression, from Unix)R R RR R RR R@?Za*"lsystemdirqbalance-uisystemdutf-8610ccacc2de792ae9eafd1e54c93e090acd65e452f19a7b121bc396609bd896e?7zXZ !t/o] crv(vX0"º2:ڤ._إVʱ -8Hdm/gݠ}e -~ sQ-5Թ4C6\ gg <} J-'ԇY#}?9fACN֌ )ָ:k}LQ,E5TnaJδ:- 5 u$15T2 F!b(nMMMR磐 28䃛Ք1hj@"ly;HrT<'" ~@oő|tƶ5p7MJ@M#DY{|xFڋlR|U#WzbX1t|<Uz!#T78&!m(> ]i?2}&X[/ʾ߮1SQMG֚-0=@ek\w0ZS~bYE\q brWcH}cID~tSLF4g.-:l)+THnK(P}2I4 K_ lװ4ŘALLr!锯phqߪ6RBRnH?qz^YIJ5!$byg ̽iF e:[#l87W+=kT䄖ಫxcKvVY5BA;`1CLJ.׹qMil|Dy"ȽOY1[7B4Zn6CyH+qC,lGM\So~y3dݺ(^ը}r\WiOZ| >xȭJ >"S|-9}i Ym{CwW_~$&G91^QnHC$qUr ]l8^zxMx1N,wp qJs%ِgK0R)pze؋}ߢ꺹J|m_~Ur)e(O5=5KƅCǗt* ;N4uAl cF#r~|LyP$T~]!qqBDڌX%=QL@KJ6\&]fvD!dTdibd)X.b(m68JwSdlc)omG{xq6Aa xI_ĩخ=y–ḵΦt.JOC*#uOJ$(#qG8[rk6u;r36K`*o<4:z`dyT0e:]˕+@O'ʧTvZ|OLT`gw.ؒ1mB:QFF|peb&ݒ NHE6)ɕIlr7-!N |Wbd+.j9`^3H t(FY4F&F7c8)أuQ[BD _ZKT[5ceГG VP @:bԹ a:O'5cEu;Qe!{b0C}Jr[v?iA3\(jyA~"]g>p#'Ire&D\<' tIxO Ϫ" ӟww]%;mpF| 2w n$ڄ؂}Sl[t߻\g]w0VrM)ˣ -Zeܑ;;}ΥW{&-LKMpsnkYXփZ, F0H@A#ۍMw73Mqk49Z12OnMaH0bI!\DI!SCAG2–.SRfrGG3Vn4e;Lpo2k\MfTpߦރݹ 4L= ʡճD.NVTLjvzrI] Y(%sYZa"$X\n?FElՎt͔:Y7R;3y9O=/꧲ʷ{P 2_|1^؊g^TR[P:!Yld)GFZ^2_|p/Xw:!xi7MQ%3'q퇵y?1c_03:,5W\Ky([+Ngqr!Z18sy-e,vM+!eV,m ĺ1HA^]w |ks2! e300-9!nAe)vֿܳ Vωz<*~[i*}ynZ1pc5j/P&CLhMZxr'?a~K{rS/,I VĵډhyU#С;Y4x2og)],eMGY8XA?UnϵB4RטirnNJd[u0M?l ˭c@ϥ]2wkB1>݂c/ qOI5ĉc.8o7|!gp#2KױX[58rl6Ǯ֯sBYkV)+Mjht~Bkj`{n%^QNpGvL v̼?2cVvPЁp:m2afC㦋"N.qLkcҙw{x'Gc*z<ྡ(!uk;Gf%8Qѻ6`9_ :s%WIaƂ[nO jHE=(RƠ3]Nޯ4"kpM$|zG\u"gP&1x@; M7?ZAquzy%|.'hPs'+ %j!">"'B/;eyP|R奮kk[ӌA6z A G%fyߍKk^'}7衬?>0?p S.WidY\A]3DSq0jvp=Y zp|6A#-gJXbisccy0\iMe1z}; PT0i\ލ!;L]}#BI?m7Ωɪ傖WwGe^;TH?^DwT+π39LԿVbM8#<]ľ]=AԞM Nq06sH_]!C 7ڈ͹At_ŞB˭'_>O&ȖǞ7,?w]Bz*~%? ZO;nE{<8uro:|IXo?z53!lDoD/_ X_#y"t(ߡ #尀rōIRC?]i ‹0N;q ĩe &xwĦrT%`C"ہmddWA/IAvT SXw>r^scz٣g)<¯~_IH4-ֺθ+TgRfJP 8f }LLVhgz Z"CFx"}MsP/4П\8~t "5?w squ{ewWlDEwT-xIl,C J' vr 4o8Wx/4DPr<Ьb /b| \WWKߐnH *m1G{z^_dgY>.սBkq.YOkcܥ[2cw >^BK RcE~Ͽ gP<ӞnRPK ^uWEgXQ֞,_&5%YWA` }Dǩ3\ZOp3t`aFۚ:{Z# +ۢex,'ѹarL;t6͌%'{Z<:},c;Wu V[5DXo,Q p.}lݹ6c9|ӥZX.[1:\~7ËGRI@`Nnx#YwE`*gd?ݘϔhRx[!? ЕWãLk}-vwY72b6Nn2p)T FFB$qb^\[ ՙnyXqaIWH}P 5|Ed,hz#=^eVQZGgDK.8n|+WE t QιE BKF<_:F{M>MmUft"Z^Jf9ifW` yb>@kreң:vqDu#K7Q%PflįQJ.JSLag}[jע3\>lgXTԡ)i&L OuNb%: rr$"ą0+2vE Vy葺弐dLYf)qtaS9rpTWS`Jc \RȞ௨^}v>1[AӻH":L ǘF~|o "M;r~?PaZ-zGN ?7MP,-#J2{4OR@'Jh=z>>4((RuW@d TQ=v"rk]`yt#Tq bΒq”L-KۍiKBs^jwFF*alj0fYIZ2 hj[Xu/l< -z,c;E`c^`-At7"x5R/ahvCc OLtl=6*qEv&|ǸjkG>9޿ 6HHc Naa\6]&d8{*&`4LR_1|H?U^ F~/Œ;}n49#ϐYުfL,T?iJ:vP`%Jc>^I&dIY"[\rp~tl1!+1DPy-Ac2!`C4lw \Ä. D ׀`AHfEA6GXK 'im' )na "-+%U2<ї ^41Ezg9ЫA35 ᳅X\ D䴦u/Rlv"rHILI46X R *jSˎ"m luQnEp,}xnх+(nkװiIZ| #[)kTÉg4EEq,'T:фL/ZmYii5U_uT,!+K|͵|n`WN+uN#Q8C6]Mw-%XUޚE[CYNUk۵x,Cu Q6{4҅^*Ѓi1ߊoA Yn#x"b{ӍOn\ntS)A|"eFS:`Q4ji81-\XG+H Rvޤ[Or 7Bq5Y4e+88|QM<{o3~_ j<9*~q"u#vAm0LԹs[k("dorO_`lJ =G+|ֱU M-aN}W}TGo!/X~}6=*Bzl1ȵM!TIyj9 NӧsmSF?5UY?c?X͏h؀A@^7]ư5d}C}$ !u$9[b.):PV .ř (o| 7):mMMȕ핣a*;kGh/]wϢc?LOTNo^fjWv>d ;SJբ_.H#,)si3w]Jk [ oaB9am[ERp;x3owԻ//;rG42[ /į!VtfD}U*/2^lBѡ{לq帴@ v?{D c8hm8 Z|=V? גfC-Mj,O>9Gd1s f)!9~%e@+֍ԘjbY-$JuZ.yl?<Y,LT<WL-@sxr֨2 EI7r{nJwrvxr[.>C(ĜU'pȨNWEZeCT 1IgM\:*LJqU ywkst Gƺ%އO?OfvҙR_qRGaXL).dNBi^3lƤ |,3?t@#Z?"f na*Drv_p[#]YcA9 &:ÓM&Od*dŭ 򝫄Wץu% Z_&3]K 泽c_KFotdAcӡk@%ģ+mȐbx}K $^[ _~$+ݤ]ˠ3ELKvT=z<у7⚥l6jN w9krd8=+)x xGU*"fhLo'Stz`3{(>P&Nn89ִ`%sS򉡐DXBRen2%l4r~W`PtSL)M*7Xz xQҝ ̍ }w`'oHgaeeyg$m=T kY (i 7Ns6EZ5KIJ͉VH`(FF|nKl#a dQr^-dg(g [ cJxp4* K#AϷf;:|aϜxyk^>F4egVnA}Bqu|dvp4DuTCT\73[֓Sōjb Ś?>v0YpKp2^Wm~x#xV,?(P̿(<*YQrΔ׌<2`>" ^ #.ÿrQ 0H|M~IUB}+u/lFBɉsh? ^YԙE)>;L*=m, Z}fPAWQ=dx^JHSJri,]j HHQy'/p#"3cfʝ{h69cV^q&:˩Bj4>=恐S{fBʔ[ž47Y߇1h.b]o/M:ei)CA#S6`-NgFue4z Q} 1ƃqfi੬VJGNPxn5$ƶնd d'$/b}hzs<_^}E \w5m4i+7,k N5&͜U+9zk>1a,M-;SأJvKPpBZv嘞,%@DTh` RdTHG\u(V$,7d0V{pr{[otUnLҌ~3VR{bAqk[etdVH>e.O_m'3٪{a\ý.EOc2.FۤG#HyxZeS81:E&*\[jkdb5k--rʼnކ݇2.qi 6uZ)By `[ vTtFUmgp1. yM'>5CUdd`81V1=ʟ]Vei=8_9>fdS{W R4i [3']m"Y]*O"1^8\UT jtАBՙYꋸwO Oڳ3l`ϠYuHEq/y:XhcBdVhi{KA0R,VcvaNuiIf1oYP"6LDm@'͉즈eM'Pų[,Y: ob⻉ҟe8H~ܘR1ˆH N#P2qe%Qs E]bF /ap~)ruj3OHeõ<XŢ٥=Z1nH=Yں*.U?5n :1!HU44Bb^G2uos^Eg!7Op (u 4ĝ y8KUZIM/0]|9l+Z̷ h!3bPC%F.}7^@fEa}{~}dϐo=^$92$e#N|,.}' qLđ' z99n`۔SU%b2tHO6"\u LX' 1huhZp%FWlX>*>U5>EOM11b8-2WWBo~ c LMO 4fvfh4_㶵^)&4[hkdn/. (* ܻ"#]3Щ(HZ6.9iOGu-gsO9kڼa&:Yl۾OoltWu/?'z[,&rgٕgXQ{pZ1zc!DiNS0AouQ;NL~7F2UzPec=PFK1X-Y ]P#-b(&o8s[ʤR¬J㋖x'aR7yT6j!;Toc#z.2~ wAD۹PM2PFt/zِB}qm$N~M9Y~P4eJUZ8au)lb_RScݲH5*WYn,s2o[u%sj,YzxδY8 QiZ0"6셣w8J$5TOPZnJF\b'50F,U/<kk?db፯-^moD?tiV<"dG_ۨ+ SY q ܄3VcJ9ym.37V;v-`_XiZIeTLDF98pȨSK&b 'GύZe*эnX`neUg1\eNfXP`-hHK#WQRtR p1I2܁2 7CUDѻQTfExU=#?"\T=VLzcR336?y4L۶fqS"ܫnT'nj6҈h,,*ule.}_NWd%Z =*Ш]|0FB,4K)O[̪ A 8N(Y-!"͟pjl?i͚3K񄠒Z:&wM2ThnWep3Q>qeȘE`|)rJ~@N^j]q=P. y ܐRj.n¬ݺV޸HCr 1̇u:(|>u -R Ce{EH39s%-S`@4Pm]`M"n+Ɍ9$]d0;$pl@% %X'ǹJQP[`sa<.əzx1KaOǠ{I>>K*A%/`b1~2"7-]v>g ([C{;{)^ϨIH>׾2da@bs|JLd=jYfDl&OIʡNq[_F ~>%zɿL|5ٍ"ա@s*NߏJfٍHEt- +`/bbOM#J LTON>tls}#IG]$jpoPK4Ees&kTCr)<. TKQJ ëd-{aPSI42 kѭM['rɽyrI=:Tĵj `Ȓ*2Lmx+猼:컼:=:i,j ʐ*~SX>@X˽Z%r$є(쁲9ԓ`#kvO5r)9E{7ZS-->rhF:m+RaB&5~'@4p"{<{L3^ ڹ!>|+pL!]|oaݩ'IQ@yh5INh>d=c{ K\:Z1pAN d$JC` %$w w(Q fj<5.F#S&7f qq|%"GVd\XbNA@KcgO|>^eXLjwSZ̲ޗ?a6\=gnAD_o}>0Ebn' P#`k}Yٕ|E-0:jyκX LCBD$Y0nøή Pf!n 6l [6Wհ]XDW <e:]$[1 禯Ck#VGpIJTu@0g@/RNzz 3|a!=6/Ha|c[k&,GԆ4׶TvvҧM};FZ]XaѺ.j\WZ٢hTGn ")9vZ #𠢡OF& SH6~5+|O""(sd TNm lro"}@e5D3JZ|b q&+ kS46*Ad-%H!JcjjDcCngan9dOLI]׸vإ&Ehgtgr/ }Z_sDO"f-IS=/a9lKz ?D" v%u9#0/2wj'ӌ} } T`oP~Ȉ(,X%Qgt~"jvf_0yG4bj>רr*.; G6iIܽ>GLT䀅+\UtQ?4gz(e`~u :avnro\2C@_Ql֨<^BܔӡC:BG#^  xf#"{4@~K=U@4w':LFl; eʛ\TŸDny~U"[G6It!/T𤖄cOXz&ެ+O ߪU`DX' h)?p=p䤮PX3"SeV?am5jQo}s;kCiB-f.4ppRWZ. .>%r16봘mL*OB}qC5(M-~G1fCZ*{b żh9, uw@g$F艐ډcw"jbl0%{@Dlj;pLG~9˅V/|_Ֆ,a\JeB>Ώ~ϱ{wtZxi!t,񃱋 wӯ{-R`g_Δ x/!<?Mwƕ(ޝ5M1~/ dRJ+exh;~ ·mY:h7$&L!孔ԭZ"M..pDUy mK;n}\6˖^Lo 4<9%!w?̂nC--͍ A@ rKK8+;1,v͆DX $/._Bp|+A#wOA&0+;iXWc֙4jExsI7bʒK?BK[Oۆ .c?G]<,H^x*ktcȱB?n>d}ILO4 ƮF-Om7qjD鿟 $a8mVT7jS:h@YÆ&٢ӮIZ ,Ƽ/qn /hY9/-50aNv?SN 1 kR1غ(bFm)U(zol,(mέ]-JQ/.i:>/W"^J`;HͷsW6y~F-wc1Ej4ʀb03\'iffTG+6تE.; z۲ZF<6 Qs 1BwOlwb Q6ʶ1"Lt;,[NB@iBj؇`8LxP^4:i _ y;՛z;h}V ;4p[I,3Q\6M7uV/-HU/^j&57͚V@y:rQpY$O v8kpa:^l1:4J hqN댌L/] 1HLiҵ_CqvrK/ɴ;5eoϳpy *Ṕ>au^<5͏JlM6) "rJe.& H ro;qK_JLSN@n_^d!YPv]g7΂Rɷާc1:%ߠ( ]#3Z/|dHL @^9 )<6,`pclkdIC5+·լQf7{UCZwmSVtFn R|xtŠ2*hT^xRړ6\pE%pd1hۄxsEFĨ@=* ?[X f0wV?G^di{𥒨8qJJ[Bbfڱ41R|wl9GW{ K~{^Bu=hR^@u7R#%tʱ:}hA-36"!N*z}w lAYe'm-f ˵/XSj /44f9 `*VR|LG09ʡQJc `x:T[#˭ >{"Ʋ9il"RwDs".$_s+~No/'4Ӑ+K !7̼l)hakYFibepXVծTOdud5ZGX5".Q_ >*|Ey8E^P;FPeSHlir,/W3Ko|TA'fM-idcsG }u0}")()aŁ(e cJQЄL]/([(-H)8B5OP5pixIxw 1_G435t?XY8ղܬ`Wvr(׫r͕t Tٕw-0*CLbwW Uu,XշiOZDƭ~Cf͞Fi9FK]2Q=ػ%~Õ.čAz+kV>WvWĖ1f<o[Z//GCϯt/f/VK05#eRP6tZTP ֪WO;gb܁M]bd1{&% ќ'|/Qa+ " ̠:]Ӕv6~NVAA!Dnj%! FP)aCvDfAEFЯ`_ Dϖ%#ݘ?ЕݍR6A1l06³Ƀֻ37[j27avaY'*y*F ?4(tW8n; D_~eKa %m0;}1t7C#ўG"0EMĚh:ŗ3Pڞܐ #ǘ Aܿm>{48)qWz^n@p5\0Zq`'%ҞRHv;ݤ!+ &~#p|b[Gl7BksE8ckaOfڟH_pO]ްO"ą z*yV*@#0jZ EPG;h8'1ѭ F!ڮ YF(}ß~XD&^T-y5{m񯳱 rh[^9$lM4 P4YvwK/JD: A_el$U+> [勭6]:"/Qtv >;-'m,'{ oW:Ɛ<&hU,Sn%f6(>8̉_E/-Gu0[J3}1pqg"\ZܷUJjrl^Mc $6JTx?KE. өl &l UG|c$43cK[m P d;n҂IgdͼPHO43#CL7c=$hTa.ĴRBaYؿaG $_Or1/bdLhH%$'u8ȹOQbYh!T Bh (#!\U ȭ+.D<?k_.kz1;a<lsqb8T͂I"%ߑdh6y좤`s/gR3+G9O/3ג9k:˶*j!aO#7RgK=îm@'4,T3)'Ԃ_Qʭ],R:Tj7y*oxnIZb2I<, AA@WtkA\VϿvȦ~ pZ;4 ˬb9C{ZR"2$<< xj Cm5 qYٓGIbumH{;E7I0IgaM%%KZuw$al\Pٍ Tkʗ %,T^0th [)ԺcL5hT*t{=D/ bwS"VH;{dp&p4,G[RN09u\VZp*2+m<6v"tjx4̷ro(@ܡ׏E/֐[e;w~1U {LJTM&3: ΔbK87%Uƃ4ŵwaܷD^_9O~#==$] l|??͙Va(I*Zu&1a(?wJ) RvH쑵^Yi:+5CCY";η;Vc P_MhޟV>ŽpB]F:N8[BJ8afBMWwj4, Q/co=l[[\:U?tOFNl*mMɛḸP ~GnT GfhF\܂;`z;~$ b֦dij%k*@/@5뷀XFj3.WCa]+Z/^́Kչ0~]٣ԑ*w: kpXDo0p|& 0Fz4hT@"N%[ To٥HbA,.mL qfciQ}ы_ad%e0vȉe´K\E^fapRUW$TA֧R5Q#M+⻳~#̯h/pwi~#"Gw~r !Nꕜ1)ٌybO?KFFdez=/I d24);8`=]VѤt= 0pn]c:MU={ [[x-D4;k$e@l.wISo2w/#*sc{ Ӵ';12 㑧[ϕ^k~ 28*m5d|[?,-9Kǝ("k)oApn&nb3$c=n&)v<5K~ecq1q;&Y@Z˫O˂j"NR'_& }| bÙzKܿDWd'264XmH=EمBh}Zx %pEj,}NmlUus }Дyh5: ?˟j#|J \a!e@ }NTE^#[_i{Nlݱ2~ET9PAs~)Kp%-ϑKQ5qۨ@ڿT`\h&KtM:Hikz[Ț]ݲCl kVC+~b,'\;4r?68BE^ZTֲÐJϱ3P ݸ إ_+Dфp%~U/ ChV~8uA+Ut3=3:Ȱ z()vXPLv(.62<d%K阦hJҥ`=,-VdXyDXFJ )40e4fh\rcIJgK8^;f¾4G7Gf'HuKȝ=9'z[{td Qw:]m,~BћZ:@ 30cAT?rsAr嬨Gfe Pf/GZ]Z:nzGWhɪ9Rf6Mh+FL&=9JRpQv/F f^:gp—./8i1Z "Ŷ51yi]!kƄ.q19wo(㸫N[V3j9,~3n4>+-l臉Db&* D-X^Yc^~ۗҔŷAo-! N;آ9VL^ " A`o꽛1W^8q@t3z} !: 7A~V/&9X}HT 5ma 64ݹ$+3"5}n d6#X.)rzGil=FդZF^f'PEղfBV{ 7_ZL+3okKO`S)[Qp8nKHs·n28~bBV@XYM#ϓT`/daZ)\Eoqm ]ifa_W5X<)йrݪ[P;=؝ a PC!YX$}~^C#zW)?W;~.7([_h뙌@8t bsdLD]Wò*)wYZ5TI>3UoV-ymwզL禹h&1"CBq1` C)xMk7"܎jb?`y 4\HI};DV=0⪀xtIn_q<Ϻф_NLLV1;V(ڜ@?+uҼ4]2w/0} L ګ$O*#rwk% X*$H7T, t߬'ʱ'd`&g%K,:}2U{| &LueXVgY)ŝt%ȣ-_dkG܉КbLO~KO>os$949JPxH_4^ZOmq`,`P3)TuA J8Y.փfXک|[6BKdua˜Pأlp) 'Nm0 Eec()a!2Rd}2AXd3T7_JIoi i:NBϛMd̘PN=Ҥ77;+D%0XN r7ӏ :ʜ70ZX7D$^k_ζL62Xnj{ ֋MܵGaNP'd7GH>e? KWŲ,DU#4D@5k\7@+eRAc=5Wr -;Yp˒ Z+D5p톳ݿQ@E U{}jcARKNJ9VchFbuJ6Lx3S㌪&K6呐W֊ }ch:'u򘉜E k;Y{'#Td&JF&qLt}8sX@huU)Y|@?s 3;uVC[^S)*Ul`="CIZ2Lݶ󎁦%{[ovPj~,"C_* BZiP=TݙUf>ibsˉE"wO)Cq5rlgym8ޓD Eܗ8BJz6Wty%+rpo{o($e,x{JX D;%hQd)<9x8Q=յD&X{}ɖښY#7 !_5 $]NR"a~I{jbq˧%ɡ xEOF,|խBaf7 |L?t vn-[Z_+͇^>= k@y!OztcȌ8%/>(hAr!;V/ĎƊ_?}X2e>SܺZAO~AO+a$M&x|եSL?P/c^l? v^ 2D:ӁƕJ ՃfࢾRPE4 \&eAŪݍd7׋`ѫTMۨ2B0;T1^ƥͣgp˃(}7.gȼhp=W{C/\^+"L@Fb~oQ]4RvLNk7I=6/" >RzMʑh i˾t/%H.ڷzdX˚lbÎAVpo  $MAVoŭ2v"X\7J=Am`=C>G$K_*0cKŀI>ӥ/^k)g^o7vX, V ᢅ޽f&* 7KrH\U{[a @h⌃Z*QeQZg2+w%XqCmsL};ޘRեiyӥIj4sF@9m0 \xIzH0TK#t$7P=BSC=bԆ3*G[c1Qv-i{YPߴV(쾈ޤQI  S < H274oHn 'sr~%BSe6aN3l 'aoP: n+;a Tk]TiSZAt_ ^7u&H "X ~9phZTZXtp=-Uk:&m] ĭiNa~/nO޷Qٝ_"}& ȗ4W?>r0=_~uePՖ  0 XBS"ˮ68i>k k+"J/f?[bՍ'~);;K꒜j&sfO{sUq: hN  =Oz| b4Q^́ .R`Xi<3žUnn==T[oU\ '(1v8bV[(Y0xbU>Rl#NR4?o *}đPݟT"$#9=f#TGm@j?^:'513g. I6nZF G (= D{-SDz;pRX7)ڽ7mV`RJy*ɶ&IN[!rp bmDs~%E0\4icn]9,̳w 6Ivn]# nAȳs'$o3ʠl(+.  d\{x3"'@_lL5tpYNyLwZB}.D̋&f;x+;+~%04y ^Ҭ6 1oN,!:rdJaf1MdJ9=GV-FcãŽd);Uœ!)ō)6UvFHRFK-AZM#~XE|S/D}!9`#갮QL o^^|+9q_$ 3ljܰ:IW 12 bh'$b̓Ǥ:FT{$䓀d%C< 6zvLSC$Z([a_A|HghiH1e3-M5ӧt#8UqJvBgwuߎ4V%|Nu]L=&°D)ksl.PT5p+3Sc !h%iAH/QyUA\MPJNYХ DSM+.1+@XymH ^9!E'odVqKWiäD2cw@'5zf@n~Z HO[F5n|RlP&%Z=Zo(4ܕӫTh: U -ot^F':4:jɶ%:{tFZgM$=@'(U2A_(|\d꽚v!Hn=rq٠"VEMT,Sj|]+Am[5eRHn|D&iB7|^ p, 6! i[5>%B6 `$sudIFu)Y:S9֒E?yE͑y>P>c|?/)!H$(F1? /R\<ٯ,D%(=/ #`d=lu $@+ [[ 3gN%yXk.Zo*|@bC}4U3d$#-h@q20XFX`~VD U-᭣8Xrϳ谈ߺ]aͤ_];ɩý]\JhgT~ ֓]GSA}xbB 5B4/mk3%x,=/L?+)MJ<[O:5 TwT%T:\ܥv=*wCE+O) dZT;"Xp;pkrVGP:w::{Aws84Iԃ˾W L?\{@Lh;VlQ)|3J-y6U0.^v c(_نΰ8_^3y\U<BÝIQYt4饇cby\|!EsЁK6.ؔ s Ff=R a2C3r <~-.Ha븋LeSr/TG60(7GtUdCY'<}]Ӑr]*k3WP@ 10EMsk'(,aH :|v%>hH,Eq^DF#^ݱ=ᱜM:Cy Fq%@M+tn˨iI6ZV5ͬslAFAĭl0U1UEOvMY,5cl8%b@3a8/7"deLFxa2Skſa"DL8q-j) p|r;R YKc_N9Dw]14:`L=U~kSs6Yr¥, %. 0Qz(){,im4#+42WoPmCc|!Ny;8'Jg9}MoJjѳβ6&6 QvXvozO ]w @ 4/t[M113FOl}{z6IKVP:@fU(qHQ .l*X,$:~Ad{%l&girh>+?cuϔ`zXZIRkdm`D A\!8b5Zj +l9l #y!r wr;O$_G wOօuGÖ!p#8`bV>RVoc[F od@j#__}uĎ=UA뚀5($|sɧۄd[OR?òΖNYmѬUp)xG/@ڮhtPI}{tE19Bwe hK<0Y> {b6||0YkiLwo>cͽD5i7ϓx2x { M+1exP 9QV n}(3-}QzƒܶOn}05>^ź;QLigbQ'!r\f)П_39c PWm13 `l?K&i̢t^NaN<pN$^Hfĭctwș TˣJySb~U3#suÊ;}NVP[kYReUd-,CP2}GV.y%OhZց_,״&#r{ʰ"e Or#eB+*G F5T ;PF76: E)1`ax(ַh=bk WIYe1.Mu4|jGƫظR4NjĀ!ڶe 4dUcN:^Ϊ ]g,R&gj/u=]0=GB%!ٟl譝C!7IddWL `aOUhjq aV.oZRJ$GȿRֈrd^N+sb*,s4=={ Ga~쾛ZV5Aqr\)!6LP= 2RL וLXڌcBOˆÕ k;W7y|P4ؓ +N݇DPF>8P/%#)E%} !euevyF^| j?@9Jw'#xN#Vݫ5$aܱʎC羍 5é3p{C,$^Ϣ$!H/!tsFG`8G5JH 'B|`7oj]+,.&90zaQJl_; 3XuvORuXWԣK/mV`b66E/0X%vRkt}A(dMX14o{̋q{:,yJdxg;&skU [L4@,Ia_^;z7+ީQ =_}w6QSW-icFZ-)ذŎ`_1 sETGGK)?ep{"(2*'5E%$^ƭ6RC{38?W;e:,Mc 36rYù<\ |l(@"yqb=޹S+>V,MV!9ƬyhWӁ2L/4̴x_}VMUAH`r`l rQO>Ns',-mH}#{etr1ծPת=Ðp[1*lvӳupu!!0:P}M霄:y%@zS-.oJIY:/wvҙ,Z:X!N:$mIRǯ,ؔ4%Nàgy ^>gԻEI?m]wlߕ8%l Øû-nz¿ڀrVZ"-@lӇ@~dDzE3sFA;#lMJ,Tl1~K1)[6%'~Tv(:.ϼu22egfGePgE~nUsB vٻv-)?|Pm~%V٧.Y1Q RsvӮbx{+~' )8gAŹe㚩S:K}t >[hʆc(,TZ?=:t<4ԜnY_~T,֙#hw[r [/FM$MNhiv۰MIS2DU=I9RoD'Tps㼍i¶Ժg1嬸t7zίxgF[^A L 6,X~,6|6ĞvtI?Z>3|9>+n3Ԋ$Je @(`LOFw([N1GC5PO(W;3&Grf[<^^_yQ|ݠO̮]`?ps@L)kȱ6ud@I<zh=Mq*ٮ*Zn Pȩ@pXF /.ix3 |IJa@#*b*4I;M\8jƁEQO,W9)UzHRt\nTZ)>]\ՌOeēX`TqjY N}g\*NJ- hkɣmi{UdfM,&t5TM; X]/:fPMC uDщ>A5YL~ Ei8ή]GN|NNש^퍕5kkRI' 12_B}pVjxVDD,4N7[Yfzaw+**F?zQ.?B sgj#Vj#! ~DC!a8q6/ҢI &dhHu K%N~ fa2c-,l!Pp7,C9-kVwuU^6X/SeQM@thYk7aG4NƻױclfV׬0HjNtܴClp@{̀z|i鱹* PS"/9iVE5&qT8CEZ1үW”OoxɦHiԟCr RᢞsUxضx8t6#W7$RN-q$Mb 1f8X5z< ֦*^ќ8^^q|ȏ_n3{|Tx0!zgVfNvcL#]ȟm%3*h3UZBD!ҥw0~{|~ B"_& N19:>l޽JFG-EG/ Đ_"9yZgaI5 0_*B܄;7`?я"ٙi b!i`FWi6ٗ5[.!hgYERZ7 /¯u?L+ &hD840e@#:,_z}JS`YdΘW~@ѧʵE:v<@$/`jǒufU{Hx3KR+<֚'Hp5ޖ^e:6e!=z!IL/iʓW+{&#ǖ[1.[A$Lg{lo]TzbP+O5 pӠzk!m[.joaU9{7H!/%|5/JEG1&4,Ә4Qr+} _i.󱰊m]' {:,6ņxFF.yd!z]%mZ?orrE cr YrDչ}?blM% VeoML>Ņ\tR;