irqbalance-1.9.2-150500.1.3 >  A dRp9|8[%D󔡇 ]S=sQҶrx5R 卡\4Ă1[.JH՛oGp4 +;Qo es߭ c >jǾNz_ǍG ߆zֲ( Ī >Aw}VY)^o(ox7zE+Ȭ?.R-T݊Fh!hHĢټ?m¨3wgV?Rp_ei)vhˁ53af60f6b199e0e55cca47bd9dfc786aceb7aaca1511d47866d8acbef28b0e5dcf471532dbb96f6e9ff482ae056606759e7f3c95dRp9|/Ha>t4u$ Дe)LC&YZnz! ȲpOC?Cd   E ,U[c " +x             & X| (8$9$:$=>>> ?>@>F>$G>< H>d I> X>Y>\> ]> ^?lb@4c@dA9eA>fAAlACuAX vAwB xB yC zC4CDCHCPCTCXCfChClCtCxC|CCCirqbalance1.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.dRibs-arm-3jSUSE Linux Enterprise 15SUSE LLC GPL-2.0-or-laterhttps://www.suse.com/System/Daemonshttps://github.com/Irqbalance/irqbalancelinuxaarch64 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,dR53aae1bc689211cd128967ff5f53b771505e14356b07409e82c8b896976a30312105b4ae07f47f9e0704d4aaa8420c97876dfd2f479d8a4420076d8f13b0605b2d56220b7258ebd0f42cca0249cc5261c1e596bf460d3e5f0c62938e6a11aa93cf96bc63af9882228a0e747d6bb0149c68fd6e203f9e277a572f486ad425f1e65a36c48878d6f099cd045cc1e4af366a7035625fc35ade6e1cad012892011c2d32b1062f7da84967e7019d01ab805935caa7ab7321a7ced0e30ebe75e5df1670b11637e2d94765b3ee22f88307e51d0efad10fd0109545cdea70df82cfc70857servicerootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootirqbalance-1.9.2-150500.1.3.src.rpmirqbalanceirqbalance(aarch-64) @@@@@@@@@@    /bin/sh/bin/sh/bin/sh/bin/shcoreutilsdiffutilsfillupgrepld-linux-aarch64.so.1()(64bit)ld-linux-aarch64.so.1(GLIBC_2.17)(64bit)libc.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/shibs-arm-3 1683129272 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-irqbalancecpioxz5aarch64-suse-linuxASCII textELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux-aarch64.so.1, BuildID[sha1]=59b225ae8f7402208f5df56b768bbc72d8cd2d1d, for GNU/Linux 3.7.0, strippeddirectoryHTML document, UTF-8 Unicode text (gzip compressed data, max compression, from Unix) RR RR R R RRR Rc;zl;ujsystemdirqbalance-uisystemdutf-86c78be05e4c9b6b6d99d20aa21a166362fe3245c26b6bd4f2701424f0c721b18?7zXZ !t/qG] crv(vX0LӬ4-v6]QhQYN%VB带ë] >o,MS6='"r\%J!:s񥫰U= })cmv/Jݮ˵M(d-C'XBRboGs&v9k* \FGTy%}om+q q7K,8vxcP{q@ )f ǯk< [1/R)ƨ'6Ӕ3Y7+1tKz־a2mңapRڞa85^Kj9%?Eg{C 4T bBavryfz*T+Oܚ:ۦ- *8|բYkS$H4^H59GXU8y(K-DТ&]ǝN!ѫwEũ UN%A)k+{ IR\Y+>_&Gʁ{8(BDHx7}}Ylw,5hXBxi?zJlzg\^s D-Bc0#"<;AN-3R"J=m;O8]a& XLU qIn)dg1pݹUƅ$y:ɥ3GU@ھR8ͩ|LRM]7NQ?g5YTאָT,Y%PFj] k5;aj`ϺeUe%ya2-;zÉ M;nd0vj߶O@<쀧N2I@$ 3@ T 밯gNCG.y}1MG\M '!%9Qce5<㱫BC! z=^! 0zYXNgMst|CF/_ƌ."ۈ&֓Jj(?-2gnvۗ҈SҦ=Xepo}zH9+WTlv^LDTk 7i JU7v]m$vr]?nP·Ӟ Oӂ7&ia{;Ҫ>T.Bl 1Ԧ]L5|v7']q;w4ZFtk[ّ2w)4Ʃ+Wў Gi:؃#_޸G])5`H.F0Q׋S-!,d_Fvrr;Wjh#蛜p2$Q L0vv_B>l%. ^Hdիod7$SzɃy Q'2MހtZZI6H'1ҋCX#CmO &8 0(mܒAo+p4 k sdzE@̶QJp`Tr4\zMf1 3G<늺;:_MAJ>nZޖYju^Q7ho@J5 fD+/SEB{ra1Llc>6 7\"ߠ/O??(zY70P 4%G:`&GǶ?WAH$G.eO޸i$u5Q׊H%l-=?I2- Ru<vl{>p GqBn:Iu 4*>Ӆź{<3VaL/˻gW &GA!;82zgOUQS+{0}6R[TTCR[@hDU >0Ht&|#Q,Xm]&BbI6vaI-Hp2xmvnK5юNĆōAE"r]3".l#0+Mv_)*.z9~|.9B IÉ80A̓Ҁ~3o@GѼ%T\]Ֆ>9@5mX$-h\ ŹQecMk{w>: VY0c2 $ӒsJD,^jbPvA e]V*Aʛ̢!D`/X{0,fu NGeu^&U0Ci]lbyv8:aq_/CM3 ԯ;r0gWY:$k c$i7\#Lf}؏ vz႒g !W ʨf/*p0 ^ƿM+^S I8E#tcy"CYf}"6 46a80p^VՇt82ZE` V<*C$  `ˮͲȎhGk5ʃʐU#wc|.47=yѦN2Q4ݭiA8%F"WƽGw MW;i=yDqδ9Yu `k%ůklHWmiUU(Eچ{0phpx^T=Tf.H<[) |O8t ˃!kSCa f"̓"I5EiZF 8|Xj-ёKBBfDTC-cdffWvket>Bwat:3 HC3t-vf }n&,, ^~ B掆3/2aq?O R^wyOn1h΍5Ӯ szN-3X`^+~R D8pL,<60lY5n:t_M]2­e\+#zmL[Kiv[\#Щ-!V~BYJ_Ru }I\Z^оsMk)_sgUeJJP 9I})Dx8AD_i#nzmpk?"<S.g{y?6k]$(WreS̃J ,5)-wO9eūZr%~.͚,y8~Oۛ1}+ 1\?gnѕgk&Tį-lRcu./c:kDOasq~:kQgjTo Ν2)u[Fvot. M->sP`xiln;Őld_C;+5""U}{[X~Q>/{F?ME=YWP|a5O|WK_ViG_ywp"3&hD[\ʹ aBك-v7(=_E l٭ޟ2Wb(v-O(߬!@趂 fwC ڶӯ z~p@2koʢ;\vÜR  YQxIIfHsrÞIKgF/ ?Uѡ][N;k-_"@gOtFӞ]mUU],s9J0r %lJQk'nno4x g ؛Mb>-;h 9g6QnvGGUӮwȥSd ;#Ȧ _ey#_a5%%6Xwg64*]Ď$,Z~I{6De$tv0KU(<L*fZ|ڈ/4~uٙX SkjxdSU-#ڟa nEAʹ+eZF po;G$[Ӽv(ja&›V 90 70u@AHKRj $>tU;ik]3FfA Rɼ8*7F)MܣE6a~[&i;"ϛ*2FL;ʹ ke"TaC6i-O煅%Ƅ0~^ݬKױ0*F,a x5%4adܵqT2QJ8Ģf%JƦKWSʿxd\2d2ي1Jm4B$l ڍ,nL{VNI楍a/a`Ҏ.1G9 L{a0lmXɣB6芕*&.riu=Jǰky]'l%F#`c r1{_%NTqFy7Xz,9-m%]ɸ_6،lDz}Zx s ̓r7Eh-f5o!/Ǎ[RPyepJ[OJr pL?up׻hxqSz%؍hJa`?c@lV׆0E5UtD/{rPhbx9zJwgHϜRR o: R"p}8: K~C$f.~)ac28ƠoВ7-(yEW`׺A|4yjКnFѨ3%@UP0mcmi֚PB]ҸT(z\0΀)@DC6Eɷ3Z'z%YDj[K`ɷժ$Ư Ƈ]|A3.C$^;If. .ZrZ"ˡ~qd얍lEm+/7s+xφZFkijЊ*5QI轇;N> UPۏګYY.ҞATəZb@(&2]G\B6l@ZOH+fL<ƘfU={pU*^Q]BwPIrkk+[As ^!  =*"S+*8g`p7HFǬD&.v"`I2@ڟy&|Okm^]cHWOIs]V0LF`b" &pI[}b,j幄9裠j7{XK.5+7zcIe a@?RAMG°3?fK I |8b_6)"sV2kTkt-U<mk'Â`XMk59q=~2NuJ h*aPF2KalKxFX4IFa8K1:ټ*;3;''6W g ƺ^?]{(iw%<i+iX; bT Ъauۭ[n;;L=o4OBޭ,=;-撃'4N쿈[w7 '0RQknS^yﻳ%(?* E KF5rX,@'1vRefUL@[oqq Y^#h_ؕ*$ejfc{₝zW6kˆ6Rzk/U_"q}1/2-0+|[s {o#)2[Q?ႚQQ ^9eԟƴ2m@:O*-ІsF$e_c ޜv_i[ti?yWšnTT5%&[bw)nQUO(ͣ9t:gw 645F+_j[:"dDsJ:/*9bCdB =Eȫz(6@RbTzD,E`@ըُ:߆Zf '\]j'V C<,UHlrVmF]z)";ChD4Y϶ .MtE&R?߽ZU <Ǒe5]-:gIMDsET:$nkͻRRkȝ?jk0l7HM`_y/ʓZdb-U4UygUXԠó֡)<~?ĔyD*wim(葭&FyJXd)T>2P̈z _BcD t!E쵔wwYq'czK7%X A.]O6#=`Q`j>SRq G.崙Zy Աٿ'7[S_HDncwz*^4N6jN t/2q_Kz97yßFOJ]'s Yz&QJYS5y:ūd/8Y"0_*a${xMzc aI\N z.:s39+1i-Wibftķ;@MSp= YXE0I1PCU HP{M۲P! K9LSb9zޭ]:XN( wzϸ0ʩEήBռMUc fݙv[OJjz BgjV $Lgs{*Ao@n0-oE&Ad>>i F:FCg;(?r d6J p[r#AixD)GiH(n"m*鵖J 杜t3TmEx& .07WR/ꦘIL |08_RL~jK/+)B$z `sspijB\?~zS98ohP:Yl$ۘ5wYᅫ88%iWE*dZ[.^Ծ'QU_"2d˵uڊ~ꙂY7^S/ N[ QXq{\?{xDCfBj2DA.+ա&g"<ş n}&j ֟``PƲjozPpib߬8ftZ}rj rt]=w$3c\i l! @.~>ώ%݃jt$~|sH1 ݦX7m SKy3u9Q5"gjy/j+_ƶj.^іKٶ)"=!|O֟eIBp,z_̔R̄s7sqẌ́Ec0ZYJXKnT{p >x'CM|mMg8),I^esЀzzo>jF@ITWdb lP*"ھ[]u T&.(s &7,$zUR<#Q$m#!ֻ 8mgRA"I8x.gL390[rKGn8Rspgj˾;Q ^^4O)xG >hAŝ lm3Wo,M'vr7!Z9r}l^:#])ۉ QN9Gu-MyuAHH=wd꽑U0BXXhgMcޞѺq֙~Mgӿ\CE!3,0ZY,L iEE>ob ׷x8ܦd7|G)"58B+K lO45oI С]iZL- 5FR Ѕ}qY"mꏗ4 Dz8Sr&ǖsse)9csrb(x(s^Nac 4f>yPpiPX ᢭i-īISy=/d&Ԯh9#&%]U˰ւ\K13h*XpGb$`dd !!2(/}Ʀ]ns n' FEK(5;;s(e%}8N`a^b¤0)Tْܱ'/wR} Fý{+/[6 K!mR$OpLT~#ŐEIZx x.b.W,~q豺=ֵ6U7@srO:&-0 TV:G{W%ٗ\@n"{`\()H騒DZ2C<P>ri.0_D*O^ 8%H&Zq&gy!87ҎI*iVo 0V5J {p@ ʩnp;ؒL"yw 4r=wRj.]1UĶh"+arRr um{rBF(t|TEc nd˞M)%.uȼ=7⺩fwqL6._v,@9MӀBfAC+ Mݫޞ4_| L TϦUإ4`C}> f-fl"x:^251<,4xm ^ފ.ƢKu LnB?ݭ ޑyя*#ً2Ị`~ M1ؗY7&q3x=n5țVv8hl %DV6DZunoƛک궂T]'٭.K`: tEXP*S\ ]QS F".2fǚˋ=ESVrJOjF%v݇Sg!Q!ĥv3Z.]e 0H'i)h=C }Iդ_xع cj@D`vX6)KW=)z 67Ԯ'@1@L E 'ϩ=kаv\J[ D, *g}p ,=:y邦nT$@#jp[qX_ս}DUBeejsO!Cku NPr0/C&mTk'#U@Jw1 GVէxmZN~{(qwklq2;lxn <*Ml9 RHiJ;v _n>yk&H"spZ [gPP.3_w'곟.t_aC_ˠ~12~/n(DE"e#74|uƧI:WΊ䄤nJff/Rl\ʺj$+*2ciҢ؊B!}Gzp oh!z[9y?fgF K6KCoZ6KxAasZJx!ial Vz# > i0s؈fӺ#K%Yhy-PVqE-,xP<8?]9>,j/]cvQ?6~1o2@c kRXTeހ_c54w2Xo@m4_ Aхn e78xںSM+y^Ìt*0pƖoDGgGC Emlt. mgw,22aU4elQ4,苍}M!%#4fa.7]B@H3swBh5O\E "/ثO%1\1ap ^ܝ$tM/=C0mM#.Bftgj`=; HTItMNnLrrN ծP $],8q~9ͥZ@3?88ݟI\'",(=2cRFr ?˸?>>j>WrEs%im٪+ Ar]E al3!w r 0 =GԾAƑsMRUN*j#EhNh$;9,rXC!h[@e8Yݹك5~q܂BV֝gg&ug2kBx`|X!_;wQv<,Iۡn1u،-5m$tnlN<9V˿BDsPtnuv{}'8!\u^oಽz) z>1(MLJai:|avB#eOOHaj[DCuĤʑ]ӴTzpXdMf-SRG e`ۤD9rAD@ԒheԡR@3` vf@jqR  5v~%sD=xƉQ񣈤 4߽$",5\lHG[bp.JHbEY3mxЖHZ Pս1 TPmO}Þ+w߽GDnDA;2Eڗ0ŧ>$kD[*H}${7L7"Cd|bRiRҖMhհMITتn;XXf4>ȟ #r;o\AeN XLI-%+@PHNk6Vp݅traܒ`~w*ο}\ǚjZ+g}{J^Ÿn|3TW\ߩ{u2_=ڿ8j')}ֿdXs14Wn]!"njXhDSF+wy#ToG?@f_j| ƇĿ.l5B^H1&.W_$?&Bd HJˊh/Xa7zu PA%,odA8!R~u {˦@{xR4@14*jpmՖJшE7T&2`}\^^GP%{x/KiS:TpO:k,Va'je~$tD7XB'Oi, ǰfz[Y}fiX%$eqb<9Z*_n?^β8.dhΤ3g'p)xDtp-D_g˪zpMs9|[0]4:DTi&nEQvu:t]S^ K|YCGۿcH4Dez1ܻt`DFWA{/VN`AP0ۓL挜ŵFXىVt[ v\ڜ<wd|0WYwWkh#D(34z5VۤLo2aHnG9&4_)X 9oYQǮZL]'.CQ jS2;0 `?քA=$6lZ>5RR9d/<ױ,=xq?d|ks6|nԖ $/ l!B*o\pjI ;\H~҉n2cN0c;\\CZ,ys0ۦHGBϠ9ЕHϿ7;%YB"k,LWEyOdFT)Au P+$kFMg:y;?VD]KY)/*I#sbƍI \Y,WՃc%\-OG} ]y<5X5\&(|9pAŎ(Ha )R|3GQQA4LraَE:h\. <>T"2@Iϣc B ^V~ !*7`7qA8O"a /O4+AnEkvy=)"qf `80!ڶiL)>j̚;]t֨ab@V{Nh1*$];w%b_S?T0lWt˞]?Iv8'LO5tᥣc:G U#7U&eO*~'w.bk/yI`]ҽ#L=F?#Ci4u7/0Ёi@e n~UOݓ-w7ZB\(-ZU)kt Pk$ep\qk#xۂP#:!9d^5[ d;DMV5ԇ|?牃#bź]ۢ:G |s쑚bP׾zAxpBɪ˪\Cʒ'PmP҆}-he_1U%SӔx=h^^Jwm/I>׮_:D.cw7i#O:Fm 9CG5"RӒ9 X|şG #" s|-@Mfo ;}ΰg'D5.2 n648 iaoq܀B-( 'LQoMQn 13Db!vLHɮ=nS1ۈN! A2CΉjڷO2)K?̒gb'0y?CL-+yDlg],?fW#MS()dTX|ݑ6_f7'9W65#2'5&oAѡ|\c d hrna 8[0!(Pb][x޿PDF" 3ouSaˆ8 W9x3b|f/ikG!KiD^O+1ێ ]}ͣZsE!ΓfJp6N۷]$kr )NSS.m~xש$!vm8s-=TU M#a`_:DDH )՛YXƌ3GD__ X5߆oڶ<# ʙ)+ HgMaW v:KYJ*-?KnvT9⮚ʐG\GMB7hÿË)Cq,{!:dߨ;guMI(7a0WY"BL_6+Y?_qؕ> Ͳ\UkK%Э0zE>LqT׊lMo2> gZШPկE+;KsFcί糦Fov1ehF;ه6UV71b4mwk2~d*-W=&=QyA7ʏWC"6x)?*f#)2U_2%-*2PF<i,Hܟ@XD2y;f|+,;t֣NTUpCNň|˃6xHΈ5)̕eA_Ćvr, t}a) &SBw' ܏_:bW=-[=wQۢ)DZ8SߐŠ%;Aۉ@&3]Ll䉚@Y Z@@]*2ZyQv n;|s%cT&,XJjY+Ϊhv#XmC4$\ qi..0A (䩹2}+PMҤf%䌀{Z9ř?P0_o0zF=V߂vk8.ތ'$ѠoGl(KZ/:<),ƭX#ɬkAv ő?퟼d̠OYr1~"(1RR"6ТA \AAzҠPB"i;i,`Ãxe5~tuq[= n(-he{LZ}GXA𡝔k=i|HpV.m`d ۂ- wWT&Yİ@Z N6$V.bZC|s`٦sdsZny @/NsX N)msߎƇTUsLd Ɩ/OgEzQ(q׏,T=RC`_&O__,b#9p? g jЃ,>8HgM9EOk믨Nk++|_[Ə XqCUʆ1?@ ܙtEm07սnֱG+U!w=:k#7 : /9,\ô?dx3}8ϐjw'S-ǘ87|)^Cq/ JZ:hrط!&4+]4$SiL\,7d8jQxxR5h jmoXAajH%zv؇3ha)2T:n}B6dH׵Nt@z P9;zTJv21wgB 5KLO[]T:i%f 6c6sUk4K4rx:fz}p/*"[W%fquJE ES1&sYې{ŠWҦP-"y>b{*ތWWo!"QL([> yއT>Y.&ZnU9!TѬhq(+-ǝa>"tDw7N7N/ i h")/?`}y=5m󣶀#o5E% ;|ՖY};bsLNze1j9Kj^!t ܏'\b2F MysH  [fA۳0O5]{w]ygO.MQ.5HIK- ;uZ(.iUmR*Q+ ")qg +)(Y:[Dks5XD-O{/z qθneD,+ $%.ZBO5".XLjnDrT T:+$w@j*\h|C&2?}I'Ot̓_ ĞHǺig2"TgN3 Ka!i8rM7&Qר ];ƹv+ 23[_ҍZ领F:gkU/VsMX P}+=@9*%8=[;,R>wMv5k?Gj.v8bl1e{ g%rN>y&3I;bfcH7}wC/j*U}kݝ֓,&~&ORl.Ե8pjYNRG$}Ba{^兔j~k/AFFto7fuИ܅uʎ9caR w*Qߤ;~Ue^@k dd^(QQdШPx˖~4acoEVXrA&RH 1L[*M(.;X81`i3C7Dd|0mjhyq%]cዒ0[d;QTI2=TG=thQʍڛkthH.zy[!_OF$ވV?$ҡCQ n)T~ `SdcJᥨ$>8UsFrBφ,(KWdGt:KX1u o"{ С3 f1r)"'ٗRq0 )f=Aʨ0Vhc͌/ (PA$P fPSLVV6䍔Y]J`6gtە52mMOi*ONdh_,z2ƑSI3uqieSEmuR& 9.{ɍۿ∅S "dZyi6i~Ͽ+٭U~RmU/&Zֱ8`F>vAi&&A[RlH5T 4ϡtQdm0n@+28zx]gWYӝJ#[ݸ%F0#=sۿ? }[Nc΍i͊_:.]f G3yK5Ι˔"Usm$^;#\ EQF5m}KWhCHJ=~a4!q{:C%r{s #F2YظHtڌ%2ON*gH#y=7xGy2a#Y̒5eKf039&tW[n#E:'`-Ϊ׀ I=r÷<_r\vO4`7=;U!&v}{=5/gn3al7ia &N!m'@+<53F[I-#5q q:OWkeɽG5vO>;:m/9 ԯHAےH#-j{"Tȃ I&>ւ͂!Dr+~1^eP;;ZLioc$eyᒣjuX%dΊ3}У չx)$7?:S c2iQ8¥+kl` Lyr6C]Q..JdeV9w]26vatgF݀qY{4_+ І{s]=~7"r]aE& c`'dSf'ܘo Ŭq~JT-6-SF8ɧ]^ A5-p`GQEM(? ߄L9. b괊'Y03D erŃ*F*fpD)ywHA+̃=oe~Y_曚V @&[*\wdP(–$PBfȇ^3ytA]k5%kTViimȖ2gQ4ȾL{]"}\95=ܜRe׿p:p[sşPTFe Ѽp:KOUi RekEf5Gכ(גbSQDb͹X2n9vPF&PE^KB-ǽz~n{Ojp=o?DŽQ ىU]i{b 4[deyȈ/8JB{]XZ C;` 2u9n-H,߿ =YEN,T.ni 5pI8d (?Rr uT&t~+Ki!~aEbT|͊9\J\s Wf)C"R* Bn ͂vI$L4}`L?pAZ3ZYgU-68́`a9dX<w~&a 6S4ȋ`e;l<+E^߃*"zNˤ$|&2no1(RSPSR,z@c #>o~ι9Bc N/bg$vCGjun+Sڞ#ˌFc{{ɿĂT`7F&8csh4p;Q]K$=/(˃V76OeJ_;W#!h{.\G(r/Lk N5\. `(# @ld,VoLWkyyDx༃l#7rotɞ/5b>]ѳ6 ^"MGg4 fHhDo"Ĺ$!)-y%nȞ\Ռч> UE@w 0$e{\;jy\>pظ/S%VRQhD`[z;ӡt)0Tu)۞(kr r7"۸ei_w3g7(cZVW;'.ZQhq""&!DuŚT_68vnN[?xnq;rHk ҋ.%~ $ևE[Y%D*QM|*@"5 <'H~Ζ΀2_UrPPLxq p IMuh+E~/IWK)/pvj%|6n+q?&O"l#l2wU5xH% *xo@m)]&ZxPfјR*lmOG&M+{]?aQQz9l(<*.VSuhm MˆI]bX4IOsTΫPx=ܑ< Zp,;*ٟƹCQ7c^Æӌn5+SY-U*٣)|@eQ\KEژB?_C,nD+ F7k [EEqB J/\Nkss\mʉX {&Sn-}*…ˠL%+@EKrR*Den;T*aE--Жwm{)/ଈTՌi_Hʐ)+ #$~ UY¹ޑ~O+`=їŪJ4,;ybhtч8lTս8]'|9zt"KMe/V+Z'yj.|)Ov?Qz(3Ӽ$kiV3,E^FHE$t{"GP('̳T>~y` _g]z:Lv̀:Vdžjw#j{R_L˽0қ4g{AYAS8ϛy 0WK-:r'&;whyc~GKig)z H0U\O ',ʻ8 {+m NIbΊ^-3lA0Nrj̗~Via+3gjZ6Nn+i D(iq ʭm"f|~┼hݲ_/㢄vĺR) c;ˑq~aѼ2 ԭyD1[=/d Fay櫹}Dl2(j9+uc`Wu\I;迧w,6vK9tJߙre,Y}y0b2^vgbaFe}rjjڅ'Nq&m$hbJl9.I߇wr;[?vVLNi _+ >>PBcs>(H-IAYNDFOoZ +kz7֒'?qiy^[lYZ&W$f@QGV(0fu 5 nlP,s"M#˺;Ѿ@P'7d˗]CPH>i0G-1{ H2 uٍ<JRӏ+Vm[qM3ֿd8WqWs3.D9>@S4'q\PA;6 9vT2KyW)&c@tKe%4\4b(tD2ȸ%FTxIgʜWf5pi*nCQ@e/Jq5&΂ē!1T mf9ק3U3T>0#< bgzk^50-!k| F^u9`ҥfAAZqb4a<h^WiYmg<XiV麢s 4؆yپ˦ps"!])v6]O$?w}%׾Vc\lC| *Dؘ ʎqn|P^LXϣZ7n )}njT @UfNhOWsգVՓk@]\.{R4~kc2:-i'[F/ N&0-ޓ%_m#Ϊ!#KP=N.1\ڽ\%-hxnlwj:8ҏHb;*&i jodKIOdm".ev/l07pYry2'j| ߉3tѝ,eai y$s;VP x `doswqG t/ dm@/F́qs>䇀tΫ"GN7$`U Gs8xFC5rV(3#Z\EO^f֨٠뫳>W`t%(Fx)*k|6޼BN &A4=*8WQUi2e sT#-?YzYE d~8cM^Hqvohf Fa e:yEʢ.uiRT+1rwװ OH6e3{;b͓#Z wjqV.}wZ->FC^P+].0r9xlrc*'B9η!+h4H1FMb@&(z3P˾ 'Zax9 F /WSm)pw{lmgbzgye|ǒt@{_|xF WfrR [IXD AeCw|zW"lUwUeORc ĕ8dM]65j֗.c۰7L=^J+\S4A[g lK jRWe :>-ݦ@mX9\j^ sck3th(}$3֣-\ٴ *]j YlTsN$j8wDIW+'nGFEszǼ%Um>XfڮWf[ʳXAj4Q=Iu=7 $yF|Se}h<( :MuIdHFfcƯE/s$ -bS}gbMPU& II,&.1':wHK+qˢYPaa \ڻP93wCQA!OԆeҞ] x3ykqPavM%A4i.YĨZK;'7'АA25iɛVN4׆^\B%mϙik{ r m=Xm/H<ЉZv Sm\o/K)7:,`HdT&҂'Z  `6]I3:'b2ܣ?;6H;NMȪ'JЉztxQ^ cF6睉>bHr6gG-ld?2 De[vp,=eZ hRwl1RK4p3&,,8@r޷1QMˆ?֔ZpiNPEe k "/#2pPyYƖd J4u)IL[;7a1WjͿ&$Ą@T̮iTzfk &%EM<2xuKmM)Tڑ8Mz}ootjRWjM6.CZ @ׅ`,w4`O}Yw7FC,YkY{(T%[]@{޷' RK< oCJK㚾\0v2v~-wn!DzBVOWITgr P:@L?-1\A~ZIn$J$jwQMa7'G7RJ3 lό*?Z-ˢ? ;[,{5Wz 0@ .zKo=>UfA YdU.{ Q QY"dDNvϩvƩq31눗ӖϘ4;&B^-i$$tu9c#68vgHG|jӻx8Nz-FHLۑpFi09zxi ԩ@qZSTIUzގ߀$CpQ~/y n0V}2s30X[L{jК oNA[C l)rZ83́.XL $y=CRd'dn-n?rj9O1nud(8UAWa%We+n* چ;V) 7|!i3rI6{fi z4H7IH);wUz׹ſX#HDջׅa+Vg%,Tt 1/6ӝ٘ XD˺Q_[Pf{mDQwtm&/0,XWFcQѬ@5*yňh$фX(1O]kV_[h度0XcxdPnP6xQ4I._p6#>09d|p.hG|ZQz`urWAXVu'YܨW;iҫ犃ѵQ !Ez0O%kGx= BhQ0?Yj=X3(WGRW3a {ㄵ%E{8ShׂJA"KzG&3vU'DUޠ` _Sm Ԉ݀N)=װ!p+Ccˣ7eRڼ)hXjKL@܈ ˚8sIM+MikC!@b.ͪmrH2$.osU;*Ewq¾8"c/yEMX p{7Kc^s?aSHj)vMμ{)}PE˔&, 2eP NE:*byǪ޷7'yx{VoI 0_ x]<9 &5ڻaԲL|4=R>A(GLoA{D3GE%9騻XyE*67r7ՎrP&-)HJ~ =΍1륃DY[OtTt S D:͇kBռ v x--l.l1|7rXz+f,L89=d^l jbdy[=1@hnp4) $U f5MweXD;Жc6EcWͧB.H3uiӞ,A?fFzOpʯ:2LlƢalҞKRH`K{;Lv}(#'H rYqvP)M$ʔCBzmϲ\-Ѭ*O1"ېȏMfBeOq4=/zS4?‡pjLx;>[)AK8긺3NMy CriMO2UAM>fvBS6>{BVqֱ`TX"cx@eύc~YˤOL^ *֡T`5XmO:# [;ߍ(#'DIj<ۼ.F|^(!uqn~S.a=p cޟqxq a@.|Akla'5gO' 6I1󥌳"56/;6Tkg[8RXJQy&)=&<絫Tڡ =*<].0[^iJ6 y9?O[wH2PG0W'"vnBsS3'NCe@b0>-m>AP|tfϋ ]cIWvd-kdfLRF n&sxEolsUgȤӑ:+B*s?caTuyBC )b0%H<("cF4\@~F؜1" 6Dx5@jG3M #O"OGGЅÁ7P1CAsFWiHego״Z/5͠cE+Mz֒:es;{Mx!6 \$Y$?S:9S ^Vʩ$* V+|2Sd5x9Dzg0ёgi8W?!/|NY@E:$`X!lm]>n{Gg|_lJ.MJajO TĻx7$Wyxo%rо%^{PVwQ_,mY% DnԦ_6W3睶}j\'@a WH}e%ԉG!2 `Z64dW鱻0(TsG| 11P˰ {eqx́ }eH1}y)ᔍj^^UC=lXgjr\?> `v"Ap;Z!;-:ToY? bz9jbW_##{ޮ(+@CI'jl_``ԭ0"i\no~k mV@N|ibe!' C!̡ӗ1 TK,*{9ӘhS +ޏd# uZI$8XGpVgC⫺gWU{Wf. Z6&J(G}|+M`} I`̡ rcK PRuh*lMOOZi^]RÔuCۆ5#d!ÍrAJ^!B![5^%"L07`ZX2`x]ljR[(:#~kڠMV;(gӻsXQұq#sͪ'D*yE KŌY [[ŕxAK(vt=қ0C<>4Qm|fK;yo͍&9p1]]H/N_Y1mx`>TawBi\Z:JFbl f.pbY=껂NVF6{UN!^B cdIkF!{r\^z\vZԚlIU" >pSyxs>}6"~Qv:@/=C^?"3I/d't_E -]ćҍа2ۃ]?JtvH>V0޽ a* Y : Y}A28u!H+-J)}Z`f.'#<6NJnS|Jj.m=.*su}YpQ) NC [^4·ʵ.(JƇhWt S,XB7sg5{J-)Ae/[Ph.U~б+qzRoFF4CV&p9 j_`,z4 gS!){ķ ̞5aIf(;5Ĩlʼn(=.M͉:EƁb_R^62AL022@W~b:5[BQǺэ,<5HRK8d!X )!WsچӱJ8#J[ݙlϚl,DFNs)}bkg3j䳡T(Ho8 [ve/Gr#N%Rv37g !wKI<<}, ^rAx-)^CӜͧsG0d FRkwr[P%I  24eRxc@փqJ[h