slurm_22_05-plugins-22.05.5-150300.7.3.2<>, dcAp9|S*-|Iիٙ{)a@#ћ 34rTօz2[}lPN!ETFfؿ>[:˔IEj ?KV}dfUYꪎx.Vf'#ڣ<kZ#Ҝ]YMc;GrB,z3zSИn3!5IAx?hd + S $F^dl`` ` l` ` ` `|`!\`#<#h`$%t%()) ).()/8)89+L:2F,G,`H.$`I/`X0Y0\0h`]1`^9mb9c:Sd:e:f:l:u:`vSUSE-GPL-2.0-with-openssl-exceptionhttps://www.suse.com/Productivity/Clustering/Computinghttps://www.schedmd.comlinuxppc64le+ 8H    p P   hX 0      &@)  @  ( Xh8  p p ` p  x ȁAAcAcAcAcAcAcAcAcAcAcAcAcAcAcAcAcAcAcAcAcAcAcAcAcAcAcAcAcAcAcAcAcAcAcAcAcAcAcAcAcAcAcAcAcAcAcAcAcAcAcAcAcAcAcAcAcAcAcAcAcAcAcAcAcAcAcAcAcAcAcAcAcAcAcAcAcAcAcAcAcAcAcAcAcAcAcAcAcAcAcAcAcAcAcAcAcA8229df484a3842a477b8b4acc414874daa6267f1577fc45c380c2f0f724fcfd49703a958670d36208d837402abcbd10775ad3eee0f2ce830f21fcd789b44aa38eee478421bcb1c9286ea0e6595e18ede59650c96c66d5abadefef1e71cc691536c0b87560a893b304e133d2cf397ab80a46a6c73ce096d281b247d700ee3abf1e399d9df031c9ad7856a88ad68838eb16fe813cc520ade688772adc6b77ccb6b5181e5e6c556991d3c943c4ee3ae1d8de3b255ffcb69a4016bfa58c13acad04d2fcebcd24fbba9b7d8abc6ef441611572b0cd9ef1d71e8d876a3a8ec8569a751358096492e3c8108c937d4283d11b88cfa9370712d1c492deffe1dd7c55a0fd76909ff40340012f416db5e3f395c3233414e5106d3193f331bf6f11401a3b977a23a8585a616f93a667731c96de0dbe743ded783f04befa4ec6d07f7060699b216de9a55347860dafaadb73d23f3f009be1772250ab3070114ce8d4a0b78a461455fa4b30ea36c605bae024c2baeed3db8db47aeb6f6085b581f4a43055efc9d036426267f837d2e7751936ae45138ec6176987635a1847341a207c8ce2b624639837f63cd75264bac85ec81bf723dc04878218c97363bdb13c8e0ee07b5895b01860972c5a9af462fdab4d242e69f3ad1f2613109dda7a0ba218c3483be12d48b2e9d77165caacc1477dfd6adf7b1204764d701f3a44860a35e8609a5a3f7551b587aba19230a88fe87678ca8c730069c5fde696c4ba14d0afa6c9e9f052f99c3bdcda204b01c835845ed9cee39fbeb7171f20091c5d780b9161804103c5ffcce32907f5dc88fbee7497a88b48ad735d56e434d078b1c8a79680fe44ca6605cc494075c1b136f507e1db618b51ba6ef315d209e60b7937216f737179309f59fdbba6e92a4fcd02484796765d40526ce18a36c93f92ecd24ea5ebfd94578d34a06d67b6d1a1e88524d6a3c0e98dcedaa512da1dd5474577324696ea28904cf752415deebf3b5734f68ad1ea0f0c9ead3a8bd0853df27310d3c2a7b9044485511139c4849853a4cd40e2ce07ab93081cad4e9b13095a9718ef4cf23a80d5cf698bc4f9e62c5d506e6d12af2a8d38d93427de47461ef0122c9f4aa5e6ebccdf7f53939b169798365e6edc8d1b81dc03daa214215a5dbfc7d92cb5f6e7d7ca7ec3003ee033e0ae9984445fe49228b26ee08ba045fc9f9c0644edb266af7fb4ce57828b42b47d2e7576cd3aab9b79721720a203d2ff6c12bad7d87ea870c1f610ab3e2000ae71fa122ce5599805df49638b6a599a40bd25f3041194d0af9aeaecba957118cdb3a7b2fa4b8cc94f3b4fdfc640653d5ea4a0c2023edcdb07088083de227da47c989dcd07f5e1a5ad035f7f2378df51bae3c1525525a7980e934db4e32904e287b84e8989c3f68eba2ed38edbc3589e77a1933aaf3182d23f18a57161b294b2c7b4c98f8a3f544a8dc8edb1147245c6aae554f5230ae6a998a49269e40c5fb1d291b8b48c57840e4ffde634308a8005179bf824dc5592a731b9af546b1a13ee230572603d63015433bb3f7094c597a57383be5fcd903e567f905f11ff04b529dfd3eaf5be83c6b66fe621231177ef99ce0f466cc640e7a658b2a0b40514f82c1592b9b8635c0e9bedf5a155e5181007cd54d1eede38ba05be9f128e6dfd2f5ef9e9cf0080892557506d9cb1334abc47e62dde8e60a09ed41f1320a271d367f9b1b6845b1c80dec1d90d6863fb8059c8c9dad08c1e36d912afe44b3ac759270da3793bea7f679b88ebf71aa75708fc1781aef07e13939eee745b940fda2baafdd5d3e08ecbd4b5a8880f4e169081b17db953080373036efd69edc4bd90e50e0984407ad61e413da09c8611bd2fe834df382122a7a79c21d12f3084a976a32cce2b583a5d70202f903711e802c94071d7dc5a4b3b6b3c1d75da48f058fd385dbf49e1fb4385ff3771ce59f1c980377dfa01d02196dad7a63ef634f50706286a2fcdeaf80ed6462b4fe3ea3b60df0b947665876c44e89aff6d649d80f4c788dcd6d2023e0693be1e8daf6277ccfbdf9dcfd0425d9de58c01370d006ecfe6c228c8533d37a1ff132c1e4388055f39f1523007b760ddc4b929143487661156386265d21a799bb75dcb659c028097486ba72e9fe9763896bebefdd2245c71cd5e3e62474f65907ee3073a166bfecf9e18a4d603beedf91a7a3ce9ec4c42576a79b54e6921039391877eb28afad2d95927862d5064d1c0a052b062b891db2f79974cc4aeac05ca67a822a641436208687514f3f7e55c154dce87c817b0eeebcc748ae4bc82f1c1e458bac19db2694ea7730bfc0502ef70426dd0b48bf53e1fc552dad86f5fd07e9dc6560cacb6b118ab11d7874c8d338b1faa61d0107b267d20f59d68d66eb574e7397ff5b27cf316c4cad6420a77137298e19fe064aebe3a8a83ad38649707cd18282bcff10d48cff759485fdd13ce5b06c4e7b2e7c795a133003d4b58a661406c0dea34620f42a4ff5abb9c84e5ecf3366698f67882fff5e940f0f2511335621e8db236bf27b6d0e070e90fc1ecf08af38549d6e33cafb224f7b4caa186fd3428bebb56aa3fb517ea02d96299e8172d8e9f5374dee3737972b7e6ab33a733011887980b148f95f25a635d25e8f7c86cf59c627e33116fcf6014a9b976a41518d6a13926ce9fe4bc2a9615510cc5d1de78fceba35041f8408dbbac719dc6b8459b68e1b4b5ad5b25d7fb2a5e3021457c6c995808d828b441f6eee2a908f852a3a0a75fb24733d789e16a5d0f56df5fed78fa41bcc0da5c9f595138a0ebcd2693feea120ba30fca2cf2c9a2a3c25de345e5951e649b90351afe1f9104174aae2e305321262d85349677a4c7cfe31db8bc710b92b62182275a9c8459dcb4b27579d993d644cbc9e8d94fb205b9eeb8caca71f595cb436db87b9ae2b2074ab95af64f0d3cd60445a74c20b87a9c40857ad3317b3cad444656a90bed28d0a777e5a00efcb0acdfd705056ad45825609619122cd0eddad9a3e34527c703226f9197527242f142624852efaaeaa59983cbd834d645019f9da7da591ee0f2b3bbda7ba5de0255c2be749900900c7be614bcfdebb1b99ee842f544ac1f4578d4379ac31d6f48b5d4a05ee8087fc8848c84009e9f01d80155f35aa0a71aa0ffb8257289727b9dfde9d80b9e6f0c4b88799838220a6d37412e3e20cfdaf70b0d8c5a44a9044f667b7fdba6a7348b9f92c6759ea4c9d6dfd5fd013eef4982ee4c6e07f07b813942f08dab516f57cfb9a4e6a23ac1838ac5065b19ff206620fd8cf445c6a6fa33901095fc330200d7bc40487f083c30809794ba02c65f6d11bde238e256989ca18d1e564c3b0bfb0c63d14c47475f227a6198cd88aa722eea42f453d397fd52a7d2c1b561e47ad982ec5af862e87fc8ae594e4ac2bf75cae6419583f45e026034f67b02163bcc9d120435f1b2129bb16388562da0d1ca307860b100d0e5e9e8e42423ebaec18a4fe2a08f789624489c3643bd88a0b1d82a41256d59caddccd6754ddf3da8d3ad90b844f2675216fed3573d8c90242b966946aa440af97241b2c289d06ee4fdbf089b5a4f37b3d0ae1d0d6ef45337b63f8ff3016198abd96688054e6d7ba66305ad16e493bd2c5bd0fdff3fe294d9950df9e081eb3fa67c4ea984579913263948eacfef02b4a25015f348d45db3636c1186d7f383b754b1b12751e3ea82c43198affc03edd467601a4a5c9e5ca1abd4a9dce4cdd669b039ffe9cd2c82d9eb425597128ef0947f969e7e2bccb0db2f4470fea300d26d8ea06efa1e3c6d217f8c7a83e2875e2778dcac1e0f080fcdb34a2545965f486569c88d9a4b5bcaad52a7b82cdbca1cf98a8fe2d71f9bdde51fdafbcb6b79565b2ec5e267af0da79f2cf4fdf7b6c994a3bba2e4f938e4bc2f804fc3216813f1bea22599f9b984943d62fa3e0670f48fc2c65a490cd266f7e8759950e2ebb60a60f7e8e1c83a843c94c6706991fe5c2cb9687d9c94b3fc81190269ee7b6d4e637654f0e4b9fe62b3b00a7250fec117653c54aa0170aaa7bc0aee086d83de3c05c00072314dee35ce9c02f559ea0ee4486f0a2f435533931fa17d34571ad5a754586d10272ea4d9069e772e9bdb12d13a97926b6b0025f9aeef39e8cf91c7d3cc442a6b91466e954fdabdcacdd0da9cad99cd65fae292ffc11d653f557d9d5mpi_pmix_v3.sorootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootslurm_22_05-22.05.5-150300.7.3.2.src.rpmconfig(slurm_22_05-plugins)libslurm_pmi.so()(64bit)libslurmfull.so()(64bit)slurm-pluginsslurm_22_05-pluginsslurm_22_05-plugins(ppc-64)@@@@@@@@@@@@@@@@@@@@@@@    config(slurm_22_05-plugins)libc.so.6()(64bit)libc.so.6(GLIBC_2.17)(64bit)libc.so.6(GLIBC_2.27)(64bit)libcurl.so.4()(64bit)libdbus-1.so.3()(64bit)libdbus-1.so.3(LIBDBUS_1_3)(64bit)libdl.so.2()(64bit)libdl.so.2(GLIBC_2.17)(64bit)libhwloc.so.15()(64bit)libibmad.so.5()(64bit)libibmad.so.5(IBMAD_1.3)(64bit)libjson-c.so.3()(64bit)liblua5.3.so.5()(64bit)libm.so.6()(64bit)libm.so.6(GLIBC_2.17)(64bit)libm.so.6(GLIBC_2.29)(64bit)libmunge.so.2()(64bit)libpmix2libpthread.so.0()(64bit)libpthread.so.0(GLIBC_2.17)(64bit)libresolv.so.2()(64bit)libresolv.so.2(GLIBC_2.17)(64bit)librrd.so.8()(64bit)libyaml-0.so.2()(64bit)pmixrpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)22.05.5-150300.7.3.23.0.4-14.6.0-14.0-15.2-1slurm-plugins4.14.3cRcIO@c.@c)@bb?b@ba@b@b@bzSbu boa@aa{@amaa]aSaD@a6a0``f@``Q@`4@`@_I@_I@_T___ _F@__c^א^Ǿ^^}^d@^_@^Y^W@^W@^V]^M#@^E:@^B@^:@^.^*@^*@^)^[^@^ @] @]@]]B]]](]@]x]W@]+@](v@]'$]#0@]#0@] @] @] @\v{\T4\R@\R@\I\U@\[@[@[@[@[[[.[r@[b@[`O@[`O@[\Z[E@[{@Z؄ZЛZJ@ZJ@ZZ@ZZZo Zo Z_:Z!D@ZY@Yp@Y˒Y@Ycl@Y-^Y]XDX@XBXXXk@XAb@X>@X43@Xx@X@X@V5UL@TVTVeich@suse.comcgoll@suse.comeich@suse.comeich@suse.comeich@suse.combwiedemann@suse.comeich@suse.comcgoll@suse.comeich@suse.comcgoll@suse.comeich@suse.comcgoll@suse.comcgoll@suse.comcgoll@suse.comcgoll@suse.comeich@suse.comcgoll@suse.comcgoll@suse.comcgoll@suse.comcgoll@suse.comeich@suse.comcgoll@suse.comcgoll@suse.comcgoll@suse.comeich@suse.comcgoll@suse.comcgoll@suse.comaguerrero@suse.comeich@suse.comeich@suse.comaguerrero@suse.comaguerrero@suse.comeich@suse.comaguerrero@suse.comfbui@suse.comaguerrero@suse.comeich@suse.comeich@suse.comcgoll@suse.comeich@suse.comcgoll@suse.comeich@suse.comcgoll@suse.comeich@suse.comkasimir_@outlook.decgoll@suse.comeich@suse.comeich@suse.comeich@suse.comcgoll@suse.comcgoll@suse.comeich@suse.comeich@suse.comdimstar@opensuse.orgcgoll@suse.comeich@suse.comeich@suse.comeich@suse.comeich@suse.comcgoll@suse.comeich@suse.comeich@suse.comeich@suse.comeich@suse.comeich@suse.comeich@suse.comeich@suse.comeich@suse.comeich@suse.comcgoll@suse.comcgoll@suse.comeich@suse.comeich@suse.comeich@suse.comeich@suse.comeich@suse.comcgoll@suse.comeich@suse.comeich@suse.comeich@suse.comcgoll@suse.comcgoll@suse.comcgoll@suse.comeich@suse.comeich@suse.comeich@suse.comeich@suse.comeich@suse.comcgoll@suse.comeich@suse.comeich@suse.comeich@suse.comeich@suse.comeich@suse.comeich@suse.comeich@suse.comcgoll@suse.comeich@suse.comeich@suse.comeich@suse.comeich@suse.comeich@suse.comcgoll@suse.comcgoll@suse.comeich@suse.comcgoll@suse.comjjolly@suse.comcgoll@suse.comcgoll@suse.comeich@suse.comeich@suse.comjengelh@inai.dejjolly@suse.comjjolly@suse.comjjolly@suse.comeich@suse.comeich@suse.comeich@suse.comjengelh@inai.deeich@suse.comeich@suse.comeich@suse.comeich@suse.comeich@suse.comeich@suse.comeich@suse.comeich@suse.comeich@suse.comeich@suse.comscorot@free.frscorot@free.frscorot@free.frscorot@free.fr- Test Suite fixes: * Update README_Testsuite.md. * Clean up left over files when de-installing test suite. * Adjustment to test suite package: for SLE mark the openmpi4 devel package and slurm-hdf5 optional. * Add -ffat-lto-objects to the build flags when LTO is set to make sure the object files we ship with the test suite still work correctly. * Improve setup-testsuite.sh: copy ssh fingerprints from all nodes.- updated to 22.05.5 - NOTE: Slurm validates that libraries are of the same version. Unfortunately, due to an oversight, we failed to notice that the slurmstepd loads the hash_k12 library only after a job has completed. This means that if the hash_k12 library is upgraded before a job finishes, the slurmstepd will load the new library when the job finishes, and will fail due to a mismatch of versions. This results in nodes with slurmstepd processes stuck indefinitely. These processes require manual intervention to clean up. There is no clean way to resolve these hung slurmstepd processes. The only recommended way to upgrade between minor versions of 22.05 with RPM’s or upgrades that replace current binaries and libraries is to drain the nodes of running jobs first. - Fixes a number of moderate severity issues, noteable are: * Load hash plugin at slurmstepd launch time to prevent issues loading the plugin at step completion if the Slurm installation is upgraded. * Update nvml plugin to match the unique id format for MIG devices in new Nvidia drivers. * Fix multi-node step launch failure when nodes in the controller aren't in natural order. This can happen with inconsistent node naming (such as node15 and node052) or with dynamic nodes which can register in any order. * job_container/tmpfs - cleanup containers even when the .ns file isn't mounted anymore. * Wait up to PrologEpilogTimeout before shutting down slurmd to allow prolog and epilog scripts to complete or timeout. Previously, slurmd waited 120 seconds before timing out and killing prolog and epilog scripts.- Do not deduplicate files of testsuite Slurm configuration. This directory is supposed to be mounted over /etc/slurm therefore it must not contain softlinks to the files in this directory. - Improve .a and .o file collection for test suite: find these files even if there are multiple ones in a single line.- Fix build for older product version.- Fix a potential security vulnerability in the test package (bsc#1201674, CVE-2022-31251).- make slurmtest.tar reproducible- Improve check for mpicc in testsuite package: if binary isn't found, don't crash. - Patch NOFILE Limit in the slurmd.service copy for the testsuite.- update to 22.05.2 with following fixes: * Fix regression which allowed the oversubscription of licenses. * Fix a segfault in slurmctld when requesting gres in job arrays.- Package the Slurm testsuite for QA purposes. NOTE: This package is not meant to be used for testing by the user but rather for testing by the maintainers to ensure the package is working properly. DO NOT report test suite failures unless you are able to confirm that the failure is really a bug. * Fixes for test suite: Keep-logs-of-skipped-test-when-running-test-cases-sequentially.patch Fix-test-21.41.patch Fix-test-38.11.patch Fix-test-32.8.patch Fix-test-3.13.patch Fix-test7.2-to-find-libpmix-under-lib64-as-well.patch * Add documentation: README_Testsuite.md - Allow log in as user 'slurm'. This allows admins to run certain priviledged commands more easily without becoming root.- update to 22.05.0 with following changes: - Support for dynamic node addition and removal - Support for native Linux cgroup v2 operation - Newly added plugins to support HPE Slingshot 11 networks (switch/hpe_slingshot), and Intel Xe GPUs (gpu/oneapi) - Added new acct_gather_interconnect/sysfs plugin to collect statistics from arbitrary network interfaces. - Expanded and synced set of environment variables available in the Prolog/Epilog/PrologSlurmctld/EpilogSlurmctld scripts. - New "--prefer" option to job submissions to allow for a "soft constraint" request to influence node selection. - Optional support for license planning in the backfill scheduler with "bf_licenses" option in SchedulerParameters. - removed file slurm-2.4.4-init.patch as sysvinit is now realy deprecated - removed file load-pmix-major-version.patch as fixed upstream - set environment variable SUSE_ZNOW to 0 in %build to avoid module load failures due to unresolved symbols as module take advantage of lazy bindings (bsc#1200030).- Add a comment about the CommunicationParameters=block_null_hash option warning users who migrate - just in case.- Update to 21.08.8 which fixes CVE-2022-29500 (bsc#1199278), CVE-2022-29501 (bsc#1199279), and CVE-2022-29502 (bsc#1199281). - Added 'CommunicationParameters=block_null_hash' to slurm.conf, please add this parameter to existing configurations.- Update to 21.08.7 with following changes: * openapi/v0.0.37 - correct calculation for bf_queue_len_mean in /diag. * Avoid shrinking a reservation when overlapping with downed nodes. * Only check TRES limits against current usage for TRES requested by the job. * Do not allocate shared gres (MPS) in whole-node allocations * Constrain slurmstepd to job/step cgroup like in previous versions of Slurm. * Fix warnings on 32-bit compilers related to printf() formats. * Fix reconfigure issues after disabling/reenabling the GANG PreemptMode. * Fix race condition where a cgroup was being deleted while another step was creating it. * Set the slurmd port correctly if multi-slurmd * Fix FAIL mail not being sent if a job was cancelled due to preemption. * slurmrestd - move debug logs for HTTP handling to be gated by debugflag NETWORK to avoid unnecessary logging of communication contents. * Fix issue with bad memory access when shrinking running steps. * Fix various issues with internal job accounting with GRES when jobs are shrunk. * Fix ipmi polling on slurmd reconfig or restart. * Fix srun crash when reserved ports are being used and het step fails to launch. * openapi/dbv0.0.37 - fix DELETE execution path on /user/{user_name}. * slurmctld - Properly requeue all components of a het job if PrologSlurmctld fails. * rlimits - remove final calls to limit nofiles to 4096 but to instead use the max possible nofiles in slurmd and slurmdbd. * Allow the DBD agent to load large messages (up to MAX_BUF_SIZE) from state. * Fix potential deadlock during slurmctld restart when there is a completing job. * slurmstepd - reduce user requested soft rlimits when they are above max hard rlimits to avoid rlimit request being completely ignored and processes using default limits. * Fix Slurm user commands displaying available features as active features when no features were active. * Don't power down nodes that are rebooting. * Clear pending node reboot on power down request. * Ignore node registrations while node is powering down. * Don't reboot any node that is power down. * Don't allow a node to reboot if it's marked for power down. * Fix issuing reboot and downing when rebooting a powering up node. * Clear DRAIN on node after failing to resume before ResumeTimeout. * Prevent repeating power down if node fails to resume before ResumeTimeout. * Fix federated cloud node communication with srun and cloud_dns. * Fix jobs being scheduled on nodes marked to be powered_down when idle. * Fix problem where a privileged user could not view array tasks specified by _ when PrivateData had the jobs value set. - Changes in Slurm 21.08.6 * Fix plugin_name definitions in a number of plugins to improve logging. * Close sbcast file transfers when job is cancelled. * scrontab - fix handling of --gpus and --ntasks-per-gpu options. * sched/backfill - fix job_queue_rec_t memory leak. * Fix magnetic reservation logic in both main and backfill schedulers. * job_container/tmpfs - fix memory leak when using InitScript. * slurmrestd / openapi - fix memory leaks. * Fix slurmctld segfault due to job array resv_list double free. * Fix multi-reservation job testing logic. * Fix slurmctld segfault due to insufficient job reservation parse validation. * Fix main and backfill schedulers handling for already rejected job array. * sched/backfill - restore resv_ptr after yielding locks. * acct_gather_energy/xcc - appropriately close and destroy the IPMI context. * Protect slurmstepd from making multiple calls to the cleanup logic. * Prevent slurmstepd segfault at cleanup time in mpi_fini(). * Fix slurmctld sometimes hanging if shutdown while PrologSlurmctld or EpilogSlurmctld were running and PrologEpilogTimeout is set in slurm.conf. * Fix affinity of the batch step if batch host is different than the first node in the allocation. * slurmdbd - fix segfault after multiple failover/failback operations. * Fix jobcomp filetxt job selection condition. * Fix -f flag of sacct not being used. * Select cores for job steps according to the socket distribution. Previously, sockets were always filled before selecting cores from the next socket. * Keep node in Future state if epilog completes while in Future state. * Fix erroneous --constraint behavior by preventing multiple sets of brackets. * Make ResetAccrueTime update the job's accrue_time to now. * Fix sattach initialization with configless mode. * Revert packing limit checks affecting pmi2. * sacct - fixed assertion failure when using -c option and a federation display * Fix issue that allowed steps to overallocate the job's memory. * Fix the sanity check mode of AutoDetect so that it actually works. * Fix deallocated nodes that didn't actually launch a job from waiting for Epilogslurmctld to complete before clearing completing node's state. * Job should be in a completing state if EpilogSlurmctld when being requeued. * Fix job not being requeued properly if all node epilog's completed before EpilogSlurmctld finished. * Keep job completing until EpilogSlurmctld is completed even when "downing" a node. * Fix handling reboot with multiple job features. * Fix nodes getting powered down when creating new partitions. * Fix bad bit_realloc which potentially could lead to bad memory access. * slurmctld - remove limit on the number of open files. * Fix bug where job_state file of size above 2GB wasn't saved without any error message. * Fix various issues with no_consume gres. * Fix regression in 21.08.0rc1 where job steps failed to launch on systems that reserved a CPU in a cgroup outside of Slurm (for example, on systems with WekaIO). * Fix OverTimeLimit not being reset on scontrol reconfigure when it is removed from slurm.conf. * serializer/yaml - use dynamic buffer to allow creation of YAML outputs larger than 1MiB. * Fix minor memory leak affecting openapi users at process termination. * Fix batch jobs not resolving the username when nss_slurm is enabled. * slurmrestd - Avoid slurmrestd ignoring invalid HTTP method if the response serialized without error. * openapi/dbv0.0.37 - Correct conditional that caused the diag output to give an internal server error status on success. * Make --mem-bind=sort work with task_affinity * Fix sacctmgr to set MaxJobsAccruePer{User|Account} and MinPrioThres in sacctmgr add qos, modify already worked correctly. * job_container/tmpfs - avoid printing extraneous error messages in Prolog and Epilog, and when the job completes. * Fix step CPU memory allocation with --threads-per-core without --exact. * Remove implicit --exact when --threads-per-core or --hint=nomultithread is used. * Do not allow a step to request more threads per core than the allocation did. * Remove implicit --exact when --cpus-per-task is used.- update to 21.08.5 with following changes: * Fix issue where typeless GRES node updates were not immediately reflected. * Fix setting the default scrontab job working directory so that it's the home of the different user (*u ) and not that of root or SlurmUser editor. * Fix stepd not respecting SlurmdSyslogDebug. * Fix concurrency issue with squeue. * Fix job start time not being reset after launch when job is packed onto already booting node. * Fix updating SLURM_NODE_ALIASES for jobs packed onto powering up nodes. * Cray - Fix issues with starting hetjobs. * auth/jwks - Print fatal() message when jwks is configured but file could not be opened. * If sacctmgr has an association with an unknown qos as the default qos print 'UNKN*###' instead of leaving a blank name. * Correctly determine task count when giving --cpus-per-gpu, --gpus and * -ntasks-per-node without task count. * slurmctld - Fix places where the global last_job_update was not being set to the time of update when a job's reason and description were updated. * slurmctld - Fix case where a job submitted with more than one partition would not have its reason updated while waiting to start. * Fix memory leak in node feature rebooting. * Fix time limit permanetly set to 1 minute by backfill for job array tasks higher than the first with QOS NoReserve flag and PreemptMode configured. * Fix sacct -N to show jobs that started in the current second * Fix issue on running steps where both SLURM_NTASKS_PER_TRES and SLURM_NTASKS_PER_GPU are set. * Handle oversubscription request correctly when also requesting * -ntasks-per-tres. * Correctly detect when a step requests bad gres inside an allocation. * slurmstepd - Correct possible deadlock when UnkillableStepTimeout triggers. * srun - use maximum number of open files while handling job I/O. * Fix writing to Xauthority files on root_squash NFS exports, which was preventing X11 forwarding from completing setup. * Fix regression in 21.08.0rc1 that broke --gres=none. * Fix srun --cpus-per-task and --threads-per-core not implicitly setting * -exact. It was meant to work this way in 21.08. * Fix regression in 21.08.0 that broke dynamic future nodes. * Fix dynamic future nodes remembering active state on restart. * Fix powered down nodes getting stuck in COMPLETING+POWERED_DOWN when job is cancelled before nodes are powering up.- updated to 21.08.4 which fixes (CVE-2021-43337) which is only present in 21.08 tree. * CVE-2021-43337: For sites using the new AccountingStoreFlags=job_script and/or job_env options, an issue was reported with the access control rules in SlurmDBD that will permit users to request job scripts and environment files that they should not have access to. (Scripts/environments are meant to only be accessible by user accounts with administrator privileges, by account coordinators for jobs submitted under their account, and by the user themselves.) - changes from 21.08.3: * This includes a number of fixes since the last release a month ago, including one critical fix to prevent a communication issue between slurmctld and slurmdbd for sites that have started using the new AccountingStoreFlags=job_script functionality.- Utilize sysuser infrastructure to set user/group slurm. For munge authentication slurm should have a fixed UID across all nodes including the management server. Set it to 120 - Limit firewalld service definitions to SUSE versions >= 15.- added service definitions for firewalld (JSC#SLE-22741)- update to 21.08.2 - major change: * removed of support of the TaskAffinity=yes option in cgroup.conf. Please consider using "TaskPlugins=cgroup,affinity" in slurm.conf as an option. - minor changes and bugfixes: * slurmctld - fix how the max number of cores on a node in a partition are calculated when the partition contains multi*socket nodes. This in turn corrects certain jobs node count estimations displayed client*side. * job_submit/cray_aries - fix "craynetwork" GRES specification after changes introduced in 21.08.0rc1 that made TRES always have a type prefix. * Ignore nonsensical check in the slurmd for [Pro|Epi]logSlurmctld. * Fix writing to stderr/syslog when systemd runs slurmctld in the foreground. * Fix issue with updating job started with node range. * Fix issue with nodes not clearing state in the database when the slurmctld is started with clean*start. * Fix hetjob components > 1 timing out due to InactiveLimit. * Fix sprio printing -nan for normalized association priority if PriorityWeightAssoc was not defined. * Disallow FirstJobId=0. * Preserve job start info in the database for a requeued job that hadn't registered the first time in the database yet. * Only send one message on prolog failure from the slurmd. * Remove support for TaskAffinity=yes in cgroup.conf. * accounting_storage/mysql - fix issue where querying jobs via sacct * -whole-hetjob=yes or slurmrestd (which automatically includes this flag) could in some cases return more records than expected. * Fix issue for preemption of job array task that makes afterok dependency fail. Additionally, send emails when requeueing happens due to preemption. * Fix sending requeue mail type. * Properly resize a job's GRES bitmaps and counts when resizing the job. * Fix node being able to transition to CLOUD state from non-cloud state. * Fix regression introduced in 21.08.0rc1 which broke a step's ability to inherit GRES from the job when the step didn't request GRES but the job did. * Fix errors in logic when picking nodes based on bracketed anded constraints. This also enforces the requirement to have a count when using such constraints. * Handle job resize better in the database. * Exclude currently running, resized jobs from the runaway jobs list. * Make it possible to shrink a job more than once.- moved pam module from /lib64 to /usr/lib64 which fixes boo#1191095 via the macro %_pam_moduledir- updated to 21.08.1 with following bug fixes: * Fix potential memory leak if a problem happens while allocating GRES for a job. * If an overallocation of GRES happens terminate the creation of a job. * AutoDetect=nvml: Fatal if no devices found in MIG mode. * Print federation and cluster sacctmgr error messages to stderr. * Fix off by one error in --gpu-bind=mask_gpu. * Add --gpu-bind=none to disable gpu binding when using --gpus-per-task. * Handle the burst buffer state "alloc-revoke" which previously would not display in the job correctly. * Fix issue in the slurmstepd SPANK prolog/epilog handler where configuration values were used before being initialized. * Restore a step's ability to utilize all of an allocations memory if --mem=0. * Fix --cpu-bind=verbose garbage taskid. * Fix cgroup task affinity issues from garbage taskid info. * Make gres_job_state_validate() client logging behavior as before 44466a4641. * Fix steps with --hint overriding an allocation with --threads-per-core. * Require requesting a GPU if --mem-per-gpu is requested. * Return error early if a job is requesting --ntasks-per-gpu and no gpus or task count. * Properly clear out pending step if unavailable to run with available resources. * Kill all processes spawned by burst_buffer.lua including decendents. * openapi/v0.0.{35,36,37} - Avoid setting default values of min_cpus, job name, cwd, mail_type, and contiguous on job update. * openapi/v0.0.{35,36,37} - Clear user hold on job update if hold=false. * Prevent CRON_JOB flag from being cleared when loading job state. * sacctmgr - Fix deleting WCKeys when not specifying a cluster. * Fix getting memory for a step when the first node in the step isn't the first node in the allocation. * Make SelectTypeParameters=CR_Core_Memory default for cons_tres and cons_res. * Correctly handle mutex unlocks in the gres code if failures happen. * Give better error message if -m plane is given with no size. * Fix --distribution=arbitrary for salloc. * Fix jobcomp/script regression introduced in 21.08.0rc1 0c75b9ac9d. * Only send the batch node in the step_hostlist in the job credential. * When setting affinity for the batch step don't assume the batch host is node 0. * In task/affinity better checking for node existence when laying out affinity. * slurmrestd - fix job submission with auth/jwt. - removed Fix-statement-condition-in-netloc-autoconf-macro.patch issue was fixed upstream- Fix-statement-condition-in-netloc-autoconf-macro.patch: Fix netloc check, reestablish netloc disable code. - Make configure arg '--with-pmix' conditional. - Move openapi plugins to package slurm-restd.- updated to 21.08.0, major changes: * A new "AccountingStoreFlags=job_script" option to store the job scripts directly in SlurmDBD. * Added "sacct -o SubmitLine" format option to get the submit line of a job/step. * Changes to the node state management so that nodes are marked as PLANNED instead of IDLE if the scheduler is still accumulating resources while waiting to launch a job on them. * RS256 token support in auth/jwt. * Overhaul of the cgroup subsystems to simplify operation, mitigate a number of inherent race conditions, and prepare for future cgroup v2 support. * Further improvements to cloud node power state management. * A new child process of the Slurm controller called "slurmscriptd" responsible for executing PrologSlurmctld and EpilogSlurmctld scripts, which significantly reduces performance issues associated with enabling those options. * A new burst_buffer/lua plugin allowing for site-specific asynchronous job data management. * Fixes to the job_container/tmpfs plugin to allow the slurmd process to be restarted while the job is running without issue. * Added json/yaml output to sacct, squeue, and sinfo commands. * Added a new node_features/helpers plugin to provide a generic way to change settings on a compute node across a reboot. * Added support for automatically detecting and broadcasting shared libraries for an executable launched with "srun --bcast". * Added initial OCI container execution support with a new --container option to sbatch and srun. * Improved "configless" support by allowing multiple control servers to be specified through the slurmd --conf-server option, and send additional configuration files at startup including cli_filter.lua. - minor changes: * If an overallocation of GRES happens terminate the creation of a job. * AutoDetect=nvml: Fatal if no devices found in MIG mode. * Print federation and cluster sacctmgr error messages to stderr. * Add --gpu-bind=none to disable gpu binding when using --gpus-per-task. * Handle the burst buffer state "alloc-revoke" which previously would not display in the job correctly. * Fix issue in the slurmstepd SPANK prolog/epilog handler where configuration values were used before being initialized. * Restored --gpu-bind=single: to check core affinity like * -gpu-bind=closest does. This removal of this behavior only was in rc2. * slurmd - Fix assert failure on initialization due to bad node name. * Fix error codes in cgroup/v1. * Don't destroy the memory step outside fini, which leads to a double destroy causing an error message. * Add support for lua 5.4. * Force cgroup.clone_children to 0 in slurm cgroup directories. This caused issues in task cpuset plugin in systems with it enabled by default. * Clear GRES HAS_TYPE flag when removing type name. * Environment flags in gres.conf now override flags set by AutoDetect. * Environment flags in gres.conf now apply to subsequent gres.conf lines where Environment flags are not set. * Set missing job_uid and job_gid members when preparing a kill_job_msg_t in abort_job_on_node(), abort_job_on_nodes() and kill_job_on_node(). * Fix swappiness not being set in cgroups. * Fix coordinators for new subaccounts. * Fix coordinators when adding existing users with PrivateData=users. * slurmctld - do not attempt to relinquish control to self. * openapi/v0.0.37 - Honor kill_on_invalid_dependency as job parameter. * Check max_gres when doing step allocation, fix for regression in rc2. * SPANK plugins are now required to match the current Slurm version, and must be recompiled for each new Slurm release. * node_features/helpers - add ExecTime configuration option. * srun - Fix force termination with -X. * On slurmctld restart set node typed GRES counts correctly. * Fix places where a step wasn't allocated in the slurmctld but wasn't ever removed from the job. * Fix step allocation memory when using --threads-per-core. * Fix step allocations to consume all threads on a core when using threads-per-core. * Add check to validate cpu request on a step if --threads-per-core is given and it is less than what the core on the node has in the allocation. * Fix issue where a step could request more gres than the job had and the step would hang forever. This bug was only introduced in 21.08.0rc2. * Only print \r\n for logging messages on stderr when --pty has been explicitly requested. * Relax check on SPANK plugins to only require Slurm major + minor versions to match. * job_container/tmpfs - delegate handling of /dev/shm to the extern step so new step launches will be attached correctly even after the slurmd process has been restarted. * Limit the wait time in proctrack_g_wait() to UnkillableStepTimeout instead of a hardcoded value of 256 seconds, and limit the delay between tests to a maximum of 32 seconds. * fatal() on start if using job_container/tmpfs without PrologFlags=Contian. * Load bf_when_last_cycle from job state only if protocol version >= 21.08. * Docs - remove man3 section entirely. * Set step memory when using MemPerGPU or DefMemPerGPU. Previously a step's memory was not set even when it requested *-mem-per-gpu and at least one GPU. * Add cli_filter.lua support in configless mode. * Check that the step requests at least as many gres as nodes. * Make job's SLURM_JOB_GPUS print global GPU IDs instead of MIG unique_ids. * Fix miscounting of GPU envs in prolog/epilog if MultipleFiles was used. * Support MIGs in prolog/epilog's CUDA_VISIBLE_DEVICES & co. * Add SLURM_JOB_GPUS back into Prolog; add it to Epilog. * Fix issue where the original executable, not the bcast'd version, was executed with 'srun *-bcast'. * sacct - print '-' header correctly for fields over 53-characters wide. * openapi/dbv0.0.37 - replace "REST" with "Slurm OpenAPI" for plugin_name. * openapi/v0.0.37 - replace "REST" with "Slurm OpenAPI" for plugin_name. * configless - fix segfault on 'scontrol reconfigure'. * Use FREE_NULL_LIST instead of list_destroy. * If we made are running an interactive session we need to force track_steps. * Disable OPOST flag when using --pty to avoid issues with Emac. * Fix issue where extra bonus core was allocated in some situations. * Avoid putting gres with count of 0 on a TRES req/alloc. * Fix memory in requested TRES when --mem-per-gpu is used. * Changed ReqMem field in sacct to match memory from ReqTRES. * Changed --gpu-bind=single: to no longer check core affinity like * -gpu-bind=closest does. This consequently affects --ntasks-per-gpu. * slurmrestd - add v0.0.37 OpenAPI plugin. * slurmrestd/v0.0.37 - rename standard_in -> standard_input. * slurmrestd/v0.0.37 - rename standard_out -> standard_output. * Changed the --format handling for negative field widths (left justified) to apply to the column headers as well as the printed fields. * Add LimitFactor to the QOS. A float that is factored into an associations [Grp|Max]TRES limits. For example, if the LimitFactor is 2, then an association with a GrpTRES of 30 CPUs, would be allowed to allocate 60 CPUs when running under this QOS. * slurmrestd - Pass SLURM_NO_CHANGE_IN_DATA to client as 403 (Not Modified). * slurmrestd/v0.0.37 - Add update_time field to Jobs query to allow clients to only get jobs list based on change timestamp. * Reset job eligible time when job is manually held. * Add DEBUG_FLAG_JAG to improve logging related to job account gathering. * Convert logging in account_gather/common to DEBUG_FLAG_JAG. * Add more logging for jag_common_poll_data() when prec_extra() called. * slurmrestd/v0.0.37 - add API to fetch reservation(s) info. * Catch more errors in task/cgroup initalization and cleanup to avoid allowing jobs to start when cgroups failure to configure correctly. * Fix cgroup ns detection when using containers (e.g. LXC or Docker). * Reset job's next_step_id counter to 0 after being requeued. * Make scontrol exit with non-zero status after failing to delete a partition or reservation. * Make NtasksPerTRES optional in slurm_sprint_job_info(). * slurmrestd/v0.0.37 - Add update_time field to nodes query to allow clients to only get nodes list based on change timestamp. * common/parse_config - catch and propagate return codes when handling a match on a key-value pattern. This implies error codes detected in the handlers are now not ignored and users of _handle_keyvalue_match() can fatal(). * common/hostlist - fix hostlist_delete_nth() xassert() upper bound check. * API change: Removed slurm_kill_job_msg and modified the function signature for slurm_kill_job2. slurm_kill_job2 should be used instead of slurm_kill_job_msg. * Fix non-zero exit code for scontrol ping when all controllers are down. * Enforce a valid configuration for AccountingStorageEnforce in slurm.conf. If the configuration is invalid, then an error message will be printed and the command or daemon (including slurmctld) will not run. * slurmrestd/v0.0.37 - Add update_time field to partitions/reservations query to allow clients to only get the entities list when something changed. * slurmdbd.service - add "After" relationship to all common names for MariaDB to reduce startup delays. * slurmrestd/v0.0.37 - Correct displaying node states that are UNKNOWN. * slurmrestd/v0.0.37 - Add flags to node states. * Fix first job on fresh cluster not being assigned JobId=1 (or FirstJobId). * squeue - make it so --nodelist is sensitive to --clusters. * squeue - do --nodelist node validation in the same order as listing. * Removed AccountingStoreJobComment option. Please update your config to use AccountingStoreFlags=job_comment instead. * AccountingStoreFlags=job_script allows you to store the job's batch script. * AccountingStoreFlags=job_env allows you to store the job's env vars. * Add sacct -o SubmitLine to get the submit line of a job/step. * Removed DefaultStorage{Host,Loc,Pass,Port,Type,User} options. * Fix NtasksPerTRES delimiter from : to = in scontrol show job output. * Removed CacheGroups, CheckpointType, JobCheckpointDir, MemLimitEnforce, SchedulerPort, SchedulerRootFilter options. * Make job accounting queries use consistent timeframes with and w/o jobs. * --cpus-per-task and --threads-per-core now imply --exact. This fixes issues where steps would be allocated the wrong number of CPUs. * configure: the --with option handling has been made consistent across the various optional libraries. Specifying *-with-foo=/path/to/foo will only check that directory for the applicable library (rather than, in some cases, falling back to the default directories), and will always error the build if the library is not found (instead of a mix of error messages and non- fatal warning messages). * configure: replace --with-rmsi_dir option with proper handling for * -with-rsmi=dir. * Pass additional job environment variables to MailProg. * Add SLURM_JOB_WORK_DIR to Prolog, Epilog. * Removed sched/hold plugin. * Fix srun overwriting SLURM_SUBMIT_DIR and SLURM_SUBMIT_HOST when within an existing allocation. * step_ctx code has been removed from the api. * cli_filter/lua, jobcomp/lua, job_submit/lua now load their scripts from the same directory as the slurm.conf file (and thus now will respect changes to the SLURM_CONF environment variable). * SPANK - call slurm_spank_init if defined without slurm_spank_slurmd_exit in slurmd context. * job_container/tmpfs - Remove need for .active file to allow salloc without an interactive step to work. * slurmd - Delay background node registration on every failure up to 128s on startup. * slurmctld - Always notify slurmd that node registration was accepted to avoid slurmd needless attempting to re-register if there is configuration issue. * Put node into "INVAL" state upon registering with an invalid node configuration. Node must register with a valid configuration to continue. * Make --cpu-bind=threads default for --threads-per-core -- cli and env can override. * jobcomp/elasticsearch - Use data_t to serialize data. The plugin now has the JSON-C library as a prerequisite. * scrontab - create the temporary file under the TMPDIR environment variable (if set), otherwise continue to use TmpFS as configured in slurm.conf. * Add LastBusyTime to "scontrol show nodes" and slurmrestd nodes output, which represents the time the node last had jobs on it. * slurmd - allow multiple comma-separated controllers to be specified in configless mode with *-conf-server * sacctmgr - changed column headings to "ParentID" and "ParentName" instead of "Par ID" and "Par Name" respectively. * Perl API - make sure man pages are installed under the --prefix given to configure. * Manually powering down of nodes with scontrol now ignores SuspendExc. * SALLOC_THREADS_PER_CORE and SBATCH_THREADS_PER_CORE have been added as input environment variables for salloc and sbatch, respectively. They do the same thing as *-threads-per-core. * Distinguish queued reboot requests (REBOOT) from issued reboots (REBOOT^). * Set the maximum number of open files per process to 4096 to avoid performance issues when closing the entire range with closeall(). * auth/jwt - add support for RS256 tokens. * Relax reservation purge due to any invalid uid after creation time. * Reject srun that requests both --exclusive and --overlap. * service files - change dependency to network-online rather than just network to ensure DNS and other services are available. * RSMI: Fix incorrect PCI BDF bits. * plugins/cli_filter - Convert to using data_t to serialize JSON. * Fix testing array job after regaining locks in backfill. * Don't display node's comment with "scontrol show nodes" unless set. * Add "Extra" field to node to store extra information other than a comment. * scrontab - Use /tmp instead of TmpFS if TMPDIR is not set. * Add ResumeTimeout, SuspendTimeout and SuspendTime to Partitions. * sreport - change to sorting TopUsage by the --tres option. * slurmrestd - do not run allow operation as SlurmUser/root by default. * Allow map_cpu and mask_cpu for non-whole node allocation. * TaskPluginParam=verbose is now treated as a default. Previously it would be applied regardless of the job specifying a *-cpu-bind. * Add "node_reg_mem_percent" SlurmctldParameter to define percentage of memory nodes are allowed to register with. * Show correct number of SocketsPerBoard in slurmd -C with hwloc2. * Alter sreport's cluster utilization report column name from 'Reserved' to 'Planned' to match the nomenclature of the 'Planned' node. * Add StateComplete format option to sinfo to show base_state+flags. * "scontrol show node" now shows State as base_state+flags instead of shortened state with flags appended. eg. IDLE# *> IDLE+POWERING_UP. Also "POWER" state flag string is "POWERED_DOWN". * slurmd/req - add missing job_env_t's het_job_id initialization off the request in _rpc_{abort,terminate}_job(). This caused problems for Native Cray builds when joining a CNCU job_container plugin with Epilog configured. * Fix joining a CNCU job_container on a Native Cray build before executing the UnkillableStepProgram for a HetJob step. * slurmrestd/v0.0.35 - Plugin has been tagged as deprecated. * srun - Job steps requiring more cores than available to be rejected unless '--overlap' is specificed. * Add bf_node_space_size to SchedulerParameters. * Add scontrol update node state=POWER_DOWN_FORCE and POWER_DOWN_ASAP as new ways to power off and reset especially CLOUD nodes. * Define and separate node power state transitions. Previously a powering down node was in both states, POWERING_OFF and POWERED_OFF. These are now separated. * Create a new process called slurmscriptd which runs PrologSlurmctld and EpilogSlurmctld. This avoids fork() calls from slurmctld, and can avoid performance issues if the slurmctld has a large memory footprint. * Added new Script option to DebugFlags for debugging slurmscriptd. * scrontab - add ability to update crontab from a file or standard input. * scrontab - add ability to set and expand variables. * Pass JSON of job to node mappings to ResumeProgram. * If running steps in an allocation with CR_PACK_NODE or -mpack the srun will only attempt to allocate as much as needed from the allocation instead of always trying to allocate every node in the allocation. * Jobs that request the whole node now check to see if any gres are allocated. * Rename SbcastParameters to BcastParameters. * Make srun sensitive to BcastParameters. * RSMI: Add gres_links_create_empty() and preserve RSMI enumeration order. * GPUs: Use index instead of dev_num for CUDA_VISIBLE_DEVICES * Don't run epilog on nodes if job never launched. * QOS accrue limits only apply to the job QOS, not partition QOS. * Add --gpu-bind=per_task: option, --gpus-per-task will now set this option by default. * Treat any return code from SPANK plugin that is not SLURM_SUCCESS to be an error or rejection. * Print the statistics for extern step adopted processes in sstat. * Fix SLURM_NODE_ALIASES to work for ipv6 node addrs. * Add support for automatically detecting and broadcasting executable shared object dependencies for sbcast and srun *-bcast.- Updated to 20.11.8: * slurmctld - fix erroneous "StepId=CORRUPT" messages in error logs. * Correct the error given when auth plugin fails to pack a credential. * Fix unused-variable compiler warning on FreeBSD in fd_resolve_path(). * acct_gather_filesystem/lustre - only emit collection error once per step. * Add GRES environment variables (e.g., CUDA_VISIBLE_DEVICES) into the interactive step, the same as is done for the batch step. * Fix various potential deadlocks when altering objects in the database dealing with every cluster in the database. * slurmrestd: - handle slurmdbd connection failures without segfaulting. - fix segfault for searches in slurmdb/v0.0.36/jobs. - remove (non-functioning) users query parameter for slurmdb/v0.0.36/jobs from openapi.json - fix segfault in slurmrestd db/jobs with numeric queries - add argv handling for job/submit endpoint. - add description for slurmdb/job endpoint. * slurmrestd/dbv0.0.36: - Fix values dumped in job state/current and job step state. - Correct description for previous state property. * srun: - fix broken node step allocation in a heterogeneous allocation. - leave SLURM_DIST_UNKNOWN as default for --interactive. * Fail step creation if -n is not multiple of --ntasks-per-gpu. * job_container/tmpfs - Fix slowdown on teardown. * Fix problem with SlurmctldProlog where requeued jobs would never launch. * job_container/tmpfs - Fix issue when restarting slurmd where the namespace mount points could disappear. * sacct: - avoid truncating JobId at 34 characters. - fix segfault when printing StepId (or when using --long). * scancel - fix segfault when --wckey filtering option is used. * select/cons_tres - Fix memory leak. * Prevent file descriptor leak in job_container/tmpfs on slurmd restart. * perlapi/libslurmdb - expose tres_req_str to job hash. * scrontab - close and reopen temporary crontab file to deal with editors that do not change the original file, but instead write out then rename a new file. * sstat - fix linking so that it will work when --without-shared-libslurm was used to build Slurm. * Clear allocated cpus for running steps in a job before handling requested nodes on new step. * Don't reject a step if not enough nodes are available. Instead, defer the step until enough nodes are available to satisfy the request. * Don't reject a step if it requests at least one specific node that is already allocated to another step. Instead, defer the step until the requested node(s) become available. * Better handling of --mem=0. * Ignore DefCpuPerGpu when --cpus-per-task given.- Updated to 20.11.7 which fixes CVE-2021-31215 (bsc#1186024) - New features in 20.11.7: * slurmd - handle configless failures gracefully instead of hanging indefinitely. * select/cons_tres - fix Dragonfly topology not selecting nodes in the same leaf switch when it should as well as requests with *-switches option. * Fix issue where certain step requests wouldn't run if the first node in the job allocation was full and there were idle resources on other nodes in the job allocation. * Fix deadlock issue with Slurmctld. * torque/qstat - fix printf error message in output. * When adding associations or wckeys avoid checking multiple times a user or cluster name. * Fix wrong jobacctgather information on a step on multiple nodes due to timeouts sending its the information gathered on its node. * Fix missing xstrdup which could result in slurmctld segfault on array jobs. * Fix security issue in PrologSlurmctld and EpilogSlurmctld by always prepending SPANK_ to all user-set environment variables. CVE-2021-31215. - New features in 20.11.6: * Fix sacct assert with the --qos option. * Use pkg-config --atleast-version instead of --modversion for systemd. * common/fd - fix getsockopt() call in fd_get_socket_error(). * Properly handle the return from fd_get_socket_error() in _conn_readable(). * cons_res - Fix issue where running jobs were not taken into consideration when creating a reservation. * Avoid a deadlock between job_list for_each and assoc QOS_LOCK. * Fix TRESRunMins usage for partition qos on restart/reconfig. * Fix printing of number of tasks on a completed job that didn't request tasks. * Fix updating GrpTRESRunMins when decrementing job time is bigger than it. * Make it so we handle multithreaded allocations correctly when doing - -exclusive or --core-spec allocations. * Fix incorrect round-up division in _pick_step_cores * Use appropriate math to adjust cpu counts when --ntasks-per-core=1. * cons_tres - Fix consideration of power downed nodes. * cons_tres - Fix DefCpuPerGPU, increase cpus-per-task to match with gpus-per-task * cpus-per-gpu. * Fix under-cpu memory auto-adjustment when MaxMemPerCPU is set. * Make it possible to override CR_CORE_DEFAULT_DIST_BLOCK. * Perl API - fix retrieving/storing of slurm_step_id_t in job_step_info_t. * Recover state of burst buffers when slurmctld is restarted to avoid skipping burst buffer stages. * Fix race condition in burst buffer plugin which caused a burst buffer in stage-in to not get state saved if slurmctld stopped. * auth/jwt - print an error if jwt_file= has not been set in slurmdbd. * Fix RESV_DEL_HOLD not being a valid state when using squeue --states. * Add missing squeue selectable states in valid states error message. * Fix scheduling last array task multiple times on error, causing segfault. * Fix issue where a step could be allocated more memory than the job when dealing with --mem-per-cpu and --threads-per-core. * Fix removing qos from assoc with -= can lead to assoc with no qos * auth/jwt - fix segfault on invalid credential in slurmdbd due to missing validate_slurm_user() function in context. * Fix single Port= not being applied to range of nodes in slurm.conf * Fix Jobs not requesting a tres are not starting because of that tres limit. * acct_gather_energy/rapl - fix AveWatts calculation. * job_container/tmpfs - Fix issues with cleanup and slurmd restarting on running jobs.- Ship REST API version and auth plugins with slurmrestd. - Add YAML support for REST API to build (bsc#1185603).- Udpate to 20.11.5: - New features: * New job_container/tmpfs plugin developed by NERSC that can be used to create per-job filesystem namespaces. Documentaiion and configuration can be found in the respecting man page. - Bug fixes: * Fix main scheduler bug where bf_hetjob_prio truncates SchedulerParameters. * Fix sacct not displaying UserCPU, SystemCPU and TotalCPU for large times. * scrontab - fix to return the correct index for a bad #SCRON option. * scrontab - fix memory leak when invalid option found in #SCRON line. * Add errno for when a user requests multiple partitions and they are using partition based associations. * Fix issue where a job could run in a wrong partition when using EnforcePartLimits=any and partition based associations. * Remove possible deadlock when adding associations/wckeys in multiple threads. * When using PrologFlags=alloc make sure the correct Slurm version is set in the credential. * When sending a job a warning signal make sure we always send SIGCONT beforehand. * Fix issue where a batch job would continue running if a prolog failed on a node that wasn't the batch host and requeuing was disabled. * Fix issue where sometimes salloc/srun wouldn't get a message about a prolog failure in the job's stdout. * Requeue or kill job on a prolog failure when PrologFlags is not set. * Fix race condition causing node reboots to get requeued before ResumeTimeout expires. * Preserve node boot_req_time on reconfigure. * Preserve node power_save_req_time on reconfigure. * Fix node reboots being queued and issued multiple times and preventing the reboot to time out. * Fix run_command to exit correctly if track_script kills the calling thread. * Only requeue a job when the PrologSlurmctld returns nonzero. * When a job is signaled with SIGKILL make sure we flush all prologs/setup scripts. * Handle burst buffer scripts if the job is canceled while stage_in is happening. * When shutting down the slurmctld make note to ignore error message when we have to kill a prolog/setup script we are tracking. * scrontab - add support for the --open-mode option. * acct_gather_profile/influxdb - avoid segfault on plugin shutdown if setup has not completed successfully. * Reduce delay in starting salloc allocations when running with prologs. * Alter AllocNodes check to work if the allocating node's domain doesn't match the slurmctld's. This restores the pre*20.11 behavior. * Fix slurmctld segfault if jobs from a prior version had the now-removed INVALID_DEPEND state flag set and were allowed to run in 20.11. * Add job_container/tmpfs plugin to give a method to provide a private /tmp per job. * Set the correct core affinity when using AutoDetect. * slurmrestd - mark "environment" as required for job submissions in schema.- Udpate to 20.11.04 * Fix node selection for advanced reservations with features. * mpi/pmix: Handle pipe failure better when using ucx. * mpi/pmix: include PMIX_NODEID for each process entry. * Fix job getting rejected after being requeued on same node that died. * job_submit/lua - add "network" field. * Fix situations when a reoccuring reservation could erroneously skip a period. * Ensure that a reservations [pro|epi]log are ran on reoccuring reservations. * Fix threads-per-core memory allocation issue when using CR_CPU_MEMORY. * Fix scheduling issue with --gpus. * Fix gpu allocations that request --cpus-per-task. * mpi/pmix: fixed print messages for all PMIXP_* macros * Add mapping for XCPU to --signal option. * Fix regression in 20.11 that prevented a full pass of the main scheduler from ever executing. * Work around a glibc bug in which "0" is incorrectly printed as "nan" which will result in corrupted association state on restart. * Fix regression in 20.11 which made slurmd incorrectly attempt to find the parent slurmd address when not applicable and send incorrect reverse*tree info to the slurmstepd. * Fix cgroup ns detection when using containers (e.g. LXC or Docker). * scrontab - change temporary file handling to work with emacs. - Removed check-for-lipmix.so.MAJOR.patch - Added: load-pmix-major-version.patch- Update to 20.11.03 - This release includes a major functional change to how job step launch is handled compared to the previous 20.11 releases. This affects srun as well as MPI stacks - such as Open MPI - which may use srun internally as part of the process launch. One of the changes made in the Slurm 20.11 release was to the semantics for job steps launched through the 'srun' command. This also inadvertently impacts many MPI releases that use srun underneath their own mpiexec/mpirun command. For 20.11.{0,1,2} releases, the default behavior for srun was changed such that each step was allocated exactly what was requested by the options given to srun, and did not have access to all resources assigned to the job on the node by default. This change was equivalent to Slurm setting the --exclusive option by default on all job steps. Job steps desiring all resources on the node needed to explicitly request them through the new '--whole' option. In the 20.11.3 release, we have reverted to the 20.02 and older behavior of assigning all resources on a node to the job step by default. This reversion is a major behavioral change which we would not generally do on a maintenance release, but is being done in the interest of restoring compatibility with the large number of existing Open MPI (and other MPI flavors) and job scripts that exist in production, and to remove what has proven to be a significant hurdle in moving to the new release. Please note that one change to step launch remains - by default, in 20.11 steps are no longer permitted to overlap on the resources they have been assigned. If that behavior is desired, all steps must explicitly opt-in through the newly added '--overlap' option. Further details and a full explanation of the issue can be found at: https://bugs.schedmd.com/show_bug.cgi?id=10383#c63 - Other changes from 20.11.03 * Fix segfault when parsing bad "#SBATCH hetjob" directive. * Allow countless gpu:srun, sbatch->srun sequence. * Reject job credential if non-superuser sets the LAUNCH_NO_ALLOC flag. * Make it so srun --no-allocate works again. * jobacct_gather/linux - Don't count memory on tasks that have already finished. * Fix 19.05/20.02 batch steps talking with a 20.11 slurmctld. * jobacct_gather/common - Do not process jobacct's with same taskid when calling prec_extra. * Cleanup all tracked jobacct tasks when extern step child process finishes. * slurmrestd/dbv0.0.36 - Correct structure of dbv0.0.36_tres_list. * Fix regression causing task/affinity and task/cgroup to be out of sync when configured ThreadsPerCore is different than the physical threads per core. * Fix situation when --gpus is given but not max nodes (-N1-1) in a job allocation. * Interactive step - ignore cpu bind and mem bind options, and do not set the associated environment variables which lead to unexpected behavior from srun commands launched within the interactive step. * Handle exit code from pipe when using UCX with PMIx.- Fix fallout introduced by: "Replace '%service_del_postun -n' with '%service_del_postun_without_restart'" for older Leap/SLE versions.- Fix Provides:/Conflicts: for libnss_slurm (bsc#1180700).- Add support for configuration files from external plugins. While built-in plugins have their configuration added in slurm.conf, external SPANK plugins add their configuration to plugstack.conf To allow packaging easily spank plugins, their configuration files should be added independently at /etc/spack/plugstack.conf.d and plugstack.conf should be left with an oneliner including all the files under /etc/spack/plugstack.conf.d- Update to 20.11.02 * Fix older versions of sacct not working with 20.11. * Fix slurmctld crash when using a pre-20.11 srun in a job allocation. * Correct logic problem in _validate_user_access. * Fix libpmi to initialize Slurm configuration correctly. - Update to 20.11.01 * Fix spelling of "overcomited" to "overcomitted" in sreport's cluster utilization report. * Silence debug message about shutting down backup controllers if none are configured. * Don't create interactive srun until PrologSlurmctld is done. * Fix fd symlink path resolution. * Fix slurmctld segfault on subnode reservation restore after node configuration change. * Fix resource allocation response message environment allocation size. * Ensure that details->env_sup is NULL terminated. * select/cray_aries - Correctly remove jobs/steps from blades using NPC. * cons_tres - Avoid max_node_gres when entire node is allocated with - -ntasks-per-gpu. * Allow NULL arg to data_get_type(). * In sreport have usage for a reservation contain all jobs that ran in the reservation instead of just the ones that ran in the time specified. This matches the report for the reservation is not truncated for a time period. * Fix issue with sending wrong batch step id to a < 20.11 slurmd. * Add a job's alloc_node to lua for job modification and completion. * Fix regression getting a slurmdbd connection through the perl API. * Stop the extern step terminate monitor right after proctrack_g_wait(). * Fix removing the normalized priority of assocs. * slurmrestd/v0.0.36 - Use correct name for partition field: "min nodes per job" -"min_nodes_per_job". * slurmrestd/v0.0.36 - Add node comment field. * Fix regression marking cloud nodes as "unexpectedly rebooted" after multiple boots. * Fix slurmctld segfault in _slurm_rpc_job_step_create(). * slurmrestd/v0.0.36 - Filter node states against NODE_STATE_BASE to avoid the extended states all being reported as "invalid". * Fix race that can prevent the prolog for a requeued job from running. * cli_filter - add "type" to readily distinguish between the CLI command in use. * smail - reduce sleep before seff to 5 seconds. * Ensure SPANK prolog and epilog run without an explicit PlugStackConfig. * Disable MySQL automatic reconnection. * Fix allowing "b" after memory unit suffixes. * Fix slurmctld segfault with reservations without licenses. * Due to internal restructuring ahead of the 20.11 release, applications calling libslurm MUST call slurm_init(NULL) before any API calls. Otherwise the API call is likely to fail due to libslurm's internal configuration not being available. * slurm.spec - allow custom paths for PMIx and UCX install locations. * Use rpath if enabled when testing for Mellanox's UCX libraries. * slurmrestd/dbv0.0.36 - Change user query for associations to optional. * slurmrestd/dbv0.0.36 - Change account query for associations to optional. * mpi/pmix - change the error handler error message to be more useful. * Add missing connection in acct_storage_p_{clear_stats, reconfig, shutdown}. * Perl API - fix issue when running in configless mode. * nss_slurm - avoid deadlock when stray sockets are found. * Display correct value for ScronParameters in 'scontrol show config'- Update to version 20.11.0 Slurm 20.11 includes a number of new features including: * Overhaul of the job step management and launch code, alongside improved GPU task placement support. * A new "Interactive Step" mode of operation for salloc. * A new "scrontab" command that can be used to submit and manage periodically repeating jobs. * IPv6 support. * Changes to the reservation logic, with new options allowing users to delete reservations, allowing admins to skip the next occurance of a repeated reservation, and allowing for a job to be submitted and eligible to run within multiple reservations. * Dynamic Future Nodes - automatically associate a dynamically provisioned (or "cloud") node against a NodeName definition with matching hardware. * An experimental new RPC queuing mode for slurmctld to reduce thread contention on heavily loaded clusters. * SlurmDBD integration with the Slurm REST API. Also check https://github.com/SchedMD/slurm/blob/slurm-20-11-0-1/RELEASE_NOTES- Updated to 20.02.6, addresses two security fixes: * PMIx - fix potential buffer overflows from use of unpackmem(). CVE-2020-27745 (bsc#1178890) * X11 forwarding - fix potential leak of the magic cookie when sent as an argument to the xauth command. CVE-2020-27746 (bsc#1178891) - And many other bugfixes, full log and details available at: * https://lists.schedmd.com/pipermail/slurm-announce/2020/000045.html- Replace '%service_del_postun -n' with '%service_del_postun_without_restart' '-n' is deprecated and will be removed in the future.- Updated to 20.02.5, changes: * Fix leak of TRESRunMins when job time is changed with --time-min * pam_slurm - explicitly initialize slurm config to support configless mode. * scontrol - Fix exit code when creating/updating reservations with wrong Flags. * When a GRES has a no_consume flag, report 0 for allocated. * Fix cgroup cleanup by jobacct_gather/cgroup. * When creating reservations/jobs don't allow counts on a feature unless using an XOR. * Improve number of boards discovery * Fix updating a reservation NodeCnt on a zero-count reservation. * slurmrestd - provide an explicit error messages when PSK auth fails. * cons_tres - fix job requesting single gres per-node getting two or more nodes with less CPUs than requested per-task. * cons_tres - fix calculation of cores when using gres and cpus-per-task. * cons_tres - fix job not getting access to socket without GPU or with less than --gpus-per-socket when not enough cpus available on required socket and not using --gres-flags=enforce binding. * Fix HDF5 type version build error. * Fix creation of CoreCnt only reservations when the first node isn't available. * Fix wrong DBD Agent queue size in sdiag when using accounting_storage/none. * Improve job constraints XOR option logic. * Fix preemption of hetjobs when needed nodes not in leader component. * Fix wrong bit_or() messing potential preemptor jobs node bitmap, causing bad node deallocations and even allocation of nodes from other partitions. * Fix double-deallocation of preempted non-leader hetjob components. * slurmdbd - prevent truncation of the step nodelists over 4095. * Fix nodes remaining in drain state state after rebooting with ASAP option. - changes from 20.02.4: * srun - suppress job step creation warning message when waiting on PrologSlurmctld. * slurmrestd - fix incorrect return values in data_list_for_each() functions. * mpi/pmix - fix issue where HetJobs could fail to launch. * slurmrestd - set content-type header in responses. * Fix cons_res GRES overallocation for --gres-flags=disable-binding. * Fix cons_res incorrectly filtering cores with respect to GRES locality for - -gres-flags=disable-binding requests. * Fix regression where a dependency on multiple jobs in a single array using underscores would only add the first job. * slurmrestd - fix corrupted output due to incorrect use of memcpy(). * slurmrestd - address a number of minor Coverity warnings. * Handle retry failure when slurmstepd is communicating with srun correctly. * Fix jobacct_gather possibly duplicate stats when _is_a_lwp error shows up. * Fix tasks binding to GRES which are closest to the allocated CPUs. * Fix AMD GPU ROCM 3.5 support. * Fix handling of job arrays in sacct when querying specific steps. * slurmrestd - avoid fallback to local socket authentication if JWT authentication is ill-formed. * slurmrestd - restrict ability of requests to use different authentication plugins. * slurmrestd - unlink named unix sockets before closing. * slurmrestd - fix invalid formatting in openapi.json. * Fix batch jobs stuck in CF state on FrontEnd mode. * Add a separate explicit error message when rejecting changes to active node features. * cons_common/job_test - fix slurmctld SIGABRT due to double-free. * Fix updating reservations to set the duration correctly if updating the start time. * Fix update reservation to promiscuous mode. * Fix override of job tasks count to max when ntasks-per-node present. * Fix min CPUs per node not being at least CPUs per task requested. * Fix CPUs allocated to match CPUs requested when requesting GRES and threads per core equal to one. * Fix NodeName config parsing with Boards and without CPUs. * Ensure SLURM_JOB_USER and SLURM_JOB_UID are set in SrunProlog/Epilog. * Fix error messages for certain invalid salloc/sbatch/srun options. * pmi2 - clean up sockets at step termination. * Fix 'scontrol hold' to work with 'JobName'. * sbatch - handle --uid/--gid in #SBATCH directives properly. * Fix race condition in job termination on slurmd. * Print specific error messages if trying to run use certain priority/multifactor factors that cannot work without SlurmDBD. * Avoid partial GRES allocation when --gpus-per-job is not satisfied. * Cray - Avoid referencing a variable outside of it's correct scope when dealing with creating steps within a het job. * slurmrestd - correctly handle larger addresses from accept(). * Avoid freeing wrong pointer with SlurmctldParameters=max_dbd_msg_action with another option after that. * Restore MCS label when suspended job is resumed. * Fix insufficient lock levels. * slurmrestd - use errno from job submission. * Fix "user" filter for sacctmgr show transactions. * Fix preemption logic. * Fix no_consume GRES for exclusive (whole node) requests. * Fix regression in 20.02 that caused an infinite loop in slurmctld when requesting --distribution=plane for the job. * Fix parsing of the --distribution option. * Add CONF READ_LOCK to _handle_fed_send_job_sync. * prep/script - always call slurmctld PrEp callback in _run_script(). * Fix node estimation for jobs that use GPUs or --cpus-per-task. * Fix jobcomp, job_submit and cli_filter Lua implementation plugins causing slurmctld and/or job submission CLI tools segfaults due to bad return handling when the respective Lua script failed to load. * Fix propagation of gpu options through hetjob components. * Add SLURM_CLUSTERS environment variable to scancel. * Fix packing/unpacking of "unlinked" jobs. * Connect slurmstepd's stderr to srun for steps launched with --pty. * Handle MPS correctly when doing exclusive allocations. * slurmrestd - fix compiling against libhttpparser in a non-default path. * slurmrestd - avoid compilation issues with libhttpparser < 2.6. * Fix compile issues when compiling slurmrestd without --enable-debug. * Reset idle time on a reservation that is getting purged. * Fix reoccurring reservations that have Purge_comp= to keep correct duration if they are purged. * scontrol - changed the "PROMISCUOUS" flag to "MAGNETIC" * Early return from epilog_set_env in case of no_consume. * Fix cons_common/job_test start time discovery logic to prevent skewed results between "will run test" executions. * Ensure TRESRunMins limits are maintained during "scontrol reconfigure". * Improve error message when host lookup fails. - Refresh patch: pam_slurm-Initialize-arrays-and-pass-sizes.patch- Add support for openPMIx also for Leap/SLE 15.0/1 (bsc#1173805). - Do not run %check on SLE-12-SP2: Some incompatibility in tcl makes this fail. - Remove unneeded build dependency to postgresql-devel. - Disable build on s390 (requires 64bit).- Bring QA to the package build: add %%check stage. - Remove cruft that isn't needed any longer. - Add 'ghosted' run-file. - Add rpmlint filter to handle issues with library packages for Leap and enterprise upgrade versions.- Updated to 20.02.3 which fixes CVE-2020-12693 (bsc#1172004). - Other changes are: * Factor in ntasks-per-core=1 with cons_tres. * Fix formatting in error message in cons_tres. * Fix calling stat on a NULL variable. * Fix minor memory leak when using reservations with flags=first_cores. * Fix gpu bind issue when CPUs=Cores and ThreadsPerCore > 1 on a node. * Fix --mem-per-gpu for heterogenous --gres requests. * Fix slurmctld load order in load_all_part_state(). * Fix race condition not finding jobacct gather task cgroup entry. * Suppress error message when selecting nodes on disjoint topologies. * Improve performance of _pack_default_job_details() with large number of job * arguments. * Fix archive loading previous to 17.11 jobs per-node req_mem. * Fix regresion validating that --gpus-per-socket requires --sockets-per-node * for steps. Should only validate allocation requests. * error() instead of fatal() when parsing an invalid hostlist. * nss_slurm - fix potential deadlock in slurmstepd on overloaded systems. * cons_tres - fix --gres-flags=enforce-binding and related --cpus-per-gres. * cons_tres - Allocate lowest numbered cores when filtering cores with gres. * Fix getting system counts for named GRES/TRES. * MySQL - Fix for handing typed GRES for association rollups. * Fix step allocations when tasks_per_core > 1. * Fix allocating more GRES than requested when asking for multiple GRES types.- Treat libnss_slurm like any other package: add version string to upgrade package.- Updated to 20.02.1 with following changes" * Improve job state reason for jobs hitting partition_job_depth. * Speed up testing of singleton dependencies. * Fix negative loop bound in cons_tres. * srun - capture the MPI plugin return code from mpi_hook_client_fini() and use as final return code for step failure. * Fix segfault in cli_filter/lua. * Fix --gpu-bind=map_gpu reusability if tasks > elements. * Make sure config_flags on a gres are sent to the slurmctld on node registration. * Prolog/Epilog - Fix missing GPU information. * Fix segfault when using config parser for expanded lines. * Fix bit overlap test function. * Don't accrue time if job begin time is in the future. * Remove accrue time when updating a job start/eligible time to the future. * Fix regression in 20.02.0 that broke --depend=expand. * Reset begin time on job release if it's not in the future. * Fix for recovering burst buffers when using high-availability. * Fix invalid read due to freeing an incorrectly allocated env array. * Update slurmctld -i message to warn about losing data. * Fix scontrol cancel_reboot so it clears the DRAIN flag and node reason for a pending ASAP reboot.- Remove legacy_cray: with 20.02 the special treatment for cray-specific plugins on SLE version prior to 15SP2 is no longer required.- slurm-plugins will now also require pmix not only libpmix (bsc#1164326)- Removed autopatch as it doesn't work for the SLE-11-SP4 build.- Disable %arm builds as this is no longer supported.- pmix searches now also for libpmix.so.2 so that there is no dependency for devel package (bsc#1164386) * added patch file check-for-lipmix.so.MAJOR.patch * reworded patch file Remove-rpath-from-build.patch to use %autopatch- Update to version 20.02.0 (jsc#SLE-8491) * Fix minor memory leak in slurmd on reconfig. * Fix invalid ptr reference when rolling up data in the database. * Change shtml2html.py to require python3 for RHEL8 support, and match man2html.py. * slurm.spec - override "hardening" linker flags to ensure RHEL8 builds in a usable manner. * Fix type mismatches in the perl API. * Prevent use of uninitialized slurmctld_diag_stats. * Fixed various Coverity issues. * Only show warning about root-less topology in daemons. * Fix accounting of jobs in IGNORE_JOBS reservations. * Fix issue with batch steps state not loading correctly when upgrading from 19.05. * Deprecate max_depend_depth in SchedulerParameters and move it to DependencyParameters. * Silence erroneous error on slurmctld upgrade when loading federation state. * Break infinite loop in cons_tres dealing with incorrect tasks per tres request resulting in slurmctld hang. * Improve handling of --gpus-per-task to make sure appropriate number of GPUs is assigned to job. * Fix seg fault on cons_res when requesting --spread-job. - Move to python3 for everything but SLE-11-SP4 * For SLE-11-SP4 add a workaround to handle a python3 script (python2.7 compliant).- Add explicit version dependency to libpmix as well. 'slurm-devel' has a tight version dependency on libpmix - allowing multiple libpmix versions in one package repository is therefore essential.- Update to version 20.02.0-rc1 * sbatch - fix segfault when no newline at the end of a burst buffer file. * Change scancel to only check job's base state when matching -t options. * Save job dependency list in state files. * cons_tres - allow jobs to be run on systems with root-less topologies. * Restore pre-20.02pre1 PrologSlurmctld synchonization behavior to avoid various race conditions, and ensure proper batch job launch. * Add new slurmrestd command/daemon which implements the Slurm REST API.- Update to version 20.02.0-0pre1, highlights are Highlights: * Exclusive behavior of a node includes all GRES on a node as well as the cpus. * Use python3 instead of python for internal build/test scripts. The slurm.spec file has been updated to depend on python3 as well. * Added new NodeSet configuration option to help simplify partition configuration sections for heterogeneous / condo*style clusters. * Added slurm.conf option MaxDBDMsgs to control how many messages will be stored in the slurmctld before throwing them away when the slurmdbd is down. * The checkpoint plugin interface and all associated API calls have been removed. * slurm_init_job_desc_msg() initializes mail_type as uint16_t. This allows mail_type to be set to NONE with scontrol. * Add new slurm_spank_log() function to print messages back to the user from within a SPANK plugin without prepending "error: " from slurm_error(). * Enforce having partition name and nodelist=ALL when creating reservations with flags=PART_NODES. * SPANK - removed never-implemented slurm_spank_slurmd_init() interface. This hook has always been accessible through slurm_spank_init() in the S_CTX_SLURMD context instead. * sbcast - add new BcastAddr option to NodeName lines to allow sbcast traffic to flow over an alternate network path. * Added auth/jwt plugin, and 'scontrol token' subcommand. PMIx - improve * performance of proc map generation. Deprecate kill_invalid_depend in * SchedulerParameters and move it to a new option called DependencyParameters. * Enable job dependencies for any job on any cluster in the same federation. * Allow clusters to be added automatically to db at startup of ctld. Add * AccountingStorageExternalHost slurm.conf parameter. The * "ConditionPathExists" condition in slurmd.service has been disabled by default to permit simpler installation of a "configless" Slurm cluster. * In SchedulerParameters remove deprecated max_job_bf and replace with bf_max_job_test. * Disable sbatch, salloc, srun --reboot for non-admins. SPANK - added support * for S_JOB_GID in the job script context with spank_get_item(). * Prolog/Epilog - add SLURM_JOB_GID environment variable. configuration file changes: * The mpi/openmpi plugin has been removed as it does nothing. MpiDefault=openmpi will be translated to the functionally-equivalent MpiDefault=none. command changes (see man pages for details) * Display StepId=.batch instead of StepId=.4294967294 in output of "scontrol show step". (slurm_sprint_job_step_info()) * MPMD in srun will now defer PATH resolution for the commands to launch to slurmstepd. Previously it would handle resolution client*side, but with a non*standard approach that walked PATH in reverse. * squeue - added "--me" option, equivalent to --user=$USER. * The LicensesUsed line has been removed from 'scontrol show config'. Please see the 'scontrol show licenses' command as an alternative. * sbatch - adjusted backoff times for "--wait" option to reduce load on slurmctld. This results in a steady*state delay of 32s between queries, instead of the prior 10s delay. - Removed following deprecated patches: * removed patch slurmctld-rerun-agent_init-when-backup-controller-takes-over.patch * removed patch split-xdaemon-in-xdaemon_init-and-xdaemon_finish-for.patch * removed patch slurmctld-uses-xdaemon_-for-systemd.patch * removed patch slurmd-uses-xdaemon_-for-systemd.patch * removed patch slurmdbd-uses-xdaemon_-for-systemd.patch * removed patch slurmsmwd-uses-xdaemon_-for-systemd.patch * removed patch removed-deprecated-xdaemon.patch- standard slurm.conf uses now also SlurmctldHost on all build targets (bsc#1162377)- Fix a missed systemd_requires -> systemd_ordering conversion.- Remove special OHPC compatibility macro: these settings should be applied univerally. - Add a Recommends for mariadb to slurm-slurmdbd: it is recommened to run the database on the same machine as the daemon.- BuildRequire pkgconfig(systemd) instead of systemd: allow OBS to shortcut through the -mini flavors. - Use systemd_ordering instead of systemd_requires: systemd is never a strict requirement; but in case the system is scheduled for installation together with systemd, we want systemd to be installed prior to slurm.- start slurmdbd after mariadb (bsc#1161716)- Fix base_ver for SLE 15 SP2.- Update to version 19.05.5 (jsc#SLE-8491) * Check %docdir/NEWS for details. * Includes security fixes CVE-2019-19727, CVE-2019-19728, CVE-2019-12838. * Disable i586 builds as this is no longer supported. * Create libnss_slurm package to support user and group resolution thru slurmstepd. * slurm-2.4.4-rpath.patch -> Remove-rpath-from-build.patch Obsoleted: - pam_slurm_adopt-avoid-running-outside-of-the-sshd-PA.patch - pam_slurm_adopt-send_user_msg-don-t-copy-undefined-d.patch - pam_slurm_adopt-use-uid-to-determine-whether-root-is.patch- Deprecate "ControlMachine" only for SLURM version upgrades and products newer than 1501. This ensures that the original setting is retained for the SLURM version shipped origianlly with SLE-15-SP1 or Leap 15.1.- Update to v18.08.9 for fixing CVE-2019-19728 (bsc#1159692). * Wrap END_TIMER{,2,3} macro definition in "do {} while (0)" block. * Make sview work with glib2 v2.62. * Make Slurm compile on linux after sys/sysctl.h was deprecated. * Install slurmdbd.conf.example with 0600 permissions to encourage secure use. CVE-2019-19727. * srun - do not continue with job launch if --uid fails. CVE-2019-19728.- added pmix support jsc#SLE-10800- Use --with-shared-libslurm to build slurm binaries using libslurm. - Make libslurm depend on slurm-config.- Fix ownership of /var/spool/slurm on new installations and upgrade (boo#1158696).- Fix permissions of slurmdbd.conf (bsc#1155784, CVE-2019-19727). - Fix %posttrans macro _res_update to cope with added newline (bsc#1153259).- Add package slurm-webdoc which sets up a web server to provide the documentation for the version shipped.- Move srun from 'slurm' to 'slurm-node': srun is required on the nodes as well so sbatch will work. 'slurm-node' is a requirement when 'slurm' is installed (bsc#1153095).- Set %base_ver for SLE-15-SP2 to 18.08 (for now).- Edit sample configuration to deprecate "ControlMachine", "ControlAddr", "BackupController" and "BackupAddr" in favor "SlurmctldHost".- Fix logic of slurm-munge recommends: slurm-munge requires munge already, so if we have munge installed we recommend slurm-munge as the authentication when installing slurm or slurm-node.- Fix build for SLE-11-SP4 and older.- added cray depend libraries to seperate package, as they are now built, since json is enabled- Updated to 18.08.8 for fixing (CVE-2019-12838, bsc#1140709, jsc#SLE-7341, jsc#SLE-7342) * Update "xauth list" to use the same 10000ms timeout as the other xauth commands. * Fix issue in gres code to handle a gres cnt of 0. * Don't purge jobs if backfill is running. * Verify job is pending add/removing accrual time. * Don't abort when the job doesn't have an association that was removed before the job was able to make it to the database. * Set state_reason if select_nodes() fails job for QOS or Account. * Avoid seg_fault on referencing association without a valid_qos bitmap. * If Association/QOS is removed on a pending job set that job as ineligible. * When changing a jobs account/qos always make sure you remove the old limits. * Don't reset a FAIL_QOS or FAIL_ACCOUNT job reason until the qos or account changed. * Restore "sreport -T ALL" functionality. * Correctly typecast signals being sent through the api. * Properly initialize structures throughout Slurm. * Sync "numtask" squeue format option for jobs and steps to "numtasks". * Fix sacct -PD to avoid CA before start jobs. * Fix potential deadlock with backup slurmctld. * Fixed issue with jobs not appearing in sacct after dependency satisfied. * Fix showing non-eligible jobs when asking with -j and not -s. * Fix issue with backfill scheduler scheduling tasks of an array when not the head job. * accounting_storage/mysql - fix SIGABRT in the archive load logic. * accounting_storage/mysql - fix memory leak in the archive load logic. * Limit records per single SQL statement when loading archived data. * Fix unnecessary reloading of job submit plugins. * Allow job submit plugins to be turned on/off with a reconfigure. * Fix segfault when loading/unloading Lua job submit plugin multiple times. * Fix printing duplicate error messages of jobs rejected by job submit plugin. * Fix printing of job submit plugin messages of het jobs without pack id. * Fix memory leak in group_cache.c * Fix jobs stuck from FedJobLock when requeueing in a federation * Fix requeueing job in a federation of clusters with differing associations * sacctmgr - free memory before exiting in 'sacctmgr show runaway'. * Fix seff showing memory overflow when steps tres mem usage is 0. * Upon archive file name collision, create new archive file instead of overwriting the old one to prevent lost records. * Limit archive files to 50000 records per file so that archiving large databases will succeed. * Remove stray newlines in SPANK plugin error messages. * Fix archive loading events. * In select/cons_res: Only allocate 1 CPU per node with the --overcommit and - -nodelist options. * Fix main scheduler from potentially not running through whole queue. * cons_res/job_test - prevent a job from overallocating a node memory. * cons_res/job_test - fix to consider a node's current allocated memory when testing a job's memory request. * Fix issue where multi-node job steps on cloud nodes wouldn't finish cleaning up until the end of the job (rather than the end of the step). * Fix issue with a 17.11 sbcast call to a 18.08 daemon. * Add new job bit_flags of JOB_DEPENDENT. * Make it so dependent jobs reset the AccrueTime and do not count against any AccrueTime limits. * Fix sacctmgr --parsable2 output for reservations and tres. * Prevent slurmctld from potential segfault after job_start_data() called for completing job. * Fix jobs getting on nodes with "scontrol reboot asap". * Record node reboot events to database. * Fix node reboot failure message getting to event table. * Don't write "(null)" to event table when no event reason exists. * Fix minor memory leak when clearing runaway jobs. * Avoid flooding slurmctld and logging when prolog complete RPC errors occur. * Fix GCC 9 compiler warnings. * Fix seff human readable memory string for values below a megabyte. * Fix dump/load of rejected heterogeneous jobs. * For heterogeneous jobs, do not count the each component against the QOS or association job limit multiple times. * slurmdbd - avoid reservation flag column corruption with the use of newer flags, instead preserve the older flag fields that we can still fit in the smallint field, and discard the rest. * Fix security issue in accounting_storage/mysql plugin on archive file loads by always escaping strings within the slurmdbd. CVE-2019-12838.- Fix build dependency issue around libibmad-devel introduced in SLE-12-SP4.- Add BuildRequires to address warnings during build: * for libcurl-devel, libssh2-devel and rrdtool-devel * for libjson-c-devel and liblz4-devel where available, disable these with --without-json and --without-lz4 where not. * disable DataWarp (--without-datawarp).- Update SLURM to 18.08.7: * Set debug statement to debug2 to avoid benign error messages. * Add SchedulerParameters option of bf_hetjob_immediate to attempt to start a heterogeneous job as soon as all of its components are determined able to do so. * Fix underflow causing decay thread to exit. * Fix main scheduler not considering hetjobs when building the job queue. * Fix regression for sacct to display old jobs without a start time. * Fix setting correct number of gres topology bits. * Update hetjobs pending state reason when appropriate. * Fix accounting_storage/filetxt's understanding of TRES. * Set Accrue time when not enforcing limits. * Fix srun segfault when requesting a hetjob with test_exec or bcast options. * Hide multipart priorities log message behind Priority debug flag. * sched/backfill - Make hetjobs sensitive to bf_max_job_start. * Fix slurmctld segfault due to job's partition pointer NULL dereference. * Fix issue with OR'ed job dependencies. * Add new job's bit_flags of INVALID_DEPEND to prevent rebuilding a job's dependency string when it has at least one invalid and purged dependency. * Promote federation unsynced siblings log message from debug to info. * burst_buffer/cray - fix slurmctld SIGABRT due to illegal read/writes. * burst_buffer/cray - fix memory leak due to unfreed job script content. * node_features/knl_cray - fix script_argv use-after-free. * burst_buffer/cray - fix script_argv use-after-free. * Fix invalid reads of size 1 due to non null-terminated string reads. * Add extra debug2 logs to identify why BadConstraints reason is set.- Do not build hdf5 support where not available.- Add support for version updates on SLE: Update packages to a later version than the version supported originally on SLE will receive a version string in their package name.- added the hdf5 job data gathering plugin- Add backward compatibility with SLE-11 SP4- Update to version 18.08.05-2: This version obsoletes: Fix-contrib-perlapi-to-build-with-the-fix-for-CVE-2019-6438-750cc23ed.patch - Fix spec file for older SUSE versions.- Update to version 18.08.05: * Add mitigation for a potential heap overflow on 32-bit systems in xmalloc. (CVE-2019-6438, bsc#1123304). * Other fixes: + Backfill - If a job has a time_limit guess the end time of a job better if OverTimeLimit is Unlimited. + Fix "sacctmgr show events event=cluster" + Fix sacctmgr show runawayjobs from sibling cluster + Avoid bit offset of -1 in call to bit_nclear(). + Insure that "hbm" is a configured GresType on knl systems. + Fix NodeFeaturesPlugins=node_features/knl_generic to allow other gres other than knl. + cons_res: Prevent overflow on multiply. + Better debug for bad values in gres.conf. + Fix double accounting of energy at end of job. + Read gres.conf for cloud nodes on slurmctld. + Don't assume the first node of a job is the batch host when purging jobs from a node. + Better debugging when a job doesn't have a job_resrcs ptr. + Store ave watts in energy plugins. + Add XCC plugin for reading Lenovo Power. + Fix minor memory leak when scheduling rebootable nodes. + Fix debug2 prefix for sched log. + Fix printing correct SLURM_JOB_ACCOUNT_PACK_GROUP_* in env for a Het Job. + sbatch - search current working directory first for job script. + Make it so held jobs reset the AccrueTime and do not count against any AccrueTime limits. + Add SchedulerParameters option of bf_hetjob_prio=[min|avg|max] to alter the job sorting algorithm for scheduling heterogeneous jobs. + Fix initialization of assoc_mgr_locks and slurmctld_locks lock structures. + Fix segfault with job arrays using X11 forwarding. + Revert regression caused by e0ee1c7054 which caused negative values and values starting with a decimal to be invalid for PriorityWeightTRES and TRESBillingWeight. + Fix possibility to update a job's reservation to none. + Suppress connection errors to primary slurmdbd when backup dbd is active. + Suppress connection errors to primary db when backup db kicks in + Add missing fields for sacct --completion when using jobcomp/filetxt. + Fix incorrect values set for UserCPU, SystemCPU, and TotalCPU sacct fields when JobAcctGatherType=jobacct_gather/cgroup. + Fixed srun from double printing invalid option msg twice. + Remove unused -b flag from getopt call in sbatch. + Disable reporting of node TRES in sreport. + Re-enabling features combined by OR within parenthesis for non-knl setups. + Prevent sending duplicate requests to reboot a node before ResumeTimeout. + Down nodes that don't reboot by ResumeTimeout. + Update seff to reflect API change from rss_max to tres_usage_in_max. + Add missing TRES constants from perl API. + Fix issue where sacct would return incorrect array tasks when querying specific tasks. + Add missing variables to slurmdb_stats_t in the perlapi. + Fix nodes not getting reboot RPC when job requires reboot of nodes. + Fix failing update the partition list of a job. + Use slurm.conf gres ids instead of gres.conf names to get a gres type name. * Disable slurmctld-rerun-agent_init-when-backup-controller-takes-over.patch: Believed to be fixed by commit c1a537dbbe6 See: https://bugs.schedmd.com/show_bug.cgi?id=5511 * Add Fix-contrib-perlapi-to-build-with-the-fix-for-CVE-2019-6438-750cc23ed.patch: Fix fallout from 750cc23ed for CVE-2019-6438.- Update to 18.08.04, with following highlights * Fix message sent to user to display preempted instead of time limit when a job is preempted. * Fix memory leak when a failure happens processing a nodes gres config. * Improve error message when failures happen processing a nodes gres config. * Don't skip jobs in scontrol hold. * Allow --cpu-bind=verbose to be used with SLURM_HINT environment variable. * Enhanced handling for runaway jobs * cons_res: Delay exiting cr_job_test until after cores/cpus are calculated and distributed. * Don't check existence of srun --prolog or --epilog executables when set to "none" and SLURM_TEST_EXEC is used. * Add "P" suffix support to job and step tres specifications. * Fix jobacct_gather/cgroup to work correctly when more than one task is started on a node. * salloc - set SLURM_NTASKS_PER_CORE and SLURM_NTASKS_PER_SOCKET in the environment if the corresponding command line options are used. * slurmd - fix handling of the -f flag to specify alternate config file locations. * Add SchedulerParameters option of bf_ignore_newly_avail_nodes to avoid scheduling lower priority jobs on resources that become available during the backfill scheduling cycle when bf_continue is enabled. * job_submit/lua: Add several slurmctld return codes and add user/group info * salloc/sbatch/srun - print warning if mutually exclusive options of --mem and --mem-per-cpu are both set. - Refreshed: * pam_slurm_adopt-avoid-running-outside-of-the-sshd-PA.patch- restarting services on update only when activated - added rotation of logs - Added backported patches which harden the pam module pam_slurm_adopt (BOO#1116758) which will be in slurm 19.05.x * added pam_slurm_adopt-avoid-running-outside-of-the-sshd-PA.patch [PATCH 1/3] pam_slurm_adopt: avoid running outside of the sshd PAM * added pam_slurm_adopt-send_user_msg-don-t-copy-undefined-d.patch [PATCH 2/3] pam_slurm_adopt: send_user_msg: don't copy undefined data * added pam_slurm_adopt-use-uid-to-determine-whether-root-is.patch [PATCH 3/3] pam_slurm_adopt: use uid to determine whether root is logging on - package slurm-pam_slurm now depends on slurm-node and not on slurm- fixed code in %pretrans section to be compatible with lua 5.1- Added missing perl-base dependency.- Moved HTML docs to doc package.- Moved config man pages to a separate package: This way, they won't get installed on compute nodes.- Update to 18.08.3 * Add new burst buffer state of "teardown-fail" to indicate the burst buffer teardown operation is failing on specific buffers. * Multiple backup slurmctld daemons can be configured * Enable jobs with zero node count for creation and/or deletion of persistent burst buffers. * Add "scontrol show dwstat" command to display Cray burst buffer status. * Add "GetSysStatus" option to burst_buffer.conf file. * Add node and partition configuration options of "CpuBind" to control default task binding. * Add "NumaCpuBind" option to knl.conf * Add sbatch "--batch" option to identify features required on batch node. * Add "BatchFeatures" field to output of "scontrol show job". * Add support for "--bb" option to sbatch command. * Add new SystemComment field to job data structure and database. * Expand reservation "flags" field from 32 to 64 bits. * Add job state flag of "SIGNALING" to avoid race condition. * Properly handle srun --will-run option when there are jobs in COMPLETING state. * Properly report who is signaling a step. * Don't combine updated reservation records in sreport's reservation report. * node_features plugin - Add suport for XOR & XAND of job constraints (node feature specifications). * Improvements to how srun searches for the executible when using cwd. * Now programs can be checked before execution if test_exec is set. * Report NodeFeatures plugin configuration with scontrol and sview commands. * Add acct_gather_profile/influxdb plugin. * Add new job state of SO/STAGE_OUT * Correct SLURM_NTASKS and SLURM_NPROCS environment variable for heterogeneous job step. * Expand advanced reservation feature specification to support parenthesis and counts of nodes with specified features. * Defer job signaling until prolog is completed * Have the primary slurmctld wait until the backup has completely shutdown before taking control. * Fix issue where unpacking job state after TRES count changed could lead to invalid reads. * Heterogeneous job steps allocations supported with Open MPI. * Remove redundant function arguments from task plugins. * Add Slurm configuration file check logic using "slurmctld -t" command. * Add the use of a xml file to help performance when using hwloc. * Remove support for "ChosLoc" configuration parameter. * Configuration parameters "ControlMachine", "ControlAddr", "BackupController" and "BackupAddr" replaced by an ordered list of "SlurmctldHost" records. * Remove --immediate option from sbatch. * Add infrastructure for per-job and per-step TRES parameters. * Add DefCpuPerGpu and DefMemPerGpu to global and per-partition configuration parameters. * Add ValidateMode configuration parameter to knl_cray.conf. * Disable local PTY output processing when using 'srun --unbuffered'. * Change the column name for the %U (User ID) field in squeue to 'UID'. * CRAY - Add CheckGhalQuiesce to the CommunicationParameters. * When a process is core dumping, avoid terminating other processes in that task group. * CPU frequency management enhancements: If scaling_available_frequencies file is not available, then derive values from scaling_min_freq and scaling_max_freq values. * Add pending jobs count to sdiag output. * Add configuration paramerers SlurmctldPrimaryOnProg and SlurmctldPrimaryOffProg, which define programs to execute when a slurmctld daemon changes state. * Add configuration paramerers SlurmctldAddr for use with virtual IP to manage backup slurmctld daemons. * Explicitly shutdown the slurmd process when instructed to reboot. * Add ability to create/update partition with TRESBillingWeights through scontrol. * Calcuate TRES billing values at submission. * Add node_features plugin function "node_features_p_reboot_weight()". * Add NodeRebootWeight parameter to knl.conf configuration file. * Completely remove "gres" field from step record. Use "tres_per_node", "tres_per_socket", etc. * Add "Links" parameter to gres.conf configuration file. * Force slurm_mktime() to set tm_isdst to -1. * burst_buffer.conf - Add SetExecHost flag to enable burst buffer access from the login node for interactive jobs. * Append ", with requeued tasks" to job array "end" emails if any tasks in the array were requeued. * Add ResumeFailProgram slurm.conf option to specify a program that is called when a node fails to respond by ResumeTimeout. * Add new job pending reason of "ReqNodeNotAvail, reserved for maintenance". * Remove AdminComment += syntax from 'scontrol update job'. * sched/backfill: Reset job time limit if needed for deadline scheduling. * For heterogeneous job component with required nodes, explicitly exclude those nodes from all other job components. * Add name of partition used to output of srun --test-only output. * sdiag output now reports outgoing slurmctld message queue contents. * Improve escaping special characters on user commands when specifying paths. * Add salloc/sbatch/srun option of --gres-flags=disable-binding to disable filtering of CPUs with respect to generic resource locality. * SlurmDBD - Print warning if MySQL/MariaDB internal tuning is not at least half of the recommended values. * Add ability to specify a node reason when rebooting nodes with "scontrol reboot". * Add nextstate option to "scontrol reboot". * Consider "resuming" (nextstate=resume) nodes as available in backfill future scheduling. * Add TimelimitRaw sacct output field to display timelimit numbers. * Add support for sacct --whole-hetjob=[yes|no] option. * Make salloc handle node requests the same as sbatch. * Add shutdown_on_reboot SlurmdParameter to control whether the Slurmd will shutdown itself down or not when a reboot request is received. * Add cancel_reboot scontrol option to cancel pending reboot of nodes. * Make Users case insensitive in the database based on Parameters=PreserveCaseUser in the slurmdbd.conf. * Improve scheduling when dealing with node_features that could have a boot delay. * Changed the default AuthType for slurmdbd to auth/munge. * Added 'remote-fs.target' to After directive of slurmd.service file. * Remove drain on node when reboot nextstate used. * Speed up pack of job's qos. * Add sacctmgr options to prevent/manage job queue stuffing: - GrpJobsAccrue= - MaxJobsAccrue= * MinPrioThreshold Minimum priority required to reserve resources when scheduling. * Add control_inx value to trigger_info_msg_t to permit future work in the trigger management code to distinguish which of multiple backup controllers has changed state. * NOTES: PreemptType=preempt/job_prio has been removed - use PreemptType=preempt/qos instead. * Bluegene support was deprecated has now been removed * cgroup_allowed_devices_file.conf was removed. It was never used by default, as ConstrainDevices was not set. If needed, refer to the cgroups.conf man page on how to create one. * slurm.epilog.clean: Removed. User should use pam_slurm_adopt instead. - Refreshed: * removed-deprecated-xdaemon.patch * slurmctld-uses-xdaemon_-for-systemd.patch * slurmd-uses-xdaemon_-for-systemd.patch * slurmdbd-uses-xdaemon_-for-systemd.patch * slurmsmwd-uses-xdaemon_-for-systemd.patch * slurmctld-rerun-agent_init-when-backup-controller-takes-over.patch- Move config man-pages to config package.- added correct link flags for perl bindings (bsc#1108671) * added correct linker search path in slurm-2.4.4-rpath.patch * perl:Switch is required by slurm torque wrappers- Fix Requires(pre) and Requires(post) for slurm-config and slurm-node. This fixes issues with failing slurm user creation when installed during initial system installation (bsc#1109373).- Update to 17.11.9 * Fix segfault in slurmctld when a job's node bitmap is NULL during a scheduling cycle. Primarily caused by EnforcePartLimits=ALL. * Remove erroneous unlock in acct_gather_energy/ipmi. * Enable support for hwloc version 2.0.1. * Fix 'srun -q' (--qos) option handling. * Fix socket communication issue that can lead to lost task completition messages, which will cause a permanently stuck srun process. * Handle creation of TMPDIR if environment variable is set or changed in a task prolog script. * Avoid node layout fragmentation if running with a fixed CPU count but without Sockets and CoresPerSocket defined. * burst_buffer/cray - Fix datawarp swap default pool overriding jobdw. * Fix incorrect job priority assignment for multi-partition job with different PriorityTier settings on the partitions. * Fix sinfo to print correct node state.- When using a remote shared StateSaveLocation, slurmctld needs to be started after remote filesystems have become available. Add 'remote-fs.target' to the 'After=' directive in slurmctld.service (boo#1103561).- Update to 17.11.8 * Fix incomplete RESPONSE_[RESOURCE|JOB_PACK]_ALLOCATION building path. * Do not allocate nodes that were marked down due to the node not responding by ResumeTimeout. * task/cray plugin - search for "mems" cgroup information in the file "cpuset.mems" then fall back to the file "mems". * Fix ipmi profile debug uninitialized variable. * PMIx: fixed the direct connect inline msg sending. * MYSQL: Fix issue not handling all fields when loading an archive dump. * Allow a job_submit plugin to change the admin_comment field during job_submit_plugin_modify(). * job_submit/lua - fix access into reservation table. * MySQL - Prevent deadlock caused by archive logic locking reads. * Don't enforce MaxQueryTimeRange when requesting specific jobs. * Modify --test-only logic to properly support jobs submitted to more than one partition. * Prevent slurmctld from abort when attempting to set non-existing qos as def_qos_id. * Add new job dependency type of "afterburstbuffer". The pending job will be delayed until the first job completes execution and it's burst buffer stage-out is completed. * Reorder proctrack/task plugin load in the slurmstepd to match that of slurmd and avoid race condition calling task before proctrack can introduce. * Prevent reboot of a busy KNL node when requesting inactive features. * Revert to previous behavior when requesting memory per cpu/node introduced in 17.11.7. * Fix to reinitialize previously adjusted job members to their original value when validating the job memory in multi-partition requests. * Fix _step_signal() from always returning SLURM_SUCCESS. * Combine active and available node feature change logs on one line rather than one line per node for performance reasons. * Prevent occasionally leaking freezer cgroups. * Fix potential segfault when closing the mpi/pmi2 plugin. * Fix issues with --exclusive=[user|mcs] to work correctly with preemption or when job requests a specific list of hosts. * Make code compile with hdf5 1.10.2+ * mpi/pmix: Fixed the collectives canceling. * SlurmDBD: improve error message handling on archive load failure. * Fix incorrect locking when deleting reservations. * Fix incorrect locking when setting up the power save module. * Fix setting format output length for squeue when showing array jobs. * Add xstrstr function. * Fix printing out of --hint options in sbatch, salloc --help. * Prevent possible divide by zero in _validate_time_limit(). * Add Delegate=yes to the slurmd.service file to prevent systemd from interfering with the jobs' cgroup hierarchies. * Change the backlog argument to the listen() syscall within srun to 4096 to match elsewhere in the code, and avoid communication problems at scale.- slurmctld-rerun-agent_init-when-backup-controller-takes-over.patch: Fix race in the slurmctld backup controller which prevents it to clean up allocations on nodes properly after failing over (bsc#1084917). - Handled %license in a backward compatible manner.- Add a 'Recommends: slurm-munge' to slurm-slurmdbd.- Shield comments between script snippets with a %{!?nil:...} to avoid them being interpreted as scripts - in which case the update level is passed as argument (see chapter 'Shared libraries' in: https://en.opensuse.org/openSUSE:Packaging_scriptlet_snippets) (bsc#1100850).- Update from 17.11.5 to 17.11.7 - Fix security issue in handling of username and gid fields CVE-2018-10995 and bsc#1095508 what implied an update from 17.11.5 to 17.11.7 Highlights of 17.11.6: * CRAY - Add slurmsmwd to the contribs/cray dir * PMIX - Added the direct connect authentication. * Prevent the backup slurmctld from losing the active/available node features list on takeover. * Be able to force power_down of cloud node even if in power_save state. * Allow cloud nodes to be recognized in Slurm when booted out of band. * Numerous fixes - check 'NEWS' file. Highlights of 17.11.7: * Notify srun and ctld when unkillable stepd exits. * Numerous fixes - check 'NEWS' file. - Add: slurmsmwd-uses-xdaemon_-for-systemd.patch * Fixes daemoniziation in newly introduced slurmsmwd daemon. - Rename: split-xdaemon-in-xdaemon_init-and-xdaemon_finish-for-systemd-compatibilty.patch to split-xdaemon-in-xdaemon_init-and-xdaemon_finish-for.patch * remain in sync with commit messages which introduced that file- Avoid running pretrans scripts when running in an instsys: there may be not much installed, yet. pretrans code should be done in lua, this way, it will be executed by the rpm-internal lua interpreter and not be passed to a shell which may not be around at the time this scriptlet is run (bsc#1090292).- Add requires for slurm-sql to the slurmdbd package.- Package READMEs for pam and pam_slurm_adopt. - Use the new %%license directive for COPYING file.- Add: * split-xdaemon-in-xdaemon_init-and-xdaemon_finish-for-systemd-compatibilty.patch * slurmctld-uses-xdaemon_-for-systemd.patch * slurmd-uses-xdaemon_-for-systemd.patch * slurmdbd-uses-xdaemon_-for-systemd.patch * removed-deprecated-xdaemon.patch Fix interaction with systemd: systemd expects that a daemonizing process doesn't go away until the PID file with it PID of the daemon has bee written (bsc#1084125).- Make sure systemd services get restarted only when all packages are in a consistent state, not in the middle of an 'update' transaction (bsc#1088693). Since the %postun scripts that run on update are from the old package they cannot be changed - thus we work around the restart breakage.- fixed wrong log file location in slurmdbd.conf and fixed pid location for slurmdbd and made slurm-slurmdbd depend on slurm config which provides the dir /var/run/slurm (bsc#1086859).- added comment for (bsc#1085606)- Fix security issue in accounting_storage/mysql plugin by always escaping strings within the slurmdbd. CVE-2018-7033 http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2018-7033 (bsc#1085240). - Update slurm to v17.11.5 (FATE#325451) Highlights of 17.11: * Support for federated clusters to manage a single work-flow across a set of clusters. * Support for heterogeneous job allocations (various processor types, memory sizes, etc. by job component). Support for heterogeneous job steps within a single MPI_COMM_WORLD is not yet supported for most configurations. * X11 support is now fully integrated with the main Slurm code. Remove any X11 plugin configured in your plugstack.conf file to avoid errors being logged about conflicting options. * Added new advanced reservation flag of "flex", which permits jobs requesting the reservation to begin prior to the reservation's start time and use resources inside or outside of the reservation. A typical use case is to prevent jobs not explicitly requesting the reservation from using those reserved resources rather than forcing jobs requesting the reservation to use those resources in the time frame reserved. * The sprio command has been modified to report a job's priority information for every partition the job has been submitted to. * Group ID lookup performed at job submit time to avoid lookup on all compute nodes. Enable with PrologFlags=SendGIDs configuration parameter. * Slurm commands and daemons dynamically link to libslurmfull.so instead of statically linking. This dramatically reduces the footprint of Slurm. * In switch plugin, added plugin_id symbol to plugins and wrapped switch_jobinfo_t with dynamic_plugin_data_t in interface calls in order to pass switch information between clusters with different switch types. * Changed default ProctrackType to cgroup. * Changed default sched_min_interval from 0 to 2 microseconds. * Added new 'scontrol write batch_script ' command to fetch a job's batch script. Removed the ability to see the script as part of the 'scontrol -dd show job' command. * Add new "billing" TRES which allows jobs to be limited based on the job's billable TRES calculated by the job's partition's TRESBillingWeights. * Regular user use of "scontrol top" command is now disabled. Use the configuration parameter "SchedulerParameters=enable_user_top" to enable that functionality. The configuration parameter "SchedulerParameters=disable_user_top" will be silently ignored. * Change default to let pending jobs run outside of reservation after reservation is gone to put jobs in held state. Added NO_HOLD_JOBS_AFTER_END reservation flag to use old default. Support for PMIx v2.0 as well as UCX support. * Remove plugins for obsolete MPI stacks: - lam - mpich1_p4 - mpich1_shmem - mvapich * Numerous fixes - check 'NEWS' file. - slurmd-Fix-slurmd-for-new-API-in-hwloc-2.0.patch plugins-cgroup-Fix-slurmd-for-new-API-in-hwloc-2.0.patch: Removed. Code upstream. - slurmctld-service-var-run-path.patch: Replaced by sed script. - Fix some rpmlint warnings.- moved config files to slurm-config package (FATE#324574).- Moved slurmstepd and man page into slurm-node due to slurmd dependency - Moved config files into slurm-node - Moved slurmd rc scripts into slurm-node - Made slurm-munge require slurm-plugins instead of slurm itself - slurm-node suggested slurm-munge, causing the whole slurm to be installed. The slurm-plugins seems to be a more base class (FATE#324574).- split up light wight slurm-node package for deployment on nodes (FATE#324574).- added /var/spool/ directory and removed duplicated entries from slurm.conf- Package so-versioned libs separately. libslurm is expected to change more frequently and thus is packaged separately from libpmi.- Updated to 17.02.9 to fix CVE-2017-15566 (bsc#1065697). Changes in 17.0.9 * When resuming powered down nodes, mark DOWN nodes right after ResumeTimeout has been reached (previous logic would wait about one minute longer). * Fix sreport not showing full column name for TRES Count. * Fix slurmdb_reservations_get() giving wrong usage data when job's spanned reservation that was modified. * Fix sreport reservation utilization report showing bad data. * Show all TRES' on a reservation in sreport reservation utilization report by default. * Fix sacctmgr show reservation handling "end" parameter. * Work around issue with sysmacros.h and gcc7 / glibc 2.25. * Fix layouts code to only allow setting a boolean. * Fix sbatch --wait to keep waiting even if a message timeout occurs. * CRAY - If configured with NodeFeatures=knl_cray and there are non-KNL nodes which include no features the slurmctld will abort without this patch when attemping strtok_r(NULL). * Fix regression in 17.02.7 which would run the spank_task_privileged as part of the slurmstepd instead of it's child process. * Fix security issue in Prolog and Epilog by always prepending SPANK_ to all user-set environment variables. CVE-2017-15566. Changes in 17.0.8: * Add 'slurmdbd:' to the accounting plugin to notify message is from dbd instead of local. * mpi/mvapich - Buffer being only partially cleared. No failures observed. * Fix for job --switch option on dragonfly network. * In salloc with --uid option, drop supplementary groups before changing UID. * jobcomp/elasticsearch - strip any trailing slashes from JobCompLoc. * jobcomp/elasticsearch - fix memory leak when transferring generated buffer. * Prevent slurmstepd ABRT when parsing gres.conf CPUs. * Fix sbatch --signal to signal all MPI ranks in a step instead of just those on node 0. * Check multiple partition limits when scheduling a job that were previously only checked on submit. * Cray: Avoid running application/step Node Health Check on the external job step. * Optimization enhancements for partition based job preemption. * Address some build warnings from GCC 7.1, and one possible memory leak if /proc is inaccessible. * If creating/altering a core based reservation with scontrol/sview on a remote cluster correctly determine the select type. * Fix autoconf test for libcurl when clang is used. * Fix default location for cgroup_allowed_devices_file.conf to use correct default path. * Document NewName option to sacctmgr. * Reject a second PMI2_Init call within a single step to prevent slurmstepd from hanging. * Handle old 32bit values stored in the database for requested memory correctly in sacct. * Fix memory leaks in the task/cgroup plugin when constraining devices. * Make extremely verbose info messages debug2 messages in the task/cgroup plugin when constraining devices. * Fix issue that would deny the stepd access to /dev/null where GRES has a 'type' but no file defined. * Fix issue where the slurmstepd would fatal on job launch if you have no gres listed in your slurm.conf but some in gres.conf. * Fix validating time spec to correctly validate various time formats. * Make scontrol work correctly with job update timelimit [+|-]=. * Reduce the visibily of a number of warnings in _part_access_check. * Prevent segfault in sacctmgr if no association name is specified for an update command. * burst_buffer/cray plugin modified to work with changes in Cray UP05 software release. * Fix job reasons for jobs that are violating assoc MaxTRESPerNode limits. * Fix segfault when unpacking a 16.05 slurm_cred in a 17.02 daemon. * Fix setting TRES limits with case insensitive TRES names. * Add alias for xstrncmp() -- slurm_xstrncmp(). * Fix sorting of case insensitive strings when using xstrcasecmp(). * Gracefully handle race condition when reading /proc as process exits. * Avoid error on Cray duplicate setup of core specialization. * Skip over undefined (hidden in Slurm) nodes in pbsnodes. * Add empty hashes in perl api's slurm_load_node() for hidden nodes. * CRAY - Add rpath logic to work for the alpscomm libs. * Fixes for administrator extended TimeLimit (job reason & time limit reset). * Fix gres selection on systems running select/linear. * sview: Added window decorator for maximize,minimize,close buttons for all systems. * squeue: interpret negative length format specifiers as a request to delimit values with spaces. * Fix the torque pbsnodes wrapper script to parse a gres field with a type set correctly. - Fixed ABI version of libslurm.- Trim redundant wording in descriptions.- Updated to slurm 17-02-7-1 * Added python as BuildRequires * Removed sched-wiki package * Removed slurmdb-direct package * Obsoleted sched-wiki and slurmdb-direct packages * Removing Cray-specific files * Added /etc/slurm/layout.d files (new for this version) * Remove /etc/slurm/cgroup files from package * Added lib/slurm/mcs_account.so * Removed lib/slurm/jobacct_gather_aix.so * Removed lib/slurm/job_submit_cnode.so - Created slurm-sql package - Moved files from slurm-plugins to slurm-torque package - Moved creation of /usr/lib/tmpfiles.d/slurm.conf into slurm.spec * Removed tmpfiles.d-slurm.conf - Changed /var/run path for slurm daemons to /var/run/slurm * Added slurmctld-service-var-run-path.patch (FATE#324026).- Made tmpfiles_create post-install macro SLE12 SP2 or greater - Directly calling systemd-tmpfiles --create for before SLE12 SP2- Allows OpenSUSE Factory build as well - Removes unused .service files from project - Adds /var/run/slurm to /usr/lib/tmpfiles.d for boottime creation * Patches upstream .service files to allow for /var/run/slurm path * Modifies slurm.conf to allow for /var/run/slurm path- Move wrapper script mpiexec provided by slrum-torque to mpiexec.slurm to avoid conflicts. This file is normally provided by the MPI implementation (boo#1041706).- Replace remaining ${RPM_BUILD_ROOT}s. - Improve description. - Fix up changelog.- Spec file: Replace "Requires : slurm-perlapi" by "Requires: perl-slurm = %{version}" (boo#1031872).- Trim redundant parts of description. Fixup RPM groups. - Replace unnecessary %__ macro indirections; replace historic $RPM_* variables by macros.- slurmd-Fix-for-newer-API-versions.patch: Stale patch removed.- Use %slurm_u and %slurm_g macros defined at the beginning of the spec file when adding the slurm user/group for consistency. - Define these macros to daemon,root for non-systemd. - For anything newer than Leap 42.1 or SLE-12-SP1 build OpenHPC compatible.- Updated to 16.05.8.1 * Remove StoragePass from being printed out in the slurmdbd log at debug2 level. * Defer PATH search for task program until launch in slurmstepd. * Modify regression test1.89 to avoid leaving vestigial job. Also reduce logging to reduce likelyhood of Expect buffer overflow. * Do not PATH search for mult-prog launches if LaunchParamters=test_exec is enabled. * Fix for possible infinite loop in select/cons_res plugin when trying to satisfy a job's ntasks_per_core or socket specification. * If job is held for bad constraints make it so once updated the job doesn't go into JobAdminHeld. * sched/backfill - Fix logic to reserve resources for jobs that require a node reboot (i.e. to change KNL mode) in order to start. * When unpacking a node or front_end record from state and the protocol version is lower than the min version, set it to the min. * Remove redundant lookup for part_ptr when updating a reservation's nodes. * Fix memory and file descriptor leaks in slurmd daemon's sbcast logic. * Do not allocate specialized cores to jobs using the --exclusive option. * Cancel interactive job if Prolog failure with "PrologFlags=contain" or "PrologFlags=alloc" configured. Send new error prolog failure message to the salloc or srun command as needed. * Prevent possible out-of-bounds read in slurmstepd on an invalid #! line. * Fix check for PluginDir within slurmctld to work with multiple directories. * Cancel interactive jobs automatically on communication error to launching srun/salloc process. * Fix security issue caused by insecure file path handling triggered by the failure of a Prolog script. To exploit this a user needs to anticipate or cause the Prolog to fail for their job. CVE-2016-10030 (bsc#1018371). - Replace group/user add macros with function calls. - Fix array initialzation and ensure strings are always NULL terminated in - pam_slurm.c (bsc#1007053). - Disable building with netloc support: the netloc API is part of the devel branch of hwloc. Since this devel branch was included accidentally and has been reversed since, we need to disable this for the time being. - Conditionalized architecture specific pieces to support non-x86 architectures better.- Remove: unneeded 'BuildRequires: python' - Add: BuildRequires: freeipmi-devel BuildRequires: libibmad-devel BuildRequires: libibumad-devel so they are picked up by the slurm build. - Enable modifications from openHPC Project. - Enable lua API package build. - Add a recommends for slurm-munge to the slurm package: This is way, the munge auth method is available and slurm works out of the box. - Create /var/lib/slurm as StateSaveLocation directory. /tmp is dangerous.- Create slurm user/group in preinstall script.- Keep %{_libdir}/libpmi* and %{_libdir}/mpi_pmi2* on SUSE.- Fix build with and without OHCP_BUILD define. - Fix build for systemd and non-systemd.- Updated to 16-05-5 - equvalent to OpenHPC 1.2. * Fix issue with resizing jobs and limits not be kept track of correctly. * BGQ - Remove redeclaration of job_read_lock. * BGQ - Tighter locks around structures when nodes/cables change state. * Make it possible to change CPUsPerTask with scontrol. * Make it so scontrol update part qos= will take away a partition QOS from a partition. * Backfill scheduling properly synchronized with Cray Node Health Check. Prior logic could result in highest priority job getting improperly postponed. * Make it so daemons also support TopologyParam=NoInAddrAny. * If scancel is operating on large number of jobs and RPC responses from slurmctld daemon are slow then introduce a delay in sending the cancel job requests from scancel in order to reduce load on slurmctld. * Remove redundant logic when updating a job's task count. * MySQL - Fix querying jobs with reservations when the id's have rolled. * Perl - Fix use of uninitialized variable in slurm_job_step_get_pids. * Launch batch job requsting --reboot after the boot completes. * Do not attempt to power down a node which has never responded if the slurmctld daemon restarts without state. * Fix for possible slurmstepd segfault on invalid user ID. * MySQL - Fix for possible race condition when archiving multiple clusters at the same time. * Add logic so that slurmstepd can be launched under valgrind. * Increase buffer size to read /proc/*/stat files. * Remove the SchedulerParameters option of "assoc_limit_continue", making it the default value. Add option of "assoc_limit_stop". If "assoc_limit_stop" is set and a job cannot start due to association limits, then do not attempt to initiate any lower priority jobs in that partition. Setting this can decrease system throughput and utlization, but avoid potentially starving larger jobs by preventing them from launching indefinitely. * Update a node's socket and cores per socket counts as needed after a node boot to reflect configuration changes which can occur on KNL processors. Note that the node's total core count must not change, only the distribution of cores across varying socket counts (KNL NUMA nodes treated as sockets by Slurm). * Rename partition configuration from "Shared" to "OverSubscribe". Rename salloc, sbatch, srun option from "--shared" to "--oversubscribe". The old options will continue to function. Output field names also changed in scontrol, sinfo, squeue and sview. * Add SLURM_UMASK environment variable to user job. * knl_conf: Added new configuration parameter of CapmcPollFreq. * Cleanup two minor Coverity warnings. * Make it so the tres units in a job's formatted string are converted like they are in a step. * Correct partition's MaxCPUsPerNode enforcement when nodes are shared by multiple partitions. * node_feature/knl_cray - Prevent slurmctld GRES errors for "hbm" references. * Display thread name instead of thread id and remove process name in stderr logging for "thread_id" LogTimeFormat. * Log IP address of bad incomming message to slurmctld. * If a user requests tasks, nodes and ntasks-per-node and tasks-per-node/nodes != tasks print warning and ignore ntasks-per-node. * Release CPU "owner" file locks. * Update seff to fix warnings with ncpus, and list slurm-perlapi dependency in spec file. * Allow QOS timelimit to override partition timelimit when EnforcePartLimits is set to all/any. * Make it so qsub will do a "basename" on a wrapped command for the output and error files. * Add logic so that slurmstepd can be launched under valgrind. * Increase buffer size to read /proc/*/stat files. * Prevent job stuck in configuring state if slurmctld daemon restarted while PrologSlurmctld is running. Also re-issue burst_buffer/pre-load operation as needed. * Move test for job wait reason value of BurstBufferResources and BurstBufferStageIn later in the scheduling logic. * Document which srun options apply to only job, only step, or job and step allocations. * Use more compatible function to get thread name (>= 2.6.11). * Make it so the extern step uses a reverse tree when cleaning up. * If extern step doesn't get added into the proctrack plugin make sure the sleep is killed. * Add web links to Slurm Diamond Collectors (from Harvard University) and collectd (from EDF). * Add job_submit plugin for the "reboot" field. * Make some more Slurm constants (INFINITE, NO_VAL64, etc.) available to job_submit/lua plugins. * Send in a -1 for a taskid into spank_task_post_fork for the extern_step. * MYSQL - Sightly better logic if a job completion comes in with an end time of 0. * task/cgroup plugin is configured with ConstrainRAMSpace=yes, then set soft memory limit to allocated memory limit (previously no soft limit was set). * Streamline when schedule() is called when running with message aggregation on batch script completes. * Fix incorrect casting when [un]packing derived_ec on slurmdb_job_rec_t. * Document that persistent burst buffers can not be created or destroyed using the salloc or srun --bb options. * Add support for setting the SLURM_JOB_ACCOUNT, SLURM_JOB_QOS and SLURM_JOB_RESERVAION environment variables are set for the salloc command. Document the same environment variables for the salloc, sbatch and srun commands in their man pages. * Fix issue where sacctmgr load cluster.cfg wouldn't load associations that had a partition in them. * Don't return the extern step from sstat by default. * In sstat print 'extern' instead of 4294967295 for the extern step. * Make advanced reservations work properly with core specialization. * slurmstepd modified to pre-load all relevant plugins at startup to avoid the possibility of modified plugins later resulting in inconsistent API or data structures and a failure of slurmstepd. * Export functions from parse_time.c in libslurm.so. * Export unit convert functions from slurm_protocol_api.c in libslurm.so. * Fix scancel to allow multiple steps from a job to be cancelled at once. * Update and expand upgrade guide (in Quick Start Administrator web page). * burst_buffer/cray: Requeue, but do not hold a job which fails the pre_run operation. * Insure reported expected job start time is not in the past for pending jobs. * Add support for PMIx v2. Required for FATE#316379.- Setting 'download_files' service to mode='localonly' and adding source tarball. (Required for Factory).- version 15.08.7.1 * Remove the 1024-character limit on lines in batch scripts. task/affinity: Disable core-level task binding if more CPUs required than available cores. * Preemption/gang scheduling: If a job is suspended at slurmctld restart or reconfiguration time, then leave it suspended rather than resume+suspend. * Don't use lower weight nodes for job allocation when topology/tree used. * Don't allow user specified reservation names to disrupt the normal reservation sequeuece numbering scheme. * Avoid hard-link/copy of script/environment files for job arrays. Use the master job record file for all tasks of the job array. NOTE: Job arrays submitted to Slurm version 15.08.6 or later will fail if the slurmctld daemon is downgraded to an earlier version of Slurm. * In slurmctld log file, log duplicate job ID found by slurmd. Previously was being logged as prolog/epilog failure. * If a job is requeued while in the process of being launch, remove it's job ID from slurmd's record of active jobs in order to avoid generating a duplicate job ID error when launched for the second time (which would drain the node). * Cleanup messages when handling job script and environment variables in older directory structure formats. * Prevent triggering gang scheduling within a partition if configured with PreemptType=partition_prio and PreemptMode=suspend,gang. * Decrease parallelism in job cancel request to prevent denial of service when cancelling huge numbers of jobs. * If all ephemeral ports are in use, try using other port numbers. * Prevent "scontrol update job" from updating jobs that have already finished. * Show requested TRES in "squeue -O tres" when job is pending. * Backfill scheduler: Test association and QOS node limits before reserving resources for pending job. * Many bug fixes. - Use source services to download package. - Fix code for new API of hwloc-2.0. - package netloc_to_topology where avialable. - Package documentation.- version 15.08.3 * Many new features and bug fixes. See NEWS file - update files list accordingly - fix wrong end of line in some files- version 14.11.8 * Many bug fixes. See NEWS file - update files list accordingly- add missing systemd requirements - add missing rclink- version 14.03.9 * Many bug fixes. See NEWS file - add systemd supportibs-power9-11 1670332916  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`22.05.5-150300.7.3.222.05.522.05.5-150300.7.3.222.05.5-150300.7.3.2slurm.confplugstack.confplugstack.conf.dslurmaccounting_storage_none.soaccounting_storage_slurmdbd.soacct_gather_energy_gpu.soacct_gather_energy_ibmaem.soacct_gather_energy_none.soacct_gather_energy_pm_counters.soacct_gather_energy_rapl.soacct_gather_filesystem_lustre.soacct_gather_filesystem_none.soacct_gather_interconnect_none.soacct_gather_interconnect_ofed.soacct_gather_interconnect_sysfs.soacct_gather_profile_influxdb.soacct_gather_profile_none.soburst_buffer_datawarp.soburst_buffer_lua.socgroup_v1.socgroup_v2.socli_filter_lua.socli_filter_none.socli_filter_syslog.socli_filter_user_defaults.socore_spec_none.socred_none.soext_sensors_none.soext_sensors_rrd.sogpu_generic.sogres_gpu.sogres_mps.sogres_nic.sogres_shard.sohash_k12.sojob_container_cncu.sojob_container_none.sojob_container_tmpfs.sojob_submit_all_partitions.sojob_submit_defaults.sojob_submit_logging.sojob_submit_partition.sojob_submit_require_timelimit.sojob_submit_throttle.sojobacct_gather_cgroup.sojobacct_gather_linux.sojobacct_gather_none.sojobcomp_elasticsearch.sojobcomp_filetxt.sojobcomp_lua.sojobcomp_none.sojobcomp_script.solaunch_slurm.solibslurm_pmi.solibslurmfull.somcs_account.somcs_group.somcs_none.somcs_user.sompi_none.sompi_pmi2.sompi_pmix.sompi_pmix_v3.sonode_features_helpers.sonode_features_knl_generic.sopower_none.sopreempt_none.sopreempt_partition_prio.sopreempt_qos.soprep_script.sopriority_basic.sopriority_multifactor.soproctrack_cgroup.soproctrack_linuxproc.soproctrack_pgid.soroute_default.soroute_topology.sosched_backfill.sosched_builtin.soselect_cons_res.soselect_cons_tres.soselect_linear.soserializer_json.soserializer_url_encoded.soserializer_yaml.sosite_factor_none.soslurmctld_nonstop.soswitch_none.sotask_affinity.sotask_cgroup.sotask_none.sotopology_3d_torus.sotopology_hypercube.sotopology_none.sotopology_tree.so/etc/ld.so.conf.d//etc/slurm//usr/lib64//usr/lib64/slurm/-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:Maintenance:26683/SUSE_SLE-15-SP3_Update/eb4ddda70c058585b3d4b25885dfe140-slurm_22_05.SUSE_SLE-15-SP3_Updatedrpmxz5ppc64le-suse-linux  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]ASCII textdirectoryELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=cace44a292f1b6d3879dd053927e70c9eb49d4c3, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=8dc094323c0e788bdf59721d9201169ce4dd767b, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=1c0cdbc22c7bfa01b32764f938b55d9b215a4f87, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=ba86150a41136bd10cab3d3661fe590735819426, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=ba8719c3745e26e18b78500eaab6594d7481fa4f, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=b649c6132614e1df20f9ee6062040dea1a43e2e6, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=d2be1c2e9a3feed0bd9cd49f8e9d48449570bdb6, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=e02c71472e2776be8dd32c035285e1aab7aed06a, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=8220f53cc9875c602316566c18bc2b154deb7be6, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=45f7a483a57c7ac086f62ea74fa3ae7cb656c0a1, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=9057d1f1bd600aa0c85bcd256aad63e984079912, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=1026d69c0239691e14060304b7fdf582bb56dcd8, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=73e60f4a4cc8f448856631330067e4449a797219, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=c2fd8c2f9658a6204e40b4159548a681b3c331c1, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=5a68e2829cc7fd99a8daeabf640a4c9d99611186, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=aafadaf0cb0faf5c1cb9e8c72e1e450b6275917c, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=66261ae7ed6d1b61929898a320cda27a6d6e24ed, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=e046e40f5fca74ddd25c819da3693c47d79c2e91, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=0cad0c1e0bc7903e25eb50bc416b303d95246e4b, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=672bdef608615a964378a08f83e0c61dba10d02d, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=9a125548d3b570fa1028406066bcf440c78fa81c, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=80fe554bd57a5e41cbcac0f938d6b70ad6ab272c, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=915b8d29d26e2d9d5718f00860ddbce06e3081e7, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=dc0950d027c38cd142ce685f2fb7cbcab3dfacb3, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=55a3f4a94b69726f23a5c7062fd513317f45f9a0, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=ebd2bb4507370ad1948262f2d518331627c721bc, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=05774f6734426993f1b339b85cb0d414bd1b3245, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=d3a18e953975eb7133773354f559712009f0993f, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=3cdf0e6d36fe44ab1eba319d3650d4242b7bbd51, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=96eff3135fc9734aadc3e54e0f8effc64eed1713, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=818ab63c8f905402da72450bb6c4c32b1d7a3d06, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=2952efe44d50439918d50a802d202f15d2589e71, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=b39c5e1b7b47d31994504b396c629bd07f093900, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=502565901b28e68ac3f30c4a508c6e66aed550e9, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=fb12cc947191d6ebc1fdaa39341264dcaf8d3ed1, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=34deef1cb85c8c515a3d504c87fcb2ef2c6a0b1a, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=c0a97db6dfcc43506ad55eeca81b2a3115f500c3, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=a033a1b6a97cedb1b09e6ee12a3184c5545af1b1, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=e3bbffd88ad2d63284c3191641b339660e4d4d06, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=a2abe02fc537a8adce6fb707d9fb4ccf41f89aae, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=41554da87bc9d42f45822e3bb43e2eacc436f616, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=7b253ce71a8c85bc1772c40af096c4a4d54cd846, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=33f325ce2784a43b54333ecf7332d2dfe8c2e7d5, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=562252d4b473a983c85dab5b3beebb2a3c46e028, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=39fb9467926dbdcc2a4b65898e95ddb6513031b9, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=b63f6c3123b3bb24134d53d31e4a9f2563b5c33d, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=fcdf316c8660b52e1b24b559c447cda33a798b20, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=1b495c7542f3700b5a5eca7c05900b7288e8118d, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=76e7fcfad0c5d823624091da545cc95cebe461f4, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=7577b3bbe5d12ab72e504cb3d26bd546ac0dbdaf, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=9dcee94d7409784e1e8a8684bf6c69c995141e79, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=8f73d812eea3c9469c7fc3e9d7c2c6b528bddd2b, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=e729676990a3600cfde8f4ec564d541c81e988c1, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=b719e19ede36378daeb3220d6f848b8ef88abe9d, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=c50090215cbe62a923a1c080e5b8546c0e01d012, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=8fe1726bc607af0f48db03c18ed7cf8b6f8b6a4b, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=b7dee33b13aefb85d1204a16e6c88e4d3d77343d, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=82ed840b12643f8869eff2bf9892d8ef54d4c785, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=704b05614b6ba6bd70cbb9aaa9e99415712be192, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=dfebaf75e08e0f9dfdf92f2ca20f808a78351cb7, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=7cce82232f730d037a5c373c997035f715242b36, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=889c32862953e872ebaf8ccbd0eda8ec429a6da4, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=12a7fdab69a299a729cafd8001157077cd481d4a, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=3d2ceb6cfe2235d062d016106bc7a189e328c17b, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=4521c656817b3dbb265315b9e3331cc90229f80b, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=94490262690a6bd9fcceda05a08e0c65ef8db60b, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=f43ca62b0a6c4d07c0246cb62c22603115315dcf, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=c27eff87285570854c45106ae4003772529d78af, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=39749e5e3fea38906b743dbdedc5a63944050135, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=6ef46971fdcd75aab309376adb8326454d68e3ea, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=0e0029fc59c5fcf8a1de2588947bc5a2a59d23a9, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=7bc30abf1e34665925c6ecff300fa884a2b56509, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=6568869d591ad21e423c2bb23fe803e993e0470c, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=226773ca0ac2a7cab74858d338c9599592b802f2, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=3c91d319278f5d2a05c33e0486d29dc61d33d2f2, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=f4fc9d5aaa0672e844094209a20b309583a0d5a6, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=090d02646e7dc5597a5d9fbf01023a43ad0adb13, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=0c63d3e8996ed79b34dbaa3a5b77a49bef70dd06, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=6354df11c27c9869816091511199569b081603ee, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=b41b544a5c9996f5dbacfa329d761f3672412eab, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=97ab5ce5950d06fc232ba41a983789fb028e7534, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=01a6e59e6592f242c6abda34f800455d98a03a45, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=c89a3818dd1d874d35c51087f409ab50590abb9f, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=a80837bb802109e99250d1511fc94decb612dbc4, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=8a24308f5863facc5c4a8ed9f6a039b2fc801c01, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=96c772b05674316681be9cfaaf1a988249e75916, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=fab1f3d2932a4f5106cc7c47990458bf106fb985, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=c4d02955ce51c24599321d42b60d6834c3509cfe, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=13d001f461fde904348bfca5378a34cc83712e8e, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=e64c3578bd62b3bbb73c7fb6d9bede7375fc5450, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=52e64bc725a91378b2eac59e7b179a6350e25588, stripped  #&,/36=CGMRUX[^adhknqtwz~ #'+.15:=ADILPSVY\_ RRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR RR RRRRRRRRRRRRRRRR RRRRRRR RRRRRRRRRRRRRRR RRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR RRRRRRRRRRRRRPRRRRRRRRRRRPRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR RRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR RRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRZ? eKB,utf-8ed880ac2e823b304274648c60420ae0e2dcbf82dd902963c4a701e1bb49d95c9?7zXZ !t/ ]"k%_ՊC>~y Mi?;.lr!L8tA|ڜ6]L?J$2x, G;h[ ʸ,2E9@ڗ/$E}Lam;—7e>* /ŬQu ܻQ+ua䞼8gwfxƿ_ӯ8ũ[hF-q±Ȝ벫1^9\.a&<{A.;˪p}-ntIB FJaq:AW&PJ K37kPi;{궮|S˃vsf=k7fa(ߏsJ/i?W.MJ3`&5jݻtL~ aw,ީ*F)D{U1D݈9,VXPEU:s)|WKoe;Ij4-xZDC1ũVr[wj9;KoULE?f8yKSIU &hJмΧIR見̟Nk9p'} 5<|3d20(\K"]]TDy.ij;FJY21л*yeOU+o9,Ba X ;iӔڸv Ply3]85-7@{mQC∄[ cn 0U7.kO-MS\K;I@5M˂m]&db5ZN0c6x[vi>,>eU x9*7%g1tW3_J, 6~qyQdЅ{FR$ՙe{)^ DKj8B"YVʶпL5mxRȞ o:!pXxOXJ uEaPӌ>k23*$?epcoWgK(|Ub_PJ=GUS]pq3#0tcsN®$>S~!Ú9V02풻Z(5I^llԠ1g  ʖU<-y _Tl# [ $m^(L F6)\Aݭy{3C $8Icm#=Uw@-uOr ۪*1\z nEW.քa0gmA3PX͵Y?1)8IKfd<Ӄ'1?mEY/֪V+j[m3 VcIlB8"Dԙe㛤g*M4"֗[|2uj`}$xOoe;ex۵.9ýb׈n=YAGcIʃl՝W$] "|+FV'><&iy2}WuYHvgi@I!EPK3jV՞B307AUξoj@ګe4z@lil'ddCyޘޠꚮtDD_[݃N6gӀsM.hqv,HUV>1!v w臶Dl= h;)˙*1+/P'ыDCfό '"V߶vXw"f?]~}/gyy$vF`{F4,w)vHC՞'v#F7 #`)@R|8Z::zcMV@P.)|(~X'-Ln,|9 gB0b<%ު ~wiiڙ;-sȼc^ncڪ~"@#/!\cm f2 yO j)ŧ1 nYW"=>YSf^:)D _#|bIRm_c\^J-yu66(A;% bh5r笶ŋ [ ճJ"rOf C?@4%1F228R%M-HQtoSPrAvZO>?`cn6XnսEZmPqO@YD]&굊 1{ yLRe96є\VsGB JKkE}[tGI`DmnӚ}#o*8=8}"^{a~$ROj`-FR O&vWh|ӢӋ]&!|˩]T E Aǫ:N֥ͪͩd6ZDO>w>; *XjR[k̪^V> Ԥp_bnȥpb9~/7h(G]t?χs☓]Fy!sl|Q4? 0klu*WݓT&Eԥ6!:$}wLZ~9h1 |1-%Y+`uAZsݬr2-+N Fuw BYU 6Sq^\Fɬv`> VC5[_WQcw](Rh̬=p; }mLr0$11 e炽P: 3gj Á(^5i,R~59K6Q-t. zBOu_({ƼhFgA@y&dJ|1dpqC=( ?[83 CϠ[2]q]XQ}"q9hS*D)Iӧ="ǘm,Qgmi0C0 =8{G3,:d=,XE6lķr`-(g8+CKˣz *%'UDUҤe} &X_6$h3(YX^-iUGT.{H=UT& t/Rg8=x fl&sa RaGsQaT"ZVGdXx=rn<4~w=5V' ؖL۪Әj:< Ea>ȖbsO@[UxYM0XR~l bcxnpi$P"HEBcZSVDV;(Wiڛդ;r1O5'}hE_'Ͼc>aNEPdP\dv!Y3?}&#6lzC4pUYό|^L~-\~aMN+/L݊y)5r: y99<`*ฮDyC JiW%etл2wG'+ i/j[=Kmn2ﱌnwvDM,"xt`i85Yy||L*hрj_,íZL΋6)DaJwM;a5o$c^J(ѓ<'(d镠]wk!zzF`P^~|?ŽOS`bpfG&(P ؜;;'73Fu)>_1(F+g^zIf1ww;曤e 9<0Lx~HfBl; Hc{F$ aOkHG5XuW&h<39']ohjx:5u(صpYPY @r3܀uᖼM7oUyF픯A@oӛYH<5Fݧ٤[NJ cE(s~Ў6g60R;+pnlTZl`bK*Dl:ZFt4!67 8ִ븇)g\zxw&D Xy}lJ"TGh6X z&1 gV>ԗgbh,^gTƀ RT }w2\@`f-=}9DI_- /șS@DW"/`YSdnp!S¤ i•JG#@M~O Na{RW8Um4$Q&c:Y" rm2p7OIicumoL)a#1][O͵A/D˼FpN78Y"hz* TE+B̷cKTLM )đ Be!}=Cxܨjխ"UD۱`>ҷgS;uIfFiY\1\//EeNs cӝF d\F 2.h5K Ķdibo젎huK6Ọ̄ StW|`96U'uDU;@v,Im.0UχXH@.;qfOЭ?jJyo򈗥A'$AdIy>9'UЏ8+ K;NaU8`$B&y54#' cl.a&޶IdU</WԲ$A!QQ= b} iF%AկX?I"f''g4QZ((GN pǣ7_*߱85SetcЋnJ2u;(R nWp8 <ك0wɚ. d3E~BIJ ` ʖLh1S:2 T" fٹN0]|7Iܛ6!Q3>R"@7!AXsɩ(*|@7B[,6I-v:xO[[3ic^pL[Tf>MaqQYZFM΢ĕN|AK?JPЊg!O)jp B5W it7i- I=nJvwt|8OfKJ p8F^7Ime~0aYpXѣ2E7r FWJ s~]N'\GhUSD7?#lZN[S/F\k~ jVY'/jƕ$YY*43p2W'")UlֲQ(PBؐbj3”"-=qúY٘bTo҇2u[mc,=s@[šK.2,vWûpuqXV)<߂ n`J+>?iEo&cI}ls*`]yUQޝ0:ăph$[\DF6f6M=a^*?=%H;t-m09Q8pNIk3P{>0S6GjwRRؒ!C͌_ [.QjDT|4(]s8% 5I^˩(6 :{$%*A"Ycx ^&R\ՑXj֕=(3x|) M>jkSжR=,Ē|;򔃧l+.Y| )4TĀn 'L9Ol TE\7R=H!+B+`C{:u5 R=[O"'b6U^F.M,6V8G6ҋ,[o@ 8 > BMPRZݹn,hep )K!8_+* ־G9^'5<βn}oT5(h<, vLf7.ş֍>c@M`%SJJMU'#,۪qn]c2jJg}eaȯC>(.s b3(;MuZ &xaxP* -F +eŌYOW3N>CI* \MN'samO9^ h7She:~h`Spga4 Ŕ+YBt#V>G[~lbZKfZK/M"gwg)d(a:.5;ǭ>tT╬ڲSXLΟvF !b ? Z2z5#oGڅ.uBێ)~{=m|^P-sb _V0 T?6Nm4iCA1 ih^WPh*<uˠ;Xq֎8c>EP±GGzӖ~un%[ttmq mXF:?Vf#@&ܟ1K 9\ Vd% 1 ~Q9Ky[G~\Vӆ*}FI q"՘!DFoҚt&XK)"RxP!.́& qw#el.K+T'h>iwL C{i Ʃضلَa>~}kN0y#_0 Ո-٨D >xRp\#q.]1L}XLzX8aw4>&8lGjNEoߕ[]Uf G"]5|;氊l[=Ԉ2-]q+ɽ'NCW"^Ov:x,QFq S %Rslc7ZB/߀yqF~a}1} S(H qe1ےK.p48qBڗyТP#Lj/1=H7Ʌ pXV|ff'IVWC1S;kڴ= Μ^(q7 ͜e:}fC#UpT}ҽzNWDF< E@wt9<12 S`Z94ys݁.J's9.ʝ$GRRb;+ -u?W$Ҙc.@a+.J%\7fq?m{Ojj ?ouA[c[@n[o PK'wGK|L飓ꤚ["H(?OH3y0dğʣNI}_ǞPidR7`P&R5;^_x 뻵Ј>Έ3AC1B˵s08Ľ&>OcPwx~(XJ$݋-%\5|R63-ˬhKMqXȗqCf&J-n<ʞQraߚn C~LR4'l۴@,t^^*F1격PhZ8;/*(ɀB{l=[ pPAnѦH*`3-5rp}@35*-;xaBR;4ƕju" 3dgFa41FF;zWPW;  ״:~  I QT)<,viL-{b򹲟܄ly֫4R9_{@%lAe_)moD` G>Bc_/U&x+T85p4mz`@oz/ c8F l vKX&T)XIǣMiD@${_ zF$fJF @Du)'[$r;4E:byψv =۴v+r PKF !qy5ID#RxE1_Yiy~Xv&A 2|#l,xzhq:@|jƲyq}g omڡ֤ 6$:ilsW[.<`aT_!k!ݨ0jT3kYz>)*t-7%{\ _HE2 KG%U[ Dq>@H3f*W{4Z!`~c 6ˎpMpX#5#54˚s2f(gR+P>?Ns-iF AY*܂Y;!2Z- I:BT>/vq"%O*2a2-w4^\>U9ȇLуmLydk{(gs7WEϦhGw^b]^&xȡh]|ًo˭D͋ =-S< k14:2)sq_,5:  ݽnFNK\f7<%.HSyVpRIp$ zҕk0SƇH_ΝnądYxߩbv~T>è\RE&z\{6Vi3,m=G߈,ʪd nX ;ZX3ؓAN@63wܳwbHdݭ!? lU K57݆,`ӁJ( M""`|X-%^7lxF Vu߳QYK6b8]z@J H]+ӈCK_X24O8pPԍw26`wآ!籛oŃbDWƟW31)6Ʈ*'*7F0`>P^ό#N0D(WQ`qV$I}><-[xɅV޾fJXee}tͮ7W܂o\&dxzn} ˑ~%' T4u,!ιvǩbPp/h$Y?`NXMhTz+l1d;|)@Юq{ SSquVԡ63)mh\tg{\Vp4z}YwIB & B&/FǙMz HI VlF" l|"'+Wg>b^`7Wq(8A"@R5ߴ,[bE{i[hU?d~-ŞJ(:Aݣ0~cc݁i0b uYrg R AsTE)Դ2הE` NI1#kF"i@6  jH1K4y6" f@(:sP_5/i ŝ FMãzr) l&p*mrs_ϵvLD Λ x4wL%3CX:HYp657ҭ]dFh nPԍj ͧ\):vҭ$W֮.0s%C6dT8u.3C*@c.ES jn;2,񦸦 Z=$~fEѤp/_SſȐ!eku\B\OCTˈ$y,>0QrDB]>K\3[dpe6x6?.TpTƻLΑ:80rOom&?jЌh@،[w|<J)d,;[UNt~*|൰Ȧz1q'm:At0>Y%Xו9xd~g MAU;$gDx%gfygx`1T͔UlT%}ib&ıu+󑃐GH"l\K# 1ڗjA̶6%uįNn6A Ku$L+znp82\lPBpi>l19)2sk!]_#Fʬ >K6-&ZmYӝt6Ч17͗怠v̫~)DĦz)*5vP,X`?YNlDŽ`3vßO"i87mQ@mXDĢ?WXn>8cؘ5&|@|EAި$TKK+FMZԻ?KPiqL@KH> a&jRܧU d"}9z^Gu\)qa1UN-1E`(jd0+c+s@ꏜeX,<pϳ0Mز^FcЉ_w`8¯!/x"nVWN%5AzƁ^ & T{dVqƁq5*&CFgݮ{3?(&v*Q`O/ +!8'zѳ_@j6V cePK:tEF,.F_ZŠ=jþ|4܃ȓ8Oo NSb6MSo bH01|T%9Rd(09.D{Z".DXH&CO`ِ|C r)Yz_5Nf? HܯLFir e>$CC3,kK0Ro]AG9eҫYD BבpМm!by{B;C0":*E84t􂮛?qwX꾡9hᒮja%M#QrT[Q^]3b!fbǃ,lQ-!Ao>ȓ]6ָái4~Wt7uV7uCO/͗Cİe/7 > pB鿔Utus| 䟨n㋚VכMʼnw{&_gp$th1"xD*LSxqL> 2r-ǣ$+lѢ+Q33uuWU-Wwĸ;cC"c9`CT_FI]P(^ݱS1MH@_!\r?V 9X~*m~y'dEr!ad&^C,K =,D'fw/Vspe-8*y@V*o%u[H|1x,t7=;)?0:@I7` c%+Q.KM_! Pcw@e'ȋq_{s3F? U4|΅rRq2:yrc/*zoϛ'ǡCi$g`76O~d[S%>1~JmNC9p"W2}XS2TI,׊ u$-FKѧֈTU*rFtdYpgmF54BfQ?TMr[:C3AV4R&r#< Z K[g#2~# 8ɑ$DXGU^(yL,-v.]@j,F\`y}KM{ u^Z yT6\aW)c ܻ[ jZ6_~ s3! 7@n$(~@#z ŹLx5瓠z 2 be;dHmvģ(NgPth<"N5Dko rcDžStΠ3HQȰ/=c*=Zw.hթZι! fk mqy%m;Zo!]un?` (b$3젭?{q&> iӱJ\O=_H]7 M=^r%5~O͉5)8^U&jx!ʒzpkQ/BDw ÅB\WϾh;)Rkˤ x @s_3lx.euxYh xeHSޟ`'q_ѷ_<N]`+zb7{s50!ί\M5N2O) "`I6Nt/4 x7tpk*~8[Fd'؟ Ck r=#݁ʸ`9tyo":[>Ꙁ)" ,p7&jp1EO[10ۂG,gvO5]-YLM THy5:}Gn wpz?ꀷ.t%BP2oEM.w(P+?UxE"kLGJb2x˽k@ͮCze;mx=^D{i ostlT~֎fg@[! ,ɉpXwLj6.B.'c1\exj,W_o`4YyLtLeDIrylxq88(H֫XjSBeJ$M:z]-EKr JO̶(ũ*<|TkC a~VfTw40ϫ<-"YHƥɊC[&]&p3+ԺdL7i6mNw yS|7H8޸\yWd?Lykvj#I}wMH-J@}Dy h+y٢ѶB&;ǻX܋,_!:SUU9B҅jz)~,rs:=`/"BˡVװE`1wBt`o7Y"5}rruD$q.|&w'.ВgKח ) Ӫahm9冻E^P r-dlcQȿg?xci4׳[nI1CJA k;{n^¾}VFg2Vrs9^T!@_1Twlp<8 I ܅#j)k?/1"a[UKt󯼪pAf5zvذnv[p2f'-bB9$d"y@:SnXzR3~R|aۮIEtFedio$PwW(F"%}yI!Lfbo_J'% }j^09C>ꄶLr+@^Y^\ˢID]˖ph$=ej0}'?K~,y?OA7ǭYhi@:P_1`0ɖQ[kwbA:N0a(166-o^o٬1d{\!`%ֽLLnĽ[reRzp ˪ibbm^Od~%a)5abuDu jǓxm m>nkZ% v*/9q$%CAO _)&sY!c"LaH9 D\kt&,.n:&ߝ O%ɓt&R XmkLpM‹.ĝ?R9|Pc|Uf@\ozH;p8=C +-c"BvLZĠQZpӜʺSo'0:30ss†e@dC"Z4qF8~ mNh#Ip=&I%k6+rZ9j/^@RC*7 ` f"}hJ aK2V:fQ-ysW;_?8R_S$p+c6(;(YgΉ-:S7Q'N)%GR^(֏GÖ!0x3:=Nr]unl )c$au~i'۳oWcL?!|]-E~[8,]1{䏈' c>tS"R"J&LaU}%>n1عѿ X`Ngvk3py8Scp"w#ru{_FY[/Y̩+->eB[I=ds)r҆wV6PT9ZL].V3T/4'MҼ48:] QIزjUeiAxdZ!4wV 4=TKFδX8铼sOEN#2 {!{`"u#>g|_# RxP &]頾z:٣-뮨X[ ʼϭVb~4k_^X-pW{_$\QJo+!xW5_4:h8}Vu-SV^tY/3Fno^8^$4 ]#x5LXMqUV(>0}0JY6La +;UD&Fl#!rZk˳g:#> o(g#(-Y>VXM5C$aj.|2#(C #cۜCv/hP_ o`4cRѪi$-wX/E8Ys\;VE/8sXX|E 5$V/ߕFHFx| &6dM"Y+ V& l8i(&vx]N@LY2b_uz {HpZLk{n>NYҹW;¿`.}Ʉu=tF{|9EFtD:!+scz{ Ep[5_# ˘D;؉3q Z"1"j1H.It#HCo?qv< oeÑ ݡlBW:|g*eE3w.&Q̔cC/ZYhv!W}:1=i}jPF;ZJBĜE9t2cA@.,!4KYA1_Sl37j{Qe}$hY HݻX1*q{ce؛E)S3qK\ ~ zT|htDEU_†S|Ŭk} 陇ZkӴRyDn,߄0V]OO/ރPb.r\Α{F.у&rU, [*l!Z/OX ߂Kkbnđbz]}R. E;G"xB+;ρZPGM0W3}NLl`֟10 Q+3NGLۋKF $:.Qy+WDd u>3jNQfP`Zy9"o8hFT3}FuixcN:cs PalPl}Ye pA?]i: ?{WC; \j6._L6{j],e_И7P"afs>]+5( WD]e8;_.~"r:. ]II95(r5۵q"C65 Z?Q_I!6X3t-z ޞOo1d?)unf/;V[ƨzHtd/X]`f݃RN_o{dW%i4@{yH>"SKx{]ҦV,jT"BD&Ɨ~u;D"KSϷZi3瓇e0a[^Nj}UW 5N\~] i ,gV˽#)DOx~ǭ,%iR͞r8#fЄH#L^Ea;:Y1oKs?EqӦmyDa-7xGeI`X՜CR`n۬/7,Z'9AEB+Ȥز |_,D BԱ&٣H=aM:o-MIjɕ1pɏ5LYJ W]tȡ{CwMOL"?аƿ$t7ARNns2QgSG)q^UJߢSc8Z*. <>$o6G#TP]O"^v4VF#a V ?:X.|ozz3?qx5u]XlK]+$J+j=Es垱uΎ닩"G 4$oq4cn0' 5_|eQX CTSK@] <%.u**Kz?_{} gK7*ƝiG>S!COyG "W]nL\8ۂ JVvz 8]*!7=l,pzVPޔׁ]bKnUƂi_: k$}q,.'zfH᫥R4s*b;VvU .*2К 2UPTf'$vh$ص`Kϲup&,zXZk{i ǡ n 4eaJ/U+W[ +jqPR ix(PˆۊMB7$6_E*#m0jf:9^:90N*f&vWX7xj ;>}i:glT{[:5r;0GvNG>#\ MXSTU g'JTK釥sZxNoz][XrSK2}[@aas>- 6L#gjrw{⩭@$.};U:DtW(- kcm:NϴNA A_vG"~&T2^ TA&ה~jh- &Le :2H gĭ2 *8nC _ݩ1UmLQÏeNt|:;DHZynC[ҥ!lDY }s4k<9+ < a̻c`DZN?||ץySfX^s̳֡W55TY^o(c}\2伮"cre +𰯃W52OȔixXf9{[]UyPyv<[ 01kϪ-6ڙy!jwCG@2-ē#os95$4 Y=t?쨐Y;pM M%Нsω7B\$ߖ$&lr^sP<(x$b.`LN;p#$ZVр=/}b,8e`-@O_T*=Tף Bi_AJE!sO-+{rm>Fvs ׃ݰs bMlZ"WB\T\4a: ӻpuu[?lXM㱦ɾ OSazrcM) TPc _T]2Bf^ k5xϩh MZP@%_v2M[\Iiֆ %uvEH\Al*Gi to'.!On~> 4Iny_?WA(H'x%UProYJs+$!2b@|#W7o2 CY"⡌K`v%uVBIfpM6lWLTF,"s}-ZT6xG,:)/Xkj$V2g0mv|12f zM0/^L^%C0m@*sL2= x>Prcn WʅQA,I|iu @~ *)1vt?GhD&o ; N]=*Āy1AjR9 90l#v P Rla ;D(OHsZIRfs`m1rɧ9Вd} vlt7QPh.-(a*ItCW?dĴL{>b[MH|QRl/l-R)KtR'54wv91sNomx^Y@<+7U|9n;yk{po00 …Q`wX,#ʍɕ3}Wpb&XZ 8!108Xu%fI 2D#d[m () 736%jq3BĒ+ھ,@yS=09#t*R%澲 Ä0.9Z rxV[a47LQw7M_AGGBV<@ʑ +^,Fo (v/8.\{"Lv=9[&32w),@IViu1];`  K~ֻиQh$GIpo"r׌!j0/d}y&h]ã/ }E62q.5h'=vQHY0a^{S0-Iv=zeL{Bk,6$8ɶCAؑwg ʌ>jG *gv̘YL舩N =R[3ui)2`|逜LGdvΒBưՁfGՊ5扷 ;k!ޭW_o9^땼8JaM+vkPcc׋|͈w|lP6);>nHKWQLnc18<9.Sg:KLj2/l )lN`c.8tvuUJw )O& $7FoSq񾜪)ع(Mr!RfaA6]o}wz Rn~+uY1#uDm8@cw^݄AjSt8/~]h!k^2 =4Ƀ@`@E,E.`rNת Ψ(jB"4MF(&c7_0+!ZްCvqgq9Lo&AW4/2ISFb!$pb%Z-gI29~h,Ho1;0w&aT!vmhtl Zm!Br}!Yeϲ:UG&=Zs\_, h)ahqBT"OQ!]F(#(Ǭ0اfuVH%΃PTmⴈ7Ȳ؉Y{P J6o Yf͑-ߟ[dSQ'kաyDP&6 #3N;v֬?3.\}x׻ݦJΫkC V?Fdpqin=^2QFWW6W_dAq@imC)e&[(M|+:E JR\"cl|F\lbd)08ٚ1'rCr,D65/GB~RLi _$[KGoPP_D/b_h@@a\|OXgP4@P'F "I`Pup\ 5qE&7keWt7LXbKa:R~ z~b¶.tG)?<ܻgڭpCchZYmų?2c4 ĿjKec0߫˃eUʋEizY㘜nJ}y!H o~-.OT%@$SXn4 o+;3nڴv4XpHc'$GPAzflWj@\}7Vj {3 NAJ @kv659r\E53r o \'JKHH`g\̫zdQbSl|FuCҢa`lv r 31@殓cwGyp.37 5.uYF$J"klVb- κ9)oB տ-`~ƶig"#D?N jJ"/rc1|]WAvߙ<ڑe_EsAe\J4t+}*؁2H`l^x\{UT{7pYOͳt&:Pv(W<7uϬa.R&_h6g6Gv)A|+ff5A/[RkCsoɁ}H[d Y)N(+ , !zZrF &8#zw~e3T`8w*KTN'+1K $\W.ﵧ?n;]]oe y]AT?pUZZܻAҟ)Pӑy0n`62=ujR}z| #8Mbbe Mbo=el|c^-9sk֏jDϸ =`T]{eUhFŶHh7 EDl߶d͸9'/̓QicE\@ߐgZeKی+/ }cz"oJW4 Tr6vWؚeN8c2;<6s2 n2r%<lseܹs>) \IۗeW+#n02uRPn{п"^Qj//WK4mAj?[)V]_LѾ?n*(`N& b:deXlUeΠ֕CY<(=쪳H<۳&9Y60P1\(ŹHMЙ[ˡɍHS8[ ((2;C @li9)nM(ȟ 3+x'_]vC[L;f߲u|PʀYEZ6i~4۷JknR͔|O=rA C9 4w^N*E!UGH=:^vı!Gpd+y&{ٻ'gfa]2<h'7tUʅR7 2Bo[ 6Uޥ;(2Yޏ5eL 6Al5QX3%t/΢Z :J'fIJ2;u pJHy5~Rjݵ 9Okpn屸'R`rA`l{)(~mIi$.WpՓ.{3%?LFTO2I U=pOi+ Y ~R%Ϯ# [be龃9#^dҀk_~ԕ*'=œo*T>Yf<z+Cx,\I*R1^p u,G`lB/hY.{PGF31_x*JniL$vc ,6[(0-j4Ɉ;a`s1b06Ӑ{8@fˤbuֲژZͿwYM!i>k˦C[{NJ,VpPSxn3,q&9LзW`6*g1m?7s<.88J{.{Yp'<~̧lBpwl ۏK`,guJF#-LP3d<~+{+s:/EgiZPJ2DZDu@Р!+G>BgqYM'J l|o|quW}hB8DžVљ2Ӌ]+A1]Mq0yQ|=rZ +4^vD1> IRa~ExP"U@ɉpwK[*9= (]-Џ[jVW8dDE[W&a-iJJ?@pYw,W]wC1s>zZ9& a>x;ؓ\1׿6"}tmܟ"SfA-M'ٷ~8E!.KorZ?=4`E"]N0[DGt֚sWhdfa!4qHKy -@3IJS &}O+>HC ,KOuHUw p=33ͪ:u wXj*,MJFR(dRC70TĻCS{źZShx?;@߲|FԹS  %õk2 4$wcz:c{q2ccڥ*D[BW~6ַЎz=O \ TwOIlvRgq A9`P)[A e~2?Z-!wr l…C89@rdwvD%)2s5z'{$zw)$SMʸu X^c7f!_;M'LS}cREtʑ^9lr[oDi5pJ`Le= n_w[t fBz ]/Nzԫ+;F@!|s"46Z.N|?a!Ge¾^'{ts|"eN!j(%u1l,6Jž^r[ {M7z ihQNTNxL]u0 J=vJm! 9=|s$_qZs_,XMCTWN$~JK>uA G<ߨQN4SFW\Af r9677cC8+ɰZ嬿BaE8 m $Fo!T(&~؄rmER/.+\-(6SحCۛ?ۈ1#d9^P!if.>Ԩ+ fF#/yz!X(o@"Vc%]Xr }B'$]p@Rdؠ̨nj1?}ߢ2~u. az"6zjo螫L)j!gk1Ul;'٥-Q4oi~/q7 ~ϓ|Iί-rM68i_\BzY)jڅc9qD2v/70@v WFlJGj4< Z_ i'%ls ] 9xl@sWizyQ?.:]m9vcW持?`vS݂.hPrߊB| qE yΟN|jrQ0X=Sw(R.yU Ro q崥[y|t<-bly=%ZK~rD[̌QF!BNSZ=@e4ϧޢyLBkSCv||2tA.l_}.tu~rHѓQPW;@{I[ΈiȳwmH rU LXdzxDm3X bgV̝( .n|FytWyh' +߰g"ԭ;dT!F˵WaZ+H}z x%k 2Uvl#A9CR_dF>7~h+mp0A M@~^JiVdƜͽ &#p^q̶ {&w. 9"SZƘ=gCG "CQzT$$ވ}xVG~KBA=C_]_ַ\"S!YWdPlIH_Y5PRqfcb3a#gZZSUl.>ܜuY2 ~jآΧe}i'i zDCi]0nXFKMW |7ъ bL06 B6yʗƷ$\YW g8Ri0i1ns*0apZP>bs!ʷM.YUeuTbA b :%"ڬ >~c0Ġ#tY,)3@1V M,K禭O{c!B{ wͩ=6ާUgCca $:*QX`că͓6+[濫k4Y@dmʐ4 a7tG!NJS=Ob4H}͏1A 4 g!d>7l*>O(ܐ0$raqϽXQ7Y岍K_PN\¶}Y 1]_%g3.AΉA!j~XѢp:h˲>B߮ %ZXʷ_?2BGWdn|՗NSS}$׌tζVz)ͣ fX A%`M9'q[&-՝O;huHMcl4:a7!ǿ#GJ8舃9.qE pP Pc뻊EŦ DA/In,䪚7L{/g^X6N:)xf}fNo惞moR$D2mSu %@ar@Ty?NNpmƺ.}Q27F9*D 9 ^Ddge]AEIj`mrHe#AF̑9ToXRɪc-1>H<ɥtQ쫩`ܘdy(ZRv:Kyp=@r>uڈM^ml9=8uc9ٞ7)R<"B?A+1{ݤ1%v{7ݍ}%;I)܎1bD߬G0 QN"$9S9ZJqu)GZOaZ)u(K4( ^e%5d?4ML,glK[hzwz& gD_)ȾxqDA-f9E弡 jO9:y,I 6BU^vTktd]Lc.(WEJ#-=K`#Y$%PDrlP55""6 ԑV 7r-7-D/9[rfNC{p&MiU-N }MԕKZHIě- t%7V +O3*~!MB6t?X5SROohq%ܔyzp-: ˗G\2% :IrݟW4WPQVG۫C CmRbcġ>>H5؏esLC ^V(JEGÃɳi%i BP`C%?%d^Oz6k@&Ty%>X|"|vhA6|\!{`)WIK]ᲜO~0x&QiCӰXX1c1­ܔˑv7iO$ǩ3QSGA$ ߃B0?Cw$da}˻{$kKPKi%ZnoT 7 uK[ UZLն+ j U@/뙴 ĨS>U]>/U ,1lkssmK:g^KG,DcOʍINxܖH=j>) nL X3j-")~@{xTU5_'?d3I 5$izuK{֍Uv)^,p^<\tE']v" &904,8\P ţ-EEʋr:.rmoabEKF+R@6IykJ%)"_`vD _ O݈>8a.f855A,8_ 7 @LbDҁo 0O_3E2HZ=@:Г_fl×F{QzT|_C%$~!?tr:9j!h&7|TTucą^IwJi 7U-L0:B?[Ynr*_>Gl>Z =ᤆY g$bg_! 9Mm6ԒQX/RD$^]^P&x9ǟǤҴX27]J)vY ·Lⳕj"\'z=D1۱6 zIĞ5'•]EDE×u:zOs M7:v.WwRV {#{I)RJZ3D{]!{K.2! #];p7Q_W<3<|޹3@ߊhՀ澌=_g+ "m רBG aΕkܛ{%zDb]RQ"8ӷ7L+M&|DX{ 5=k*9MUN\ "Rg n UpETPW;ܐY[\XN+jp:(rގAA`f V90xСHf5 yFx#Wy_@(մ1ż%z EVEEv,??pĬ\d<?i6bq"ޠ* YToaH 5'1> n,ܑ&TcF gv-c^*tbh.Im.Dz M{QvJP浏eE:Rתh;CFƬi:Dw=,$i:cĭ5`[|.rZQ}[kOy[UQB$;|Hwt[ Y:`_߮W7A#Qۉ/~?̮jRXWL oIQTʿxMUDgd܆^aB'` ^ PO`7LH.>x}Lej$O5:dA\XlKX{.u=O0n1#Ơ#sj^jc;>%V {d"krH,2D/.64W86^9I8өVPQz/Sa#Osj!6Q|as WbLHro0ԟZQWtA*r*1RRHf qDxlzt-ba zv8޳Pڶ%Y諤= A< 5gnMQ_%.8$(mMv4 _Y-6H?OXACÇn8iش%"$\/d*HtbW,}n!~T\)@. a߇L7jm 59C feF 0̞/>goN9p5qN?}arh+FnU5Oy_˺Zn&:}L sm3J.jZOQk? XnR#Z~N~I)Pr]û޲ (tQpB}; ai`vB./ L_ogg:sdzGz1anI:v].)M_~eQAq>!fT&w[ !?K䲎x5' " YfJ3{+e\TWkΆ{]$6@v(hvI^DtISCnO; H`*> *C c "{z Lhȟvz|OnTV.eAkh>ﬡE> ?!Q[ = 6-lRYj$ {:Irs}X(܋~F\#9>[Cy}FWgj *=vQA;T 8(2uo`_\!H&yV>;o~J!-۩ :46q&5kݜ̒4?zq6>4{C焋xlͷQT1ͻpVzfAwe-3E@J]X{!٧X oOy9#2ɡ}w7xH.+M :#dTj+5mwi` g!rɭg:=]'L8:&^%zWjyVT#4p,4Pve,3hp̰{ ִOsFG`NC=e` lea^#ש_O&;o|tmIuNHH3&ƸfxmE fgUhN#9s%_/V_g/ά|QldX|aVW s *Gn{ oi5 QAkQ\05dU.D7zTu_le,Z$sxǬY-OCõ/0K8C1"RE-s~-zԗ3-4໋%w<ӂO?HH->^]{U߽d/ f[3pimS9V57d/0AFUCA6~aCir7yF#P}vپ^AΥxy04mJ{UjfJ}nM8ɩ3Lk7J sׁx!0Ndܓ)ޡ8_pQs!YYDi0"5 =OQ4髈&3$K ^('1t„_lHi/"2M*Awii{V9$?e7fPF[^2~fW- xD h_L,G6oP[MA.us80XpLWE˧e}$_|o4mt,Eً3pgֳLd"c:zg_Gdž樟2Ehb aP%+*.usKG5a T; `v໗Q?x&C| 6l IroҤۼCL ҃E,qƙU(B@|3})}aLQCnAzd} jW402RE 8<ğkLB,<Տ0>O+\1j#{wrRȕk Ry }ǁRw0\?|+:Я?o6L0ڳe-35n87]l٭JA: RBE@mAO0ѝ=}ȈTp'x$l===A)ɰ.it6+0u:s ꤎfg/G}+0cnǡǦvM"HgvO3!*"Q`Xem yc྘g'UvSfCJvHO().>٢/eГouoE5%pa6rG.^r?5S@]u.&ʧ1ǸfB:rF;2E7'՞h1~InCoSWWp`2NFs'p'V$ΖnŸɄ_4|!\1.ԭKo5WJz\u@;+ jkÃ&u tR,ߪjtb ICtAI$/a_d2 :JdNӥl9[\>dw/:@glٕ֥SwQr!`ġ3] `(٦ݠ^Zx vƹ+,>& ? g)ڏ֬lpܛCE/?H)"AT"L1LRk,%(zΌKфlQhufrf_h 5qfWxڌm~8o#ل]U'KvL G$; `iYBV$UϩVHr()ckB٦ tܪڷ(c`%?M-%ylG}M J+'-;VZQjB.9_%uܺO,Fhn(B ;Zx󧢱!lwCVfhUہ  wX̧Gbh)1uB "ُV$a:Ġ[ذۑlO޷'LEz{#*DS&~YZ\)d Rz02+Q>vflbRIАg?4} 9W4Mziʌ#O9aM |zoN0/$7fbEg芽?E3dc۬psx Ԕ8dKȒ]v^BG Y]5F~.ikW$eTIr(__Cc9(fNh{}Z|n瓥/q/wZd!)‰^<5x.'N;FICG1*<8#_EBxJn{[Q`1P@~RY QF@)-`L!^_ {J Io}s{Ot { p;1MgF>:04 oM T_gT ƚvf|5WMQ/x% | cxT8Q:ʇjuafYRVo|j@GXTw2ؘ``1@?,oyUu mz*Y2Fj},Ϥf@p3CہFs\+S9v϶]gm`ĉrdd$EM<3AbX ]'[̪;>. Mw*ʘV/hE(⍑)w|3XZgA>"?y5.dU@WFx*7`\QR)̗|D&,_!Z9SGG =V2P4}i.HSz}o0brojl(i G RcAKz+UD1h١}#k} 'tYSFƆ3-bN67ʭ$55W._9Yx=9lu=A]ݹ3Rʄ&u6TG:*eիGQf/ג-I.t \f1 ٓvLeDp2~ڊsx Y PV0_>Fs\E)Ke1%1Uԅ6W5i>́/To:4C^':~ Buz,ZQzh;~ rv_xLkFTķ 7<%߳_~{0Pi`3v-Sz:Tb*$#ul%,,:R-6_6VsciaANh9# mC1gܼr꽰 M@{ᏼN0π=&mPy㣐ĽVT.oMk1S^L*(2EWD6wԑIBuYyF6ƿכS8% tO@LjɇVtԕ&9<ֲ.?cx^e}R LA|!C|Qy]9l肼8bdX^|/;0dE*м"*ݦ(WLh{'-h9|ʇQ׭ O!OqQg? VX 4F"\:-+.Rk.hIJڐ;-EXgq>E̗kGl}=0^?hc'edѪXHyO1%9{, $xqDV`2D7Urs;3o+f>yi+r.3y~|_Y2m$#*Cv6ZIeƼJnHM\\xKdR"l>½P v"ˢ(pݱbe8&"jyݩqΔ yyk)"Q>41$8.=BhQ×y`V?8,hFB9J͞z&Q!/ZKPjrel1vԾPD{{Wl ބ#۠ΕxE K#c_Vq&h5#gӈɮ+/~e6=G%i6~*vvN1&W pYɂGg~q_C!FfgZtZqU7 9؍[3+4[3?}mWgYsuq4k"Љ0DQЪijTݴ&r/R('12SWN)脙|,ma pɻrNn?dž%#]˞Vs#ktW1gg@ℎ$cݾйε',OW La_4==N $ٚlYT%ݮL~)jskBX9S~y%wU3EufLFA~ٰ[T4oyh#ѴNcB7g?cMw\{}l-\t<t$Ddc8gI:Zx%lyH-4,lV>X["%c NZ0tWOAG0u҂4Tߗ|*c_FktE͕vԨ#]xn;NxA֘<}Je_`yuߛ5F\"Xs wp,+ˤN>)R 8aA8`ԝ!̤=''&3{u^| MI3re)>߈Q*5ڢ4Um۶pi1\&xFZCw:`c@JE{"u.Ύu' iMֿYHL$C|(Ze*-UTOc>u+$l}1 ($/ ?nyٓnF{e*E@鸷lXABmV|j;! l*ӓf P%D8KQ. Vֲ+ȗ8 j & F {gEQAe/*+#KkԘ',Pr"gjºtVg ?'}L9 (-QӬb,0UK"7l{[[܌ „ތL4J,VW\^ƍg#' HJݯ/]ްyNJ{Cϟ >B~޲遽oLŧ%v6a G6qg2Vx:I"C;:.J-XQV mRNu$@ls i;C_Mp$P=`p/H><#m8+,DhObB Qb1P&XAM C Lp>67)<3A٩Aژc {NE?8$y0 VF,n$ƲRbҗƱ`8e8'nc|f}u&3 @jyq6L$gu(03;v|zrl eH=} BSݞ֕=W=]xyW‹>.;:nWHzh _wj EFU;mCXqܸ^HĄylᠴ I7d@}* Yx;v"&ڊmZ6XN/q.HI Iמ*ϿX#flط8m  qEU18$! c42<;_ ڱqu~ ihl9Zw}₺;1g tw>m~Naxg\=f m 1kYHA- Hʑ)h+Կ" `+LzůTO ܌;vVe̅B]~Ziӑ8>v Ive'{J_+ӱ=ˆQ;ЭIhMThW)  i%=I K}3rCWw4r]' L;TM)(A0c#FCuR95Ӡj,K 1Oeq5x #H`GAЫb6ŀ{H'u +G#7gDV? } <:&{YfOf&EP.9 ؒNR8LcrviFy] {g$_l\`ųt$v1nxR*LU4,Wq*627QFm@iDǃ4/ω;eHu4k2 8^WʶfO}5"eQ6Ӿb':74x!Յlg"^WC1bȿѴ/.|cc Ƚ܁jpDmFǹ`*CTy+厴q*L#7%Eg9 GcNLL?M]E?2߇oY%B 8h,x|)C:5M߁6I):G.mXrqK߀>ICZPxN15T0 2ЍsK{<9`Ry-6 uln'7tp&W$LXz?C84ʥZywVQ?#y"sy+}%I,ߞibgJK(d;@9t|3eTw^g*p"8'2"yh2RV;+WpQzR'U܋3YNܔ=-"e}ԗ0*Gsud颓XݟnB*EC{VlݍL|RzdSEtQmt8DU˻cY:'FMS)/|`чߍ uݷO %@$= x oaza?~1؍}E˯NZ,0VJE oik7uO~`(6+riDSFlx )QP0T^^kStJ'9a' Pt9L9z2#zbJz\)Š.H1n!~+嵻K/6ɏ8g7IuZD=ڟ$5ur|Sw1vs49uh! %W%akeI8bz;֡2=a G! WHUǩ<.r5-(x缤Z|BT\b+bo7 C}*f &BN&ss-`F"IwE&6ݍ7UYKfׇ7h?r>=V64`G-me~o*T±72GnM;7&>rSnq_^5;i>u4?? v_P|>L_Ws=G&o4Iؿ2 g]۶Ee>\s $V/wK};(X $lwP KD|颗nf)J~\j^s):/F"FʩñX[LE UM'\㜔Ui/6k(DUIW.gp" y8q_L-v9;"؏],5^y=&LRCV:@I:94,{2.@o)vn :AG"J>`eaկD_I)VW:=OysLꙶՌ _6i0yEz @n $)8$o9y(l?);{R65 (;Ak`e5삟 A|s)^Sqjқ,va 'fm27[֊Pn'^(t~fy>xpbn`9_-iACcc(\#Jպ&N9)Muw(W!vħQ9~* džK8 .q[ڋe,k*("AV?5`ʲ؄o2V3/ڨk1Q?\OLrT;<a!=ny.If,JV(5”H-SeRC@cb5QXs* Zxh7K18t K? Z}ٓ >qa?~IFfXBPf|.(xʕC@-Դ5 zC*xn>fF. zPlb+DC570JmJd9&M;9p~vܞ'HQ"^nz{0y%0x {u1FϦc2lE)Mv$6GGES(H6VoZ.hzTKzz6u Ы 10Eq+-pؓɣp×M~&ZD$5;" )L98X"7Rk[ht?P&y*BV -,VgXP pYfʄCmGpzpz:Yq3CN{.Um"N[Vꇈ*|(;c=+Ua0kFx!7zf .}(i[Qzk_%}F| 76]Tg8b ue-<5_u>4ޞl(=y}"'oi,?L:u,ζL?Hk -':` # C5}ݸ0S۞!>:)[H 2Ȉmߩsg? W=-̜Ho?qhby gI#U%ެ?qabxؠ[YN1~K`* `2J/~r"K ԣF,zi qINR3hFRT4be?q])y8yQE]+ѝo|Ϙ&FV8{rAOﮅK`Zm(ųyEÒ1a-S:EP0S.mA˾$ǟKn'G~mvJom#4V|0\u:5JCT^é师~m,\F(b6qAo|Tv8*"rOʩ8DDጛuM'}=Pc3t/8,&5al J.>Χ̥v}|ݽ(0g6BWoɾ9~7;RR<~,j/͠G*BG\:\W*P=? >[TQ$TlyS*aGb`M jnLjM'uTD%3qK4I-_bge/8T`8p[ʟ:h MDp84Wp_8hOI@vtSv,'ٟW.%ji`K,pCKPUĦ:D#t l;JV\[F[vxw~"h@qy `A43?Ir&okcqr?Vj9>Hޒ(+s"ء0/Mjͣ4c0,/_XL[dh%@@aݔF2xY9=&쮈[l=H `$ #GرN:7S3Ƣ\s+s4<ڗ^Wolyer4!}C2km/7x@{ɕ*!/f_?X)uaePJHvX_N*=0Z>3v9,/XY#hzx!?h,o?_@ > E3j pu}ҲH|0K$_KyJ=i4v~BxDBu3(iWQ3_%eаcE_F6&@:rW%1(NnTm~> `?5Q4MJMNM_7JQޗbp7F\4]Q9GwM?mldΈS n"S\[>!Mu0k[ddxTZpDDL^C'p\i@ 2]q/ec!|m\Ӟzl{e(U+3%ܱv51!*R*.Lh5( E99υSg펪- ְ^]OhYJ+*=$꿧مd }M~=1smJXXaoƽةYGnAKmr5)h^jJMjN^^V9V7os鎩9-h%lzl7-Q޽-hCYHPlIKtϻn(92h_ۖǘ%Y E'(~XJlgY'"9$mUGNH,^\)7Wdޝ/9 ?LHjlL'xBy vђqW ,RQ[co`X҃Lx:'K勈/Q(T:eQc 6PI@#:ٻ,-Κ}}ZO@`)&+<&(C6wbG$H-8Q˃0̲jC$[t<\9p=SpB>go tjR{y]ݪŌ?yCf $.tHDg_c$/) fC›NnKl,canMo6ާ:1j?YqvuʿrEVp?rdn4(-0 &R=_=9C:TH_jbVXK]9'l(;6+9!ϡ GB25sa{8]O }< "U%=5ts~|SŅplkও}_Smvi% 7;ʧ.=b[=Vݟ{##!_Ea:?790gaN}psE!uk,fL̜)fef 0 ݺeQ1tlqtIqɒx9tc^3k-7PDbrNcdovJ$8MIB}1bHi P s%(sFg EMGyWgee5A|G\{ʎ%JE ف@Ckئѿv5G Y;zKG!PTooK,@W41MU=IzJ5[{+{{hj=]@>lЛbMJ.nVԭ|`lV"d,f^ Xhtz&h"+|3Ra٧Q>}<{z{tFy:ʠ&'O9+7 ((1r#fPI6 (Udm?s Z҆ *_$Bq HcIS b^c_/(fg3Y@A\Z\{3"i؇b6E(+rKmsNp`$'ĔZqNZMs׉_%~C?|K^FKuz'Dޖ/2|~ۺ‹(3VOF:λY.0,<Ɲ%ߝ#wcƃ)E%uY;vY;22np*F:TCUJj1X|_Kc};}k7heFm=5HoUvKG<0 g#;21_`M֖cs1$hR>EC(O;ih$)'3]q!o;;9 R=H! ד^rHpSa`bON]o=6dW0=ӟFX̥2T'84mň,h&:5n?_GBv\Kqbb?2WlF_FKDEIvU(i̊[ˆ=szj!~e) $Xc8㣁U8o3HY1>j5,^/JC#.˿ m<6B&XxD2r"3Ix;!TLH|';j' ʈ'.QPwdR=lCz+r.G(j;7v+ gzu:]`\ӿ])Mn>L7CN"fjMTUAk )?< DpW"H7 |E(r<ߓŤ TBoI:Gj߅Rwtca?}pīZQ KSE)u!OH6g50V I ~% 01-S!zۖO& ՝&_2[WH/3m,ї-T_P`]XT+!u=SzT-nنNNy upð R, GkUmug=lM+HDd8y@D]m9<(G?08jv(kd ٦Iu?95}VltuYKR*Q20Pݭ+-,>ٗ,ȼb_F|?J,Sf2;f\P̈[A3RjY<ܶ;%0ZjFޢ|ԕc;,'Q/g`pѫ2=rc ,8.1uG KJ$ Ze9k2LR~MX6ݶ<(zUTXRhuiB? Gj,)9L̋_Tއ驋˚.>hO6뫿Jμ Y1'&Rp ݙ@ 2dT9L $k2*:,V7r%te$M$ |->s۵l%aU|ч.WJN@1+{I!28eLlV; 030\@{t̃wa֠>+ozuό^U(k_|#r%͎"dv{蓔[rs }Hq|aEb_qLzSDSG]h SNY<-Qϱ6M\e 0β?VBqLܬBTh/>T@ %0ZJVQ>7--e-ցQ/vY iݾߦAA`$ul!X:MZƠJ)t +NzW)T{T|<[Ƿi"olK$:Fh!X;}M5GK-O:`ZiV?9-AAf > ΀|KPK@NVKe] 00ew:iUR#oݺ5%+.h3S|3aTJ7^owZ3D~nc-ԩ˵ %A^z!LqP~=lc1e=)ϋc4bFEyp>^5=ȨeY g.,Alb{:'NRM 8h _,إ1iu!GEOIĂ=Y3 -:Z,IR_U"DoN$bhZ@3F&>أU`E>s97wTlҟEK .+{Ăg'%n46u>WJMҡ|CǯxyV-`D_3 $x`wH-鵇1f8?~H_W9CWf 9Kv~ŒȞ\a&C_o 'Ơ7lFͺ3v~M3c7;ju\Y<k\!A5*C=?)6H u]w+c'G@Ȩx?L;ا(PpJV1y>[ =0$ƝZ\ gAB9Sx3Iu'>"ZI> iJ>sjxK"} qYVjJzw pbuڌk;4ODO|GNۃCoM+xϯ5&}Z@PKX$0Xo" py/^3\FyGL\YPqΑn}3o_~w((xq GH4z>/밍ќ DF;uO|y_;vp9;&GWYdQ ZY]]\(q3Нk*@92/U4^k@vR%_џunLyYv5 "LWj/c&UqfaR=|^U*n֒n+BR q'B[JE _ٌ qvIN{ =#)6-S| P1gD)r /'T*{̸0΁]_ymJ>G%wutPcfvDq}gUE]_J|K=IgfCX,"G<~5"&10ʔ 2RJ34e7ukr7 ўCXlc}(,dq s&S'W:ӛ2m bEjzDlֹ2jko{!نj(U݀*/&"gܲ/W4MՂcd<ݵovg1;) dv 4;{ݢ[X86kl.N{6#4mB3|y,S 30P9j# PYRF@tQ Iց JB(肚WUq@@A0h)DIQT dELG6b"UqCHADDEuD۵->qB] xP.Ţ#Gf O3UdKTBD~j #$ȂT XȨL@IE$ dԇH`D̂ljuCqD2'|@ "ȊH(+-@I$DTUy2 D3P碮+"&0 X3)j TmUFDFEb j+hȤ`-fE u.SHH (H #%D./,*Ѵ"SAR*'F@U)a"l3C9du:X F}s d!  # T@EF)'l6`Z"\CΎ7CQo4tSȇK"kW ""dK*`y|S$<õ MX:(g"AM0ފS1~᐀BEQaAb$qG$j\HDYd@cN )h!4%*%P H C 0RA~AyxEmQsAeeVH"?HJ:$GeF̸d]Wp n-i 7`v6rM hAfFml,}LK 簚I7bHzyd0@Qa[lSqEd0QB VI$2BVzLrNlfIުQC!$$&0 Bb 'YI%Nm dςWQDxȨE;!Fi 0ރZC=# T! I"H &OsLoK !VBR $L}DDY8%{ojBy:AO$jZ=gd/aِ-PF!$PQUdjag1U^ Y`HU8lg-wL*Hj!Q$PI͙*y'WACtBBAAH~MXuCPN)Oﮠqa7`DI M\VevYN>F (aH fZ "iHJBIPv !Xr><cMt,[%*Lq 7"2.~p8e-iOa A$A ȝTtE&rࢁ$Wgb LT1j6rx aDJLC.=,.=G+#EXCm$dSl!ٝgV`+;<YlqdNⰖͅVCX A D[u![&͑73xCЈ*fj6c3b6,E3EXx{­9oyeF>2@sĐÄKT?߄S; ZĎ0}͍~ !Js@7RBCI3maLu(I4kfoAaAZ*h *TD,%L\ou@J0ɵ cЏ NZ*D"0%E T&maz?aXf\_.qa+΢xtm^/}K3)<5Qo箶kAnsD F_jc?>_Qx8>ϝZ9Mi4}Hkc_+urY;i\k=債?~ F}Frm)pdH\_lޕ5 aŹv}ݫG ƶs[KA.,5ߏ*">X. iN&c[~%em; zOY7lÓݸ_>Tx~G կ|Q7'>ݿe+{N[O8{5jE:>]"213KEô0o~y9H߬Z?RQlAqy])V/C qH۴j^..[\i&hnwzoچsӥ:9]doZ~'Nm5Y`qCbM'Eo!5Yڛ;c̋gsٿ&=|?UhE{m?wW.RmoBDWЀ BA@Aw~xz[x+gNśvrjZ.\NŽ2H>T?r0oY}0u3nVtU.#e%2T =Aq6[nI"ixC zSZBgM_nIeQD,yQ1XV - P i(ԁRA+[>6p6rBr.ZVE#%E*eR|4m]ŵ\]2$"Uk}_KTWc%jɕ z>yۏlo}DOR_htv'kOٶx= [i"t× .[sRT" (Adzk4+L@@kP4 t|bk"k"ƥcS V IHN~a;ov [*R9d*Z\ƕ nXi41$+s=^+* %9w`RB1͑p{s/Ncw!'N'_$o\{@mi•6tXL)q\&k Xkmi4F~D<TTF!dP[ Xhv0KqE-n$* *ZScL-*!Dr?xBJM(E8 @[2F`+:^ Mo}2E:YF9ێ4|WmEtX\6J<.PJVB 7mvύf)$ R,eBaUaWo_ p)AXmr12J1 +sW?ˑhE$j}绹&:mmmUEQ3#g=V>ܰ]dc5bj#l섟gnM4IlJSd <8rC8lf 8ٶy7e3-X w6ABreek1Vdr#jf[\L`=KxS5 Tcl>,~&pq>O 1>\4)+o3+3aFMLB!"G 5ӳ p<͵NN0.In\iEKL Zps T^in ,ZݦlwЦM|;Xv;wa;r`Jմh-& :IppgWƮ}4;",!20QˍJo©JA fGXY6[T3t0 =o  o]275 AKYJDl1!QBl1*8#deb*X2e V8_D{O hpߝd)U8slTT KKCnÁdrYK e틢qC.!NG9 g}TDTX1"0AdTX ES\yt3w6}3J7\sNtG&BtY[U* ˙"f4QR{nݝec85AXS)kI^}672&L RV*;Y.`)Q.[cS2=xXo $W ùB$NHp7|.zT9ұ!=ae`+h11E[,DSSk+Vz8b+q_g [U$I8bQ+bNWBUZ P fapYL 0M& rTL[YU=)Э'*RAtf:tzg_!2x(Z]k.YG,䂨JU#;0޷!6s/u  Ru3N ~t)"$2h o&b(.tT>aSd(fWCgbߍ(k R @,1Iq VR/ )`b{eS!mA!77wy 64m c.(0 eT بpF6dꚛYmܳfW( Rp^ob@4BBn3=V3AJ,g-"h3QD)PAHifIiĒra:* V^v-ITr޸9o~:ѩf2ܨa` jP%j&/a\qyd=n)R$H.h \#ZЍMj .^!w3^s1,I NkJZ)0$`+F\$^rÏэPjU 9ٯ"m,ZP `Hc{Lja@@^(1Aí@*U5=uЇnwܰVՁ`C}5$Lʡ&`K8.* XdJW[e*V2E tIV 7R!`AzV 5!IOaXkJ]ݯ52P1vg\p3 ]|b \RaQJCpq4`;-PMUTA MLP+<1@F(*RECPBCZ U 'a`Jx2&e QP$E)}hH'3z%VOJ8sKQmA%UQW!."Ɛ &bjBBeYOIӺS7b"MnI($PPM} .A͒E̴UDMkW\fӃp]XCjΙw=){bD;vUUQ;vV+D{W"XxI #_pdjNʴ-]&X5yfڃ1&ʼn {5toqE:+\D^:l߽a"Q UQUb,EDUH0QƱEUQE<'o5*UTÂuU%ɾ?Ly{}qyaaciьn1y"AaqѼ{l9T08|?s7@ëW u#u;lۇƳܷ\\a> !sɸ [rnF}~Zy_fhC9uZA-9#P&`w2+S?w^3"&Q96iZԆԊp".hj*BijCzK 20Bs }4*3@*V6v&a.#tu0q `&Pj!Fx 1+ >&'"vQ_y<,Oq;ߑg8;Eeg9`~ggHp0=@bzkz^У{7{v^ɋ^פ`ݒ/%mϫ3.\h$Q g&&6mPC@J 8%*Hy';A45=0K0Yejvb w HFӹ,um(4R1e3o8GŒ""fAEA IH)a2f+|Xt^[d-X J)l4GBsS*YM׌ < vթE63Z<0 Ihӎ5H ,ZNĺ=Vf҄icgk'\v+}EDʼ/9CL)Wothg:4]M!VVx$S.7|9tv;'8rYpb][]V5C̑YH@f{7)`RQB9Oސ ZeQL2m%{{/ usueiP&<ؿ_>D: EfK4 ̨I#€%FSlfks+Qv -0*C3Zt8ܟY5V)$36ѻ&t3[Kށ'&S$l6vAV\2Fs岆Y:2@q((/!8 /Dn1R ]$gkqNBh9HK;"c]J!\D< rvaG2KT@] ℑ אhhKu j˄ҠejZn<2GvC͝-AT EԒ[$5o8M|0V0Zǐ@0JX1 <&.zciyԮ^y$vH"[9|XUd6Br)) 6u.sr)YpV4T#w1i>ZĄ{O/ٻY@@ABgǏM5!8mxz?i_G0vɼ{PoyL*Mnstbv}t|n֞r~zVZns7~C?{m|_{iEm8_r^&C-vqwʍFC{]6}[ۇ /tl>̆=bay豋;ۣmS=ݕwsޣ_3-/y:zivEvH.on/7WZCxԨ{{/@TQy,&?RZ܆jQ Inb RVDIjKnzWg0ݮ'zc}f1\,o > f6'-UX/>۩i{}G7\s?ɾ;bS}tbWˇp8EU5¶|Չ16lN]IKa # #WY3= *`{Hr2uUD̈ oTiHƖ#0o{ ~cbշ0G\zfGu_im<ߥt4ƻ>·x}=[}|=W`jug]]M~BKiaU+f:~J$Q:9HRlňM?|C syؤv~6~Nert#vs:ϳ}S j?wVyoZ=ZoZ̖;U/\ fOqx]OY/'+F: ޳be`s;)xdnwr~N%yި|{ew4.Y`zWi0Hh;?bU}/1l\U#D/?qR6UKV-v-ٟb7?Cp2o٫轗a-Ns!ge5r0_OLͺImb?xJ?}Vٺ8Z'm-'*7Eg)~c|uيd=v~ Kwg9/[!ђ0HNKI@PUPDb*\{yH;~UPj PD_gV!- ϧES{('O/DÂ誙j$("@wS$"1c9DZ;\ܺ]|ܤ[P;OI[ev6젪?O E@Hh px⁳DAOEVAKP6 5 ?"Qd-: DQtqE q`*)""Ȅ HlPmBEEYCQP. " zت\ ``D`"O[:+0zx?S{~2sC9RX@RDU"*qL =UAe|6( 梦1~%uPD(_y- *빒sn WɿNڭ;#]϶^VBC aeK?+k~2_0UpoipkOn.L'ޞYzk#B>^v7xH9ʞ!v_1?ڲV 2o B>{UΗc89Ko Ck߸"0!pgDŝAQxJI"8 MjT2@ DR;c5pPvrKu9|o-X9xVg}͔q~#[7HL0&[:q{3\:-otQibIH ;PDdX'\>z4IYT5ۻN50_n9Ug#P+^}/0ڝU 9yL)f?hA9;@Gh;Zb@gӢ@s,3lhoOgsj<̴b wtA^5 edw\Jd$ F]3c:/hZ5 9QL.A[[{B^t/qx9}B c]fq4/Z;3(aJʩS֟Ҁ9v| :?7wd>[O\$K~[4˛k~-leϞ)/woW_?, ߈_Mٛ]%TlEbZ̫B"6d?-OA*(%"hєјCmMC܀{ 0$qQ{]ݚ8ǣ8# k$)jĨb=0>ÛxC" 9{=1=QX%-Ga(RW-1!SƟ>- 8Yf4rh9R~W6 noe];TT%a>gchs/>oiMz{gOCvyYZ?Jc-~bgeo=kkO t,VӼ"m\Fb85?:{w\ On."6X=n7VMM iVic#9R>;e~"[Bֺgv2]Mjŝu01zZoRiF}}/.._'Vn[W_:5y]/ ju>^GOa581ڹqo_VƸ bumOčaMT@Xޕ ¾?ѩ` fsLtWkC&̙$G8Jzμr.ihF!# Gf힋|u/{͌e! g;q8Ƿ al /g=_1Ǯ((_%ҋ6:" !|c-]5hMWȢv?rus}E\[}^ O7_.ʊ_@GC8zם[ Խg ݥ#G"-u-}Oub^0<5z-l}_ϋ _џ~zZ2]K|YrWAFTo=|ugs]Ѹ! qL^]foPer؋<"x֚ힱ U晟\Y}%1Z`adx2 zZ+2B&͏ 9io]m8>]ds7e rn`EgH9[lXw2XK *%Z\ I _~j'(# _f[0\1*ibѲ.8-)PUS?eyڵv. ;ii@}X2ܸ΄8@Bb4k<e8Lp44B.oM&瓡ZEw+g$qBvLMFͩr)"n<ް%: dbն,ٴ(BAA|gXZtaCǾ$;0PrJWP` eWzWz\e9|&ԑqUM?D*BVlO|T*Qе];]2^N>?25|Mo Wzo 텤uTXҪ۞^? Ec\S_{;ӠKG*pF}gl-RVNkrla:Ɍ?p}:1rߗSmz6~UC&`t3#"1J{~ڭd.FYpUZ C#'Y-лmwJoMܷiqYnj' [݀%ꙕAiBb;f$kC63spNIƧg9[[wms|_2z"h%l4֎/4\I$7A\F}uߨ߾+gʯpn'V!J۱Q= Ϳ ^x8qo}GųK+$I$HvzIii 0 0 0[߹2[u(5kEE%W[([X}}z$L6d?ј[OEM4MYa\kMfoў((O~o$dVMY$aqQEQEQE__Q=;/˷s:1qq_4ˣ/M4M4M4Q7a^^VfSNCG]>jI ƵӁIoܦ@{GAl lPUǥhϳPmO04+ `a?{|DESB yy FT=&AVl $UVeր<؅EC&2d=/E}zT $ Gyڢ,QNCPX+ 4AT@@ "r+J# HEa8}O&/Ա.??yFtZ#;Zj="cm 6`/㨀g02DA{?[!8n;pLX1|}2?ϊa?~?%ntf!V5jY1b{3vWwӪ=m0X?/} ޏi.0''''&AZEQVIA8}nl֦]Ls߿~u|ɶ;nyy/[ W~a--jf lG &pcYY01-˫VƤX0FϺ4̿`ĽׁXsh9Ŋ?q(f [?[HF?Ivgb8rh ffJM!&_ҷ4 RVqBmfǏχ?븢Cv?Z>" 4Լpm~w#`i =SmSzH~i^z%htj:*Ib.k[1˞W0>93' H:b]f7a\l#{{syfdk=YYr706[{}YGr.Z۟ci$+:b9㝀upf7T;\G׳~X߽M^txzU4&WbKFp-ych6_v\?Z$?AW so}ƅj) =kR6q=ݦe)UԐ0s1tNҝ_z.:PUSjՂn\BbP4xb/DdJ˭{0闘%phǝ5ۥV teM'6I Su畟V@o]T"S<:bȂV8b&-ggcaRnm}~j_AjSx>]8P%EAc֕\6\y\d̈́&S?o+[󝿝$f*b^$<1Y'.> 㽍XE=qS~J QFPJQIG:h9Y,w?6z2$sU}l9Ym!i *8x䆒 8B?|[P̱1ϳ-P #jK kQ'{rv1bļ^_K3TlvN).k`]]gv2>~IM5U}sE; 3dg~נ-ZGժXcssH˯m&\l\%hۘőz9 ݌vaӝ|H~{B$]R6  $r6no 4yuWcMڞKz76bEVM: HIp:v:z.~ףqԁғAdyS$q +=d)e HnXHX3;A* 1K›du-:erL Evj9FOZX1+"Aƾs]^Hk+ k_skĂ!I%^$s]0KJof\ܮ[~Їu"^E}}ߵuc0۽Wy~"#o#VDDb9pPS{ obDkw+e_MQ^W} ٴc SijX i YDEg|w^b rƘ?2j+' Fh hNp?bb1z5[gxT0ʪgӹ}Pٕ^X/fESG};>,U|*t,XdЙ3g7{5Y5˭܍{q*.4NSsޭer<6`ݺ3`0:t6r1Kqc)3n& EY˼q|O&OlٰtJrK^:::)\Sώj5Xa~T^)_rrعZ;+-5]հc9Chi^Kޭ7n"Kl9硆v}NUǿcA/zTs@tCSꬒD@$ILYÈt5?Ҵzm!|qfXN7gb|?S}U s/j̗YRh[T玜3hVxϹ<Vs.lO^୫"YL4^@5 쁀/{v3ĻP|{9oelݯZkێV;MBѵ\c˳?cpA30'FVTxVF~r#ΠJ dKq{/[-I#r uݭL2ظ[u ( n:Y1o| <6K㌮IZo|{MomH= p窺־D3x-Eg墈85OFTHjCq:sgtxO2{^?{E@Չ ~@NF׵>/װR˷S9V:R^6l|eC3``gD5R;T ?,-R[?tCt1tE]v w75^s nȼ+.O&_̖zz98'[*ec^fm1L6=FnIJ#M`Zhmz9g2ݭ8q t?o)c|(hu~poOOrXN=ܳCKRE90CGjOwrY{=qq8w :lk}uqYQSb D Ds1ƫ$ݿG v7$,uy9=ԡC{%kP\ԅ4t}EhFFr"/"5لO=۞27-$}7#|>>trsT{K0:0Mc^Mh]&E;NQY3b3+479 f-\\cteS#BGiD Iç#^:N҈(4Sg(ę |1c>]bNڊINd8=uPl+T1 {LJ#6p{gT[OGuo&{j?rIsq- "vo6L$mKU(yCZ%k҇i5̛r, ZŌ޵݋Si[xlF? ̝$-yrlP^ki|Oun$",JYhH22b"\!"d2/}/Z#N K9͠ɜ׻ JL3M rڋ{);|k3:Uiۛ&]* KxL/:0eun=gX:x]gfz*;WSz_3(wc9W,n}%> )\ Τ#v4}@kF I,)9%g[0F){C`Йva0gZѷf댯`d?I>& }`Fr>W@!z>6HDdY$DI@X d9d$RF2 jh"At$WI2EBA Vo^77w hdĶ`10v sxƩ-Vі;oķoMڼ yvVjРAFB+}S0a _?Ly8m?sM@`d28 xCh2ZD 9IΧ=2@H'ptoYϵS5J>e@އM3g _/yTO«](v0|]Ff~_.O?.m싆% K>1 @ad!˄nrUNFUz3k o>EzXS6X%[9Kko`DJy5^\[ gcYwF yw\z&,+ftAÁbkF=?-C:,'h5mv/$@JF__T7鋄4 ]>=$?EJ`d,<+a@IyVsF/GV22dQP/aԎ(Ǣ'nAґ4~=A/sᎎ;US<7^7ɒƳuEt?THpu[˂A`}~i5Ok).Q6 c2dԔX<d$`I]R-~9iDe ?hJK܍季M޴<s_NGqV>p[o0 = ]5v^5.<Xi&58sVn̻|!VE!.333&[Y,E?)[Vܓ'cxW!o!O~q\\sǘc紸nxsÿp,gdi"]@=m7rWx.߸E_]BŃ⵬͎CE2M#?jRZq wHgV(ls3eO0Ɗ802y[RYM>*LEC]qmŕ[j/7l_~r5_siښŹSG_v>K{9v:?eeOze6cM9xJ-j@չ~Ό $=Os?]g^M[Vv< r GnTS2̭mтlqVeP4Jc-Ԛhzs}m!ʆS˿Zmۛ(=7FOS* 䂩 |G:tІ'88"{uuG&*b|bn+AIFFE0AMm/bI@-k ADA1*O)")bٍ|+;orϯIʍC*$O \5iwҧ+\%z ā ,&w~V?4RmgM{_]av?]~V_=_XLw_>ߦ}V#Zk%0!7xliۋhD2w'm#*w^$o$_|tR:{WSA}zNZф[[>֪*:ې_1QR}k}%jvy ⿫lֳr=ݮP[ľ{ 9isxG׽{=7ZO c>#K:JLq?{ҵq;0ܾ7oS]9lW7|lJZf -lx~$hR=$ >P$DB_3F,v_ݛݴNuVNPEn衴݌3C1obs=/d;}1Ӳ2XfM4@=0*P8Aނq{(ep PW&=PQR^?|_w34؈QsT=WƎ l[팠zKܦG;R3C1T=h(}d{sWiW8+ ϖG~jp;.vuQvБ~ϭ0:ijȧg;v|2d^ڴ־Kp^^Woڍ6>+LL$IK~y$OIsV{,C~y1'IB{}Ui[[. h KP5ébC7!%}֋/V@Ivv}C/`o~<ac!Ġ:w/@⠀\3!(~mqi6,꺊5aB?cc:kIp~Ⱦ;9DGOa*0wKҳ~ (kdŢ͗ l?[˅H{:w[ `rÑͯ];nv i`YNFAgܠG D I ܌Rͦ~ǃi\झjߺ57N^ۓpo۟pظA~lКKn~l݋:+|0J?'T(PߣĮw~wʦhvMuňaDpP;~}ݥwoo VfjTQsQo&?- =W<f5{YEFUߞb{I 5,mDgn^x;ݶ;mb]wW&.n)1vޱ(ڊXd:g=9u=kASs#:gKo#IȬWP f \dlz=Np/\urpr2^`e;6)l=Svw~~_vd} d1_'k*׵45),X?A}3no7=] q8## )'7U}~o+:N˔f poXMGG!dE:-kvD@$D$Q2"! TT)P9J%I@$@5H1mD Q* !QdV@Pj%@ (H(+"-D$T:NGiK",,"N/M k qf>_A!t\SAoEl2/E2i/Sv/eiDH *PQHXl--dPJ@XX$YbBJ+. CB,XEXHe"RQI")TX"I!" 0$UPPP1bE(EX*FAygnݓÙ(H(#"*0<=W(t7" UfPQ{t|-]Aא93og򼏋Iz~qWإ?zm^vP>KG:-ydm}J>(POknְC* B"um oUij< ~ŕ0F0 0281_G. jb~sҙ_vY  Cv3""(%YIZd",IC(edaPJ$(ABVRNu֓ L Ew-EdFET4Q#EiZ*M7*8N'.P{.@lX̌T/rX& c͕@xCE_@l0ce(&IS3 bA=czAAԘIKY)??}+.c*h @˶8< c}ou~(t$xS; 'RWL5!8|'n͂` ޞ)6Ֆ[30Ku).`˰\. j1~>[X~>k>>,opD1:Ut+>,f$?$PVx:|LI.->yq[Mfy[P-Yj+-9I"5p*X@UbAq*Y\_2O{])rxtik1XUUV6# FSH`$Ьɨ<(JrcuM Oǻ=>Aҿz~n(Y`m|-پwYa7z+b~aT 6nYժ>,a\u%*DF(!⁳BiQ((ܨ*=Ty,Qd660nOeϗu;U,.OP{^w z0U[  `hR(t 8*4qT(|vj}_Qy8ܷ3v9JP <_tTvSôHS r%@_[fEt?q3~ax\|w񯳘-B¾Uhwu3 D j#~ kIH؜#(=rOrX?V@_N)iD@nG@?4.A\ˤ&m{۠00kLj{=誚TFu¥$4tF6KQ;rP$fm*5[AqLˡEû4߀_(zl"+eAZL6u^MvY /dx .`6lٯ͏q˧j_1DDDDDDD8wwwywx͛3Ҷ|rK?0G*2O$I$= $}}ňEv#Q#2I$I$M86udAAKF0 0 39AA@jT4ZaQEQ?r?<<ݣ}/$]TE<_I$I%j@28(*,sAA@P~W"Bfaa881Ê)aa CyyqוUa`lGfC<$(ls]bLιqkAA" Se}ߓ=  ɧPJQ7JH>Oq&M,Q##y^vbKh[U>+tQ7ẍGD wh8yw g#,$Kk=k{/گ !#ag!m *w󸘣acHUTmof+VTۋ%_wدWz\K9кDͳT^O|&p~N+Eu:0OF&"Y! ĖyDH*qo_y^)@OZ^x^/g~~kk #Hō3+؝} 8"vy֝[nwr|P>g]~Y9˂k9K^ MIb`/MISEkWm:P}#Oǯ[pǿ͆Dz9\vpý*0lo5u.37Ynu!zܮIX9zc7N){+hIkf7` * 7rb]+>¡F.aAlYhvڂe@" K> }_, Y7wr7>CϩtK=\dlk Rbs,g?&&!oh;{91]6+ultPGw٫ڭ񾦛y._֭J7{hp2ցe]y=xJL=3={}3\͚kZtu3aSɎ)sl<+,ٮ {/2 I,O{Gq7| xݵkj<㽌$DOJH\m:QA3B>Ze60܍$R\9ʵ>ώ ||Y3|6x;eH;d6ڏ3 Kkf@wm& 1vӗ'ԏ쇘cC[5ջ$KҸkHʞt <7? tZg 6 ĭTtvU<>hB54Z GۍFqSrD4@]&am 9 QFy4\0$.!8NCsƨy7> Ƀó>ϸÌC72G&@5`'k"/ KT2Ŏik4r8hItJ$dаH$`z5 w`C9ŝF7k{̥uƭp{V@TkwBv(l 5H8.r;OLC.+IH ?fO"~wEʇ1)&9J$FC+u%v uKNLNOO dQךvevo$E^퓭V-5)8ʱm҃a,wt.2l{1jKcj".nJlo1B@9Ab]P3d;IgA!\3Y~s4I߁Gr?`xخzZ%)|$0сƢh6O(ԩgn esf éQ,[.j֪i7ΑZEҶ6;(  {׃[*'>ؽSY.J.UTc(>tk!߭kWp(F'u= VO!d#E+UU=}0v9e"g4+jwN{;ٳk'ײfwuVZ};$- v+HFq=<)s9].I=Ic!JX!EA!d ,+rAeI˦̷2$TUNt1-Nk[ȶ2ΜWd[r?W4Oڸ cXqR#M^t{j,oR .)0s}Gd9wQZ?oMݫQbO)<;˥w M[8ԕi@kLorO~:>/mLV {~"%g?a}Ҽ/dzجk>a̓6BMR8i5^bީ\L ӛ{z+`zLwRyM H{[ucB NšZ{83W.M'{>/ꌫ ϣ߹.S9Nc幾k<9s7шU357Ü1u"r(R1x;hCnvW~6xcTPO8/Z ήI{էPM" sϯ d `+IHk{ 33wߒ MT_ VeO&z+kĹ Ĝ\ D.ŇIxI$DP>N<-w_eBH?WcR.ӹ:rs4qw#Ar;<%r]ΠЊȢ:k&dBj;QE.A2gґda,v& @J_?璋L4pr9SBFogntzzΠ=&pRVJdЃ$BB)$8*&巉(n tYvIh#Ǔ$U:|sȝw7G>Џ/PSnC rqSOPYSpUW\7+o7;"w|>>jgD?c 0q!(H}?=xƏ8yK~7 ^"R֯zHbO !8 U ~«W |%ɦZ3Xa *_ܑHS]-8ZG5P{rKtš/p47<@J5зgДp89b*8L]mQz-jb+>};qw޽!y qCfmr@ޚ 4Ҽyy辥dP!IAJtׯ[ MkgIm]o7~__:I9`|(CO"$!s%yAk5"/=*>|(U$Ncȅ Wύ@ æԺ9o0$qo#$کuI4# S;+M4M[zU_ (aBC ~L(QhL_~dBู@2:;/yd"`w?KzWܼ~s;mVr.ҫ)qұ,Gր;10GkWĝ_6<\_܂O#}w}u 2`}]R}AejdvS+Zt{h@Ǟ]V3.nYջy(ܧ7&kKBqa5uGv4Q]0Md #3(D  ` BqW>g( %2);Yk.@_)ҍ'[~+wٹ~0PIklҮ݂<9hNݟu?6 _! |-%} 쪞4?wh@+ NTywxQoc:ںŶAF1-8(c,w_I4GuvqY.E|.ᴳs^zus mؚ {xv+=a W9i}vmʇSr\.f h ևDql] G/ր*o"*} UGjxEKg9~78Yl 5_uYw8%(ty t].*Ffv7Hv$z_>g8rCSx$;m~cT9ޟY8V(QExީi"[ORɁc4#;L2)W],伕n?#P/r>vjĺ 3a`AȌ@^*~g4H2H$DFuAocܳ{UͰ&⟔qÓ4E)Sz2|80ZՋaiscV H/?Ip0XO  ,| $a<=keד q?$;3^Y]@y !p HoX Sj W <) ~I{UNB%a~*1 4۵&P[~L4P D,5a$~_AQ]CV/"ͬ+tXMUǸ,AD5J|]{EJ} g.!/oa%Cbb?z1q QI Unq.m_Or9;v5uzOl㱁A.bS2{kUIZHƸ+*X\ 낺GMn\?dժ:HDhw 7-oޥŢ$}4j?$N{/?wO =Q`gV']C37'yP'瞪yu9DtO9ݟ_:;hnY&$ <s-G(67aހ""2m=P'}4p}" AHS7wv-eI܏#r ʾ%mmMqlgAц/S'LvѽæGFRt/"'.3tʵyc4'qH< _._+~%@a5pXԀ\<O_GW=ǵ`o)_m Ma. *3QWio Y!\ ps1<.Q4WwYf6ۙ*fil}՝ס&-X*t!T0! Tr,8u LsGQq[*LL n!<, REXJ1颍j#E׍dHl@>KeIPrXa":Mb0 (DH(,`s)!pc$Ah pHi fYt?s+rŀ^ x6t S^*p΍E,@jִ@ HA Y+I+@3 ;^pINOaˍl>S\s}ʲ Ep/֝w幎2=$mbJ1sLp`&iԶq.}j{ +SrqZ"q^f}m@Q}UJY6*˒Zp*ɂ,dԄ0Eܡ(9Psn./B4]Rͤ۾4<>N<D09F4࡟(F .xEpjk[ aG[d a>mκ&ai &a^dduTC@c_XץMa)$$Hb(bl]"y[[Rzu" Ā[#WScmF9yEZ\ Ejjpu03c>ǥXhk$!R2^,ӒM bFUQ>Ҝ7~KAYeQ~) s3xIMO2ViS_ɦLj0^ S>g'5B;)XNpqͳ-$bF3OKAqXNjԚ4{otWJ$ԺLOIG>딱ӅE4JO#5qyW KQcOfDž BT'.XEKja&A%}0 @N ."HlZHD=5Rnv!DmIilyHaz41*wǯCsI/& V6VgU.uz7u˅3) Uh4tL4A䧁ПI*=pfm$r&F4m) <ȱV,.Yr)`HFс]wa sӅjkFH2v ׳,LY!)H-g[@y1{]hb0&o3^Ƿp\p#f?zo;Ǿrlƽ 73h=i0z/ gؤ-"I$p%D9cw\aLA\F?7-hS]۱kK+BNvz zY,ZePBJܧ~.'q/oB1ÎmZX8Ee;&3]Ѐ}x+ssWB0l[Fgm-'0$L袧oLӌ ; )j 4$+Ԫa3Yr~=֦BH{([wc߾[kFQC5Nf[ܱVnrݵv\Y y mghNw~QA}C-u^v}߰=mXBvHpJw+Cr_O汻*^/B~78(&H&N ѧqm5pQYi§7R#ZL@r~M'IS3<R, H1ň"*"(*1+(#`$|ݽߞ_+oyߞ|[pxHk)VX{5~qmG##k&]݂'m3Ğ#ۖN]MWựrh9 Q/׾#$φO8n8^ֱwԲ&$˙0>^ @:' Tzd@"Gl94_H젤/=ky#̰v}W4I(OeNz؊{V:jsHeGS.; ]/FLDĘ`pф "-À$5X{+p\=d  D{@x7u=m 7H6:&l2-gW?c.gܲMן̑ˀ߿`lKY3|DD5VRh("DHEQV+{w?_/cv{oú`:m:d(Վ+!|i$ fںG)  Eϣ{5f`Z\PİC7xh7q^$ڥqm.FPV"e򔃽3L9oO^\j ] ,;gv8n]kneި2N~*$¯:ٱIRC”oa'/ ܫ gDU =0w_zƞ> dIa l5:uIaߚ;p_LtR7063TX}cHsD Zdh86Mf\G~F4Ll}I:@'DK_38ˈPxGIfu侓+4' g$r'LƪF&K%r,שqf2tSv5&#%R…(3%"O188噯#׽":<)w2lh6Ⱦ|)kz@s. u -I;E_w,+&=LΣ+rոb)h a;ր{oN2 /p4z+$nĆ(hxdxk j_@CǍkH'o>ݴh)ۇٚ5XL`CaS.aMfO7iQc9Bt(`ˊEe0%`eiɛ0#^/5-}atκMqgf,FMZ.Q_ҧ3w%8ɰU;9nG[ϑqubHtDŲ#"|z> 0\QtK1!,VA t=y荈:P^ljAP˹] 3U>B;GCX Sr.N:fa^ra|ocՒ#X L+SCI| 1ӈlEy|0s5-Z0qX%e!ѽJl8~n,ՌIm#Ag 0u$oC I 42Ȱ0鯒`$ 嬼JvYgzR^_ D -1C>Euv>0:C5lwmyx88b蠂G[olPrSwk#04&/;:S"Рw!bYs8dZzh ,IFF3ZiJۧ(PLa3J5N&ۼKO9_۰<2=f9BdCI`x@%)l9"“8(5kHmI A$J!%:Q܀gDHWȝe]2QBM$,FI !ØEc]̼܍ !$;&0/ӍV80⵵To晋2M ј3"Nt0u(֧.WM+2 g%B^΍a:=7Q2TtX#ȓƜDՅj,N/omnt6zQu6f4؍@L5rw3i^qw#,6.% "n)na =CRΙYO% ofѰ)äiaT6Xm%x)c0`(f|R@3~BP vA˸҄4D,w Ee!"%X(nb"P#X+jX DDFF1 !}.LMF{Q PR~{|éSԅ`!a"DwmțW]EDXDdjo͠HɧNgFӒl(bɭW_7S3 V*4ZM~'AkN>ּT4 >4{6yL+$\c~ ԶYbbCuPDXls12^/jXW膏e鮃M:'ue8xƞ;]M5 w VB+ SE0) AZ vrsxaZM34ܑʄUx&|y8sFwn ,b]e]D{:8pw+]8&e:TpEK8:!7U<mڴ8) bbI$+\ĸ̂#KӠ#vKs|SO~n)(pܚo%";.<n@4Hj W?UpN غf"D ~o`$>c獭_>SiYq,V{aY9 [`YBL(*LƷiq~g^nuUby#7X ,Ē"D,:ݼm =y zbNl$6u>9rH75I`2)H ^.J?\/jp?ƥ|?GG VKɺtQK'w / O,IMPPVUխrPY +-ǻlI^#~!Ev,1;8rkZ_*aכ[MAC񪵮L.*H"25@0CX1gYrC"fHl5fd|f Wuj/ EX5T]]y½ >|M$fT᧺ ˄$)U -,,,"l,,,,,!kJvXXXXXXMXXY`` qFp-\ZTZws|W#C[׊{bLsy@mjR1HTAa=m~@ow\p3 "XqRǗ PzmJ&(W_*}Ā^q ~}w}WW׾WQW׼WW>5H4x  -Qx,yC# (Dw1HLg:y?O}K3T(}+vDA[jE}qV仺?.2,aI/%f9_z!}Gw*sBWih3 o$(] gy[n渲C$FDHbR#CUEtnɈ1"8A qXT~zT16(AULe+ZiQc3 $):Sd'xXF0 f\[@؜wL $0jCdF,b¤AqUVl,++'Lɧl"C8qaRb LtEd gnkNSlwtdےđHਲ*TuD闳jafmsٚvEiAdi*() ˆ5*iRj\5!*xj=GWOin|$c}@XGXMz_He+ɰr5K SqYQ|*wAXϢO?b 7:}ɭu{T䡇l~)(GG2 օyentAT7(6UW2"HW6R>y#lK1+D'gy[[7NC "[2~rO hʀ[8rQ8m$M!ꄑ2NQ <<Ɣ-R+i PvB/ 02K(IH ؂>@M0  LʂF-I9|.ˆ˳pږ?*Gx!{МN!;'Caw GQVH49>EJy F3΁+Lg30YjeYoZCDOe#(Vr7zmo6]llĒ#1h[YJFBHpRFz}2MEBaWΙn[y&f>UmRi^Ŋ`}* Kv9D0)cQIrX;(E##YlBeA2YbZ~{jwJo|C:1^DwzPnEDzeҏշ61# HA]*O& } s.҃t?X@_noA?ZΈ*T,| !aNW i $h8c^N`p՞K} 1Dc8~ 횯2}^b\4#x i2Gиu?d ȩԒL{=M U(0䅊mnzLzrepoB1/4D:dO5'!_пh-z\zwP$5L]5B=3ˁz'T)e=̈́BY=%IQ*"dh/uyt> t pנ񂂋,XDShOzcV,+Q y[){R]:,_HH5b)V-Ӣ1 Kh+WH¶jSZF#D p:009Gp88K*Ur[Un$aq!V,:mj yBlx>b~u1@}>Pv~?ii #)ݢ#vpbv't 92^"H -Xg9rU. "j$ics}OH~qet y1s9?`}L:mK`=E{_@?'GvD:wrpQt|Qa>QَG[\0[)~ 3F(eNUrmƿ A_&x~mZMZ T`Ĭm1 \gpI nph6$=OB]y\Gpu؏amNOa'p@,tC [)LDUҕɣYX &CEBݰBO|=Ov# ̒Éj8ICn+Ahp>Ԟ_DTUW3/V@_ŒEڡHTA @ $s?J9zwϦE_úgwnd+1,0 TF Ty  9 K7Iԩ =HXƿ rȬ|Z/#ڶv~hDZ{k u*WPF읙7U:o2H@%yrl"qhsPsH @'FH״1==O>p: mup>~}ӧxD}}&Pm FiXuge@h7 Ed+IdP AJhs=.b[vi?% AX 4mt=bO AR]U3Br=Tsxt jw&eٍ{YaBNH3[TeZSzmfrkbsOBr DP1_!Кo'~eKh)c싱"*LNC}=T"gLn;Qt܇Bl!bR ?`#,-~UY"#!rAo\nBITwA!4-w_W FR$''vd{@An>xxW ֲsdO_=s0`rB4R5;*CD>`]~[eH" z:*FyF+eTWykV=,}wc*2 t.&a'beB65Mt1'n 2]oI s>R= [FH: @tInZ`\Ll|)-ur)rk3RP~y_Y-OS+G.ى; =-r9E MFo }iG܉M2}ӓI)MvT Vjqt>]9g#7vi WaY{Cp saNiB6?Ԗ.I;<SZY|{3כj1!pH"E'^M0J$$]eL-kjRv*YX7=_HT.?W"rB.6vvzL{A; l$|@8EO? t 圷x9#~Bhxm%pZ]qg5PfٺWm22ȰMun n)(oXЦ1})2ۜ 9ycefSn(A[|^ %K5V dP/Aڍc ᓤe0op2l!"h+k*I{5<'ԍYIt8UàmoķjRN okY$Z}boN1fffE2vZ-6OA;`O$*o9H e~_ѠR &4?E>#%3) F~BwBH&E( 'UvzD Ⲉ=yp@_łE^-Pw#{EX7bcb%R1,Fn0y~#W" O+oJXD.?Oe;-}࿘y<r63qH0!$w1'Q7e]9>Hh9#5UOJmt|_{ГQUѬ>V=@2^.Oض^M젡gB8AG[m w޺7xqM{x9_-<)~r՝@})X@އ:()N[ nW&byȂ $X [x[n ouI1.#P$6=j[/FzΟ޸cI81g #ӂv%߇;,vD(NM-f>t+!3,FSo?Of.<}Yҟlqdo?-W}O]/d&HrqBiE)IWw|Z*] c0J&aha|=_yy8bݭ+@Ԍ9e"&;f?mqzf̵IYLhU* /Cf[Qpk""slgkZ6V/K$:GA2qTS!EM> %/*z؈пQ#yk${k"2'*-tQ"w\42T v'w aԿ;D9kpU]ky382^xgr0479IWC]gW&fmi'rw` 1c뺼wl ;8/ˊ~ +S0\d޹^z?+:ө/.w?:fIX?:9J H[s|?֪{DW'!q.C]"Ϝ :ͪ۷1 X$d;j^C:ԨbȆlVh/(2_3uQ#e2TdzI]sW9\J^La7Eʯ_5 >'P;T!}>Ux; `s'ky§Ne NT4Yy+:eP] wˆWn@JQMJF);:T*c^p_EEO#Drtl,q_ @_VW(ӻ53ՏҊw}8VB ?hᆧ~=OX zX{Ǿ%&sx2 oe}gG\@.Lr8#lFv gZ-t' V;$ bәoCɫ5z?vxCCO_73 *|ʠu_a㮗%7$H>L%{#.΁$YnQ.% k֐te$Ձ[eYՇ'<(A a[m˓D"8|[ Z]N4pI/ <|nXD6*>Іk.Wn%f[+}WG>L[.<ʎƝu:Ia oOx?S 1 %f I32@6X DTHI!:w|e*}f70+6YۭmȔpV[ BCF|C[+ '>ܱ,AdҏiD|h4sR*8'NnоOxpFCEQªમ%?ᖇyן][eLaF;I :\c#aV>ӯ4L?z_͇2f!9)FڳOwu $myR] l;.V9Y>SdLDnnkF;_<%~9JbTl<}(:S.jXLhW'vUWoZK1(_$*P& 8 yy\ }e Ԅ#E/]@hM1AYKňXu\Җ6GL N yWkEzGwTΏg- c==&u+=#r0nGȪ2gH>n3l$`8p)=_r1=Y1UawFˢZnzG(ضTq<$AdFuCYmm!e ̆[ l+ffC32̂îvw=M$.ۿ%;r~kc0@@6;Yw7"br&Ա|:whcLB;2Pv̨Sti`R/UoL_OSuEAǮz(i;lb s[!A!qX =u˴U 7-,]Q WcG.ǂg[:YiQe3+t45WWmg&4`,P{38{% ŞJ̌+l_E\?_mS?A4y}V+(: Q͆p$/bYWS^Rn|FfW֏+iZOp/Zywg'G{Ί{]>kO#z$ W+؄[{]bggS8GJ2Jʧh)';~\B[G>&|;YM}+c, 2>qئ E_1I3dݯ^nzW}-=Q?ٰY?c InQ @dmSNOwc]VCK34vG5U`1+L̘uWw_uD&/&5^ a 'uVd  H&JεӡZ>0͛E_|6J&U;8_5Cq ,=<%t[\9sGTV;N澾4-)t7(Q0U ~M+TD!&}noϝe mM=3S%KxxI`]ZsI ε4J%7)l!%VŸɱ>˯Z38%|Wso@yЄsƊCG5{{b)?_PM&{u.F&NWF+T"8t`X*rc QY#:dc\jAbC jSwXP鸝܎/Bw۲ޔ;Xo7R]d0[{ :Ns,M# Ԑ,g!.F r$@Pt(d JEat%ji- |9 vn+#re|&/`ŽY+*zLZgAbe :-SVu8;j0Sr8C@X!u[/yYADmafL& #*@9F3'[uOŹIR/ ː# ^!3t_kzG{9:\֒:jܢpkT98rGjmDľ/F(KSKMBW2Ye?b>40q u*?{+#}-rxp}>Kno9ӳWkAamZ er%y""- 90pҦi4EL Be^PAq[= Lҵ^J+ RMAR;8x 'W\.V ̐If)Z/ypz[w78]d2v" <.56wnכսt| mx~,O u5_Eo`!t+;XCS߂SV?dh!H|>ԞNb͕g{ oSi^;UγZBނ ! .._rypexb*?Eh{o1CKzOx|-iy H"DGSϓ3TbCU2OHH;52w!! ;ܕ Z"Vs09[3A1=of5-VzbkǍ'InN<0qU;;6^7 =Ϥq1V Jvfqo´tc)4\I7|. zݼ繣,KgzW4 '=/'OɦޛÃ˼s[2zX"ǕE 3LЃvP! Is| bJ O<~':(>0;g4np5Ջ v`|Ga[U>zvե5:ј{Zu<`e {noO>~‹VGҭzվWd1߫TǷ!tXV@R(?3Pq ,;yș`8Ê0_6vLM:ٙ@0A5j.Ts8_nY]f~],Ԏ>T We~C>+c-s1~}ׯׄeOB=dyr)^%Flxez <]Hʛdl-1]髝xEɯ8 މ!$^HL " }2G/M qI( ;I9oG㶍6&忥gCW9mX*GWp*Ys8<>@eo9=>+̓>\nE|j[`.N FO _6Lr~A|>szl7M.0 oIo℈})O S鯃mޯwG4O{p L=ﭺwB-W;߲p0[Wi^?Kd'rA;0]i#bqLC"" 6$5R^I[auҬZbSíI=Us{j*: ILUنx]Op-hfn䲅@,9I% Cv #-;Sː葒5~ ^]X jҔQ5KhM?M?̚EYVg}oJ%fx}]fO[}}HP5?L9\1>HT„+5[ D"Xڳ| U=x|io$`x(1L \g5@?r("!18o}x g~NQ#MDug'""I'7l*TN2=0hRVDn xIzk8Hb^YoySۖy1YFlV:d?:ψ͢lOI괊(m;-?d@s~W%o}:y^))gCZcVZ# L9L7 @'g=`u rccCX9^mVYCO)0`| eRA_=z=6RGtͺLk<7|{o^6T:s-׆K0rГc,k?i_{Zp${UKv0}+ | , A((|mєma6MʮY+N:si$@ ??,ҳf\>Gjm\.wa@7;}YLXd-uW::5<0 {7l19 0f-|m}) 1) 05֬׿_lcʧcrv,}L.֛.oCN|P71?}lh I-aU0E>*{=;O?gCjtezu㶝htN 90P(CIos)\4g]d͹]0lf φ#LFjF@iIւ -ѰͥvW b7](90 B3D$F志.vUPSJi-*k%? jn !+n̒/q1_W/|`|ý^X{+]٦|.1-L}0tV75u}x<<XwؚN=&72s/|sm6_g~&/fz%c[>/iǶƵ{ts{w{{|'GKMcb>qnj빭o7iSUNzxLuWEe;je$!DžK>]d 7:C v5ͼ .ڌcS#CUx !+-oz֍ y]E{F |-@)B{wx{nKV.ac2)gY}UcqҳԳdJ5q#YফbmEQG{_7oc{DgqnbUOu펢IzNC[hy ,ϳ{/{CVoR+/顈zmըt5޼B;lyQ㼼ԏ6u+u&(}WϺyq^UWsϼ˴6!4.셪{oi,]sK.CQ.AyNs ~87 W|’DBԂ64m؋5G\qn**vվޚSbmwi jΥlȥ,I'p|f/}_4aꮡ\*b2\}d9PDFlֻK mIﻮS̙tb[&6=Cz>]JWz~7_?Njmc̙ ,DfNZs\X)5?3mےx0lħfPM/.0.SKO\jEHʇ5xyԵZ喟ڱIqk9fO>sX<Mɶ}}g ~ CEMLj?LVeLsg;Qg 2 ".tQ_M 2NԴҭ%Ãvj>iU8//:0g[8{ 22Ib˟!͘"xӹO_Zƿ~\G@ץ?"_{QpsHX $so!pSuάLP2?}kĴه`<*H\cǺ< Gd~v_2W#Ԍ߸1:?}!1c"KkL;T*ws,w.{X0w&pEY{\+òLӈ UM&\9!zs̔Ǖ1ͼF:qI4MlL֬W*r2 ]ՁB}eN ՆX55#H$|+$&w- fKp7Yp4M͇|cu-uoxr?ȏ0!00P} &ubjBD]MF{X7;P…RJ֓>QAclHmSEx׀Y"w)qapLNC ĕ3 b-|xqyUn#~dv#V=},ds/n%D} ZM6int'vtUrxZu9:i17|(,QA :fLGmD}urڴRQЇ LI||R 6_=3 b 㦰 ='@ACփ?vy;2KR TLr)IZ"OH緔r =#8ÍxdH?r?Sz}+}\ 42>MbF D8ꍗtnJF̖#`clЖN&󯺖_xx1E׹q0|(^{LkHݪafnUU`orFnD&BE1۞p!zJݩCװɯuXn ݘ蟣u١8˥›#C)UZ^fX=uǟB F>T]ɛ4aǒ2DEEPTT`b "eATF*(***+#"+"UQHF1Uci**EPY(,D h1 nx>x"G$J1!P!v++>|r!`߿XƞOCi_k.=L2lWCL[zVsMzƇ{cfKIr6J2F†J}\l4u|xُ)2s@RÓ5zoWi OՉN#f3/ڂxO=LxI0?).ٵ\Կ-_#4z詝F?#4ӿb{IbD" w& AϱKQ_f˯ 9`%oW 0:uR3.nKiM-]ԙ]Q(ł*%E`EXEbEPTbF1 EPV"UPE`11QE Qb +V(,UD D&S̵FnWJ鿩r ^l:SX`gg~%%>!8ZP[q?{Lv5䷽mbv`u~!a\+]jw{"\|V{᷒w!Y1LEZZV~Ƀ?F4s>q;~\2Qя0lvt }AG{(a-,h |o9 2DdmZ۴h`mG}B j# ;4/sA-SdN}0_zG?]gozK[7)"܄ʂ 'm?Um`CU4DZgoSTYR(mlo&5s{=v:BH7C•}pc_sOQaXlj<3}ˣ&AhxQ5K _ %+̀BU{Jxzcs~f1?%A.S-*EsH' 9O[ueUuK7{WQi+_x-]Ӡu-HFkl@t#;Л 0:I.5T#"wK4[f+nMhrsuvPI*VOT }HvOz $hAm[ Lb9#ЩWPgy*{((2Yg3Gru@تX8!9ȑo9JL+G[XX#=Bp6udCVgcqJu6͠ Y/Aqu%(C{[a *FO0"93ll|?m;`,T]ҮomqS3$fI\ ocX(tr Z Lqk \:mP*"m<õeJoJL5lO-c>j yy>aC7OQ))#kni0{͓ ttAMG U\5U o# $C6oށ| <)g@dA@봮>ǝ]5٨&fHPYٳ[j&?;NO 2 ]yP DV_S3 ,m{sEu]e"?+ا a?ǒ!mֆ,%9~IFн $vaJd1wp,rpߚq>{!` d"HYB6C ʂ1{3%Gn \(txkFBG@DXMR ?r/j-O~nI{go)\Mnk#4y(~f+E7; Y_V_;\(;=P Xș@|;ads+{cYeDҰ@NH{,L"ʨJ}I2sp>!K rT4CP~}K]Q  ev kb7w30Qj-AUvqSX((MӝjFJcwXNȳD^acKJ%_12,ɇq nieYEfvWb昁UdrH 0oQ|ɪ0u/b۴݉1BWctڑ,h]&Qa޴ۡAYL˥RƂ-vzU`ƶ<p9P+0!$ɂm= D^܁+[X.fybҾm{ZP1QdJڎr@+gb2&@GJpr$w 'ϏB0!*ry5G>1Jńy$lK<ዡu^Exg<a93!d7R74 (;ʿ-,kr 鰃^1!̼gkXc^n)nF6fG|,պUٓcG8x&=6ƙ*(^>(RӒ+u/Ax7gCڇP`,|³`cD?Kc&\jaژABgZ1rpm~驛+f14%2Gf2s$Cp#RDYL- ᮤNS>EՀE!51l5/:j]a6^gn{≠%5!6E`'>M_s_cGwMt"[Í Bء)@9Ӝfvtdxkzr͛d2 7rv;.pwNFlCF˴I}DήTb\d%%h1If!I߱/2ĆX`$w8OT"+n0kBy%%塯 a^gvt@fgFjH'>yß2@?ˊ& 5%&Y^sCl5nS'Ò$L/IBd፨;MS$霻rVlwPave R⏓#\WˌQQɘ(5 [oWK! '#H!¸n 0H@mM$}BDiI6w'aVI4˻uH7;s DPY1!2 Rѽ!Qv`jWwە037f/bjzZ=L|Mv[3,U^iRit=d*eb7X".Y `R0fL4ځM"NNT[2!dGclvhPn<ږښ[[TfcaaxYK$#d^ZbMgD܌ȟCKP$|)^N-?J]qko%G_ĥi-7eRz'UY> NݛG{Ҫ82A}u)WE$#whk;nycNÇ+E규^^2rSmmiպپ̜82HrzxL$yHB< V“"p(:h8Bhiva'{Ξ֨Zi`óI hsؔ+_6^^gTw *Fx"K}قt3oltVu&GYR3ls$VtG!g RHQ$Ю\~z X?ĺa5]|WWnA;Tu6m z9Tj+b՜Mθo}& dgc\yRZm&y bI b1rK.6ʑ;5x 4 ƞR3r)iģb-!wEUEHo>_K;8ü H;Gt.s,<s{xOA7I麑=loC35Ќ!nC-WCHR8l9i`7TK3GۼϷ8Zu GZ>.:'ESgiW wXh`w7 xuяE8r}#XmvkvK~ ?ד1lאO@؋x]-Fۤn3^I띨LIxuJeD[\!.[x1ct 6IC pu5|\2f#vO\OZMjإ |&0\xbw8;fX '3X O 7x98'QЛ΅k$yhC`gh}.[Wl=n PA(vN2ډY^L<gWMq \tM}eRnge|T;(;67Wj1zZ7eN$p8{?{!zL,;EBmBd5pTo?} 15V.>mˇeh_ا}oe:Q s>GqUUiQ>+ck0 ucVkj j"G^~I@U{T_M@-h?P85*H@H!a$4 qn0yXz8l"stH{LN]n<=!}$e]F$YX>wK-yc6Fjf^7HX,aID )"K#.l{R|-\tl"ܦXZ >kb֭ ghe.ܯRl鏅q {{7ŵJ|ƙ!Ma.כ/_nx_&D|/Dh, 3!p^歒;cAFą@$4$>lr5}lT<̣l#-al-y6 3I?|6i,>B'aQcvmc3 aw咳g{n1Dگy~oVV?2]%r^~CGso1CrE;*Bb9.tg#W-bu~E1)H,&stá& zee?eeeʊBeoJYLYYZ-VVV2]72`ȑCA#"n:̉b2AL3}!&|.{Ua|tMVȫԶ3y3)Or<_Ih9U0Fh_3Vl}$/w%uMpJΙ; Ww`(/;&N՗r28l ta;zp8Wbi(3ј co`p8`g$WAB& wrH?d#"zb@Hix'$\Cןmg7V&0R`H_z'j]v;^ld/:d}ߏ{-XBOk0Ɠ^$Bs:$'>I#Ox?M, ZCص~eB6u֖ccccccY9cYth67k4Qs&@M+(9H( ڋL _[ePw>E qI*ȉB jߡWF/mc5{l;.5ygTV7[/nGYߝP;^CUOq~wp@# LyDY##n_{dvzKmvyoaIyWo7˕x^/y^/WȋԴpKIrU{`tu~=OIwcցe1g\4keݲk|r[!nan˔s`SOv}>2F={+GH"K?Bs*!3F[mG׋mO 1yY쬨[D.zuR<ܯ)uan*z6=!uݮ@%YJWE9ײ=AOfǂ7<|9%^{{ssZ@Ȫw? RB|)RE*&ɖ_fWkKb L]ٮ|%nK \VJd=O*,؋% Q’ Nu`^[*1:[G&g=L܃# P]Hp~ȅ+PjemU/6=on'Ӽ\xF u6S$̙q|5f C"x..dϼZ.\Ef_W0>M.O*g"@y8=<6dz~]VZdXY~ϜЈx6ZkݡJo;Ltc~ԝiR)}[ Q|>f>ġis*7Hm+/[W*!I!n)wQsտ=$~K $eBgٙӆW@;EJE:6m] #d'yąϥ;c$TGnFN3\9K +=TVgzGq] ɡQ&Ґp"Nd2 uA۽mD_^XWl(ofxq-<ϪZY*Cu-|/aK=blyyF55Ӥc#"yxnů^MD ֚Zo7 wmGU/**:}hʣ-*){S>R7F"ᧆ KJb濓Qw'-nʄ1, -""$m4k]j 6 mҚ(qJ鈮]SyHjmaY FTČ*օ T lڷ[ws0=L;T`UfBʼn T @5}k/9yq*zhϒЌm$1A]a»ZV*w18֛i"c:>9<ضYR \tEf._1`Vفy'ٶё?OPrd4$w, W[Xu [{5nnl}EFH?-jܰyA>_YwU\ ҁS!.|](QNعQ4[ieA-U3wpΘ5U'>\s3Johjъ{׼oO8f5{멕hvY[I{Ui84d+ lVc!""B G;<~W/rjvɤ@s 6_k6aS($Y43SM8,1L]DZw*C懜*~ Bl #v)R~i,PHYX4-,5ńZ(8AH},@p2 v>CA~.2UTg6kW͍ i ;`ްs_8>@}B!aB/dD*G4”rUBhdDD=K'};Ƕ_HmHL]D>{ˋM}q3;L95WQdUd`K?$gn˙hNxd"4 i |ܧ'iz(7~])0[vM楪6c (P2WR]唨 _7F>RIRçD/\}*|^,mܘSJ$~YGzi.6s%eS:ܕ9GP;Zdo@5I}^#,āNO 6ÇG $T4 3l*ǸO7"JtdkM3T'e>!]OJXgk5~ma~`Өp!ݼ ?U-7( c|!*;|EstB?Mrۑ6,*ǍMw *'D3ZF.*EΩ?Iб>3sRzZ,x&vE8jA255 J( TI:u+fta\>;%mj6-vHFD7[RQ'ߢB6ܵLܲF/Mjо,45aa} Y-{| 7QfaVXF6K&86I7Pm3M1hs&d2 8ipMR{!jv%Y-O6wjտiT/y5N^.vCY}^MkH)xL+ZUz_RL/lkgĪΠʉ"HCzEQ;M.OG&N#x3||wYh=_M!9q[W SW08ۚ݀, yvo"m[uu29 6nK+4]e[TsCy_G,iH*GV6e0J}`!`# ϩ'#*_+;%8CX2%N%%˵'l^?EL!3ΒIB\ٱoOVJ6w$E!$:&-֔%AQ`CL)ζbm_p:_Uwx_jh4ߦ8Ht 7n EJ#OВmkqܥq\g5{/]w /=otޞ'zO,TՔ  0:?5V"RP0pۼ u}xכ $`^ ڬ97) A`r4 E5alV<>kn"Qcbx&OF3޺`)m59Kkv(T*6S2+VZS,L&&-anOHp(HJw ӝPeZbQ'AS/!&wZ}rfg Z~lCf b F!bNcmn "&3}&$"?YM٪wXVuG=7$I"ʌG.ZF3[k+rDf9~$ɤ`]?֑?ȐuլS b oڊi JI]5UOi0fZ"b`!%;) D77lu7Ȍffa˴kp  I1As<=Wrз^ަ.'饐o3J)l!˚̚Žtv09ȉ?D Bq8P T(c7Oj՘êE~qf dVqJ,=:VlpwMT{& XH +h4'Q\ lI3>1Od/L/ا&(Un3t̅O=\~+j[jcD$ h&[nZ|waz}>,t»KEc;NC y߼&]gD􉾱LD$<[|lҳoyTZaCp @9Z4 tc9/,)7~]5睥I|B &3yw^Deڳ0RT[ULͭUFVSF8x7kZ"+Jn--۬F4QϠ W뒀BSEܡؠ~[-pœ1$<]0Mi'O6K[ ʾ}jLKH,1dಎ jzIw 50rRbWWY_~@E.yt˘gQ6Iכؒcџge&^%-v۫rQ`cNsEMJf0A߬# b7}WULC_}Ho : V!Iؘ>wEt&zE鲑}(XN[ Cq$T ?pspa`;c3Rg |Wov^ih2;h QvPs޸#vOWLHIG+u]ѥ} z} Ot #Ty߽ #_QTZLTE-CٟT㰤}=_@~Hċ=|`g-fKYlr“K>< Ѹdsߔ:@RG- G-ǸY IxŒRzeAE{rL)KH0a;_b9pNj#[]j֔[`$K|EpD`E?ɓ%4؇ۍ ?`-:Ɗui$m >nt]Ir˸N00Ðhi؎"L[B䯺:$mBg@\g!Mi#1yM8J a*_r@A?ɋTnFA_ f[n-@FR SNד-#%mPQ\)5{g'ʵ p&c&^,GTtiJ]= cuu,bS w0 ԦqLCk!ʂn1L 9onCEZaXsr<ړ˟;I_tMS@sM0F47-0@TmX 8(:^j|wٍLmJ@_iY4TH7ŷ'ʆ>]=;ꡃфhEus[s,u(unӸH GYQmg7Bp陼I֑˭N4N'HȠjNoZF <,H*RD IBsǯ[nWe ._/I3u3+u :|_}to;6 RDFt,ɦcr9fy5c,Wå^FfL?a펷 M^ʇ7p itHfm@w!# o @g~s-Nm~ @A"9躩珋\RGϔ8[B"ܒNDXB= b&YnqF7Ȍ!i#w'ޛЉ>ɧ !ۆr;SuNgdRGs\fz91yT!|}@: s _^--ÛiZw 7US"11_"ؘ 9qTv0ĜrT2 bN{Y"@  Lf{?mC6R =hTN ?NhqܤHgbg_x#DAlTA.if ܃ 7> >A%5]+8cֹ9$%ZVۗàǵf/xe  R'J^\بw Lf γÝHQQ)!RJH:&)Bp,T ə=yܳO)^O-E}N VZ3Jm (>Uw%5PtC i<{|oQUzxl  @$J|Z\eE*-oSpK#Vh'T/rϡ9k[dT,[]rezڭm}KՎ,y 8Tj__bwyPFԧSE\m/Enޛڕ8jVA%,J qvFE["$s7OxSݰ&5ֵᔼCkơX{ђF*s-+""9KݪNMklHC*B$FSN·^?e툌cj$-9ib>LN̾P<NFᣛ@{|<: r9ĸtgkXMUzz_d=lBh4@iIBLg+grb +SZ}޻1.4]!z:-:/ 5*}9DoLV`k}*jLf2'u3Ϡ/ J}2ڃϞ)>3QVcG?3 )U,tG=-Y2]1RHHcI}R /v+C^yrwOsPN|om-,ut{ );@X*賢Aww!~3N֏B:8e?_i$4odjtg^Tak@RlA(AaG>{ݗH@k $A!WJ<@{w;j_]=\@_n K!cN}<{?J<*VM\0 HCO6Q(Bo_\v}ݐWNJV07?~ AѢ9JtoѾ[s cБOuzHXݑ-{v(5mc|}MfІ#ڼ%[zݟtn}3 ӦhQ|MwW(XL7XqG0P+ -Nn!kZ6eUmŕ 6= 0$=-'B}Yn }{q'3)J s3;-bAab `*9"}Uf'6؍~Few=VGBs?G4& w0sgێsniRn*Jˤ A#&ryVlaUWm(Vs\5l(lu YJ80JO-UYG L/~e>MXa6o~^἗w0\׃R`qn+;c2 @smN<(w$&XR'9w^&=c baЮ n^nN@ڨ.Q$u0hFDK  b:&LJ".'} {TR\ Јmpcr&mfooFCl)Z"^ן+6n);e f$6 Nqmw:헣yp|83FXպd NDx?G|Z:x="=*v͈ iv|ԇj1]gȆjD0K3 mS݉~5RhbZLD*3~oV|[mIm.ͶJv37؇_^rC?8ĥ@CA4ofim@j6`J åJKV!PiUN`fs8q09d`\lF"?HЁ9v!{o˚ ps-`^y qC2ح>u^E":6C8£R:, 8&s1')2z]O}:;&=j )R?VE%;eg1W+"KQ'973<Au:X`k76~ffaV3#̷),^v`b 6KIL/7fz}7/, ͆=|ΙFN>Tpܿ-$-f-re^%ǰz-'ʁ#/\L(K!oM蜯ť]w"!J!?M[g`eim`EER у),\}Wi&$QiT `0!2(T4 so5lPl^Y~U*w 'ѽ1`9|: GMOw'n);bzËv?>Y:CW.^,?q+ݹKSKx$`@:]>!^c8E~~捗A-?9a+l <w"h?rr|"ի9ݤx>pL,*YCjY: L!A>OgN[PSLeӻ/[7YsS2j]?~ۂZӬ OPy)]1{3Oܠ|]?ע~SVN!5U}}U!գ;:(Jşk68dWb]s\Akr[ih .`{C( h=۰W:|XB |9S>ĸlKK崕gH1aEcRعL^'IuW7{g?P?7pm}1{ ]N^P/ f֭)]ƱzSrpt9/[u<˰8~s>#sZ;ATK9'[,8_|iJ\xu-rL4vd,O{OŖ>B_WÉA>  x1!E|Z&o WXn_뼆A۝GdYYg&wE Gy_Phҗg$,On9˱] )"p?2W A'9c苪JXF@E |[T_;7.^A{*H$ɣ(O󅲘i?doBjw^E&>={qo%34h"7FN,"r%H$"F8O ځ ؔR=2Dsw `HM H#7)ٮ 5 L>r]ЃrMEd|m_ްꮞ&JLgPAQv<Ɇ>oEj*q͸mkW ~~ZzCͻEBRS#%DA*( P C{?q>/'u[[Tn-R &Ps!AH9H?}_$ = |Q! FBeJ d@ xU'AYHlܯGG]@a&l/_G9/ЎNВ1~q|),?"lCZ١۷2͙݁H/v'G#><{BLR옄!&0qܺ72c lԣz;HRDK&iw4Vkg q_m/,@Q܎_$ ԃnI9ƲjV]G.?[)Dzܾ=ף Bo=h]Hr#Cghؚz3{FyQ##dF! 25 y\+g9?8y;߂0 ! -l&,r0scw08ac1rGBH`8'; rMQZ2N^ZpcDR;#r1g|0 GB(1@[257mYc@ t~c3~vOgx/ ;C}NIPIɃ&Vv:iʝX6ycpx5#2ɇwnju{+7ҩ[::_JA{fNA5AR0w<ٍ_y@+Q!DJ$H)Wk:pBt~|]Sa.9ҏtEԴ/8 W=(>̧* A&[dfu!w8/[S^Kl-レ^R\91.2A׍WG]uЙ =jCF'8CCdBH+Ds",K$|G 8XxfNpr59CgTxTS%25i`h[l7hziom kn+5a 5Ϲ_ˊ^IH?F$2hߟ/W4f9^glM`KiiIIҥ[wH}݅RcFvF@0@}`]L =-v Up-3(IMSߧ *tt޵_?+דƫh?>?gyoroyٵ ۿya I3._:K*p}2.eNDs =UJi0jF〛-uTL~IH&v|12L/EvɈįyVe<߆Y3dg34>[g9 9p+Hs o$e-_C7Xy0 pzzZOkȼsuh&7X$J!kjG MU ʣʶʹ%BR6 Nd]FQy}ޚ~k&[7Lg$p9 .v+gvoH0NQߟ7*/17?R?P7`A:UẬXF:Ϛ ~(@;V_ fU{Uš5tpuP;vdfE7r'k7q*uWA+Ѹ}x|^akt*~2ǿHm^. %.#M Y\ y@G49L~CͶ{`P!ǘQ$'`(O՝8e"ꤧ)\4 1Vmg ,םMC];L(a(eI*"9Qw$yZ 9=|5-zVd<7V&BTԸƵ6 oR="y Zc6[nE_Mq.5ZA5ˀ;g^席F`8v͈b"F!$D'IO!qEbnϺO{暔B$FG5W_Ɇ!CxZnL\ Ϗqs(ؑn(>3:駧'ooI4ZTXV6#cdG(QUOOsk+G:EkDWu/Y^xf4W=nIc]Lbgc^aufk5 Bq5SNb1u"P6O#kyc03~ߑםXF<̺8_jSgM yDsSl3x_XO6A+88X6+Ta~\xph&\]ŠK*Qϣ6`jg$JґG`/o /~65'y1~աJG0u-v;>ɱ'h 7SfYG+sd9ȫlyV:')M\? 5dXo$ma@ }?X+r/ۅ_BrZrtLUS*Uܶ URKU;Z Y?%>}I` e>". ;>Ka0_QCEQXqof 7ڿ;{ޟ :ȢȰ<|lw}X d |(cyİˇ3uA@",ĀwSNaujԚqq%6vkGXayA!On`S#9CQwv} Vn4-9y\8Zz~.ɵ sk^H1QØnt$dTTD!eF N,Λ~biBD"tЅQWj$T#2PG6Gw80o?Sj9]N?Afn'ݦZg1Ө&i7 )u1ӡRcо;!=jOˮy/]Cng2zN_@(HI[Ͽ)"$rhWL+9mPͤO9V{<9GG$`ڙ) u}zexL*ŞKK]o +(k^]k̟z ~'B?tXź-{㎶d"ϮT ZU,B2IW+<^zܡ1\ `"R1S$%PG'7uk*ݼ8 [/"``Dёm BpaDͥMhqfYOC{O3NsS)L$pѵY{9d_ěC $66w9b#>]:kFګym!4]\D7̐K"<[.3iz"sNYBk!:l3y"{e`qyf\L/1֮k߼^ B{LJh,}nj5`jpa؉0ll;&8Eݻ?>~hɧ5KvmT1-NyQKG~DEq!ׂ<6q 1 |FÃ,by CD*"ud(8< .p/oZT5Eic~U0gסXeK~Xk=yҝIq7fjb>u>ޏah_1 &SбLoOݿIY`0Wȉr!)^м@1L~#mX҂_n~9/cӫ҃?F NSt ep.p6g ϋHG Gńy[kTdXX,?Sݹj> ( HG;؆9^_qjhg[2J^*ti`t5[g')boj8t'0w6qB(c_fCXi*Q hrP~ j=iFWur\#͓?i$FH"yDuAI]'v^uY$e3#oBM|͜b˞k d*N5ԩ){6l /Mio#M9zZ-?K8 jkyw//n1Pje|j%o᣾ڟ%Ā2 F${ݍW!krQuWzn;-Uݳz7O ebO7}mZ!Owf\fɮ0PIsAGr;ȣon!Ln|nz.+hwiy׼V%M@7;L.ێ]*+zz ZKoOivZκ/f s[ڷQ^ީo61jkH9@E>laaHu\>e&WsH#M1Ӆutʧ#E3se]2&);3I e;hW涫HtKXoP0!zXlє^cy|wnKB$o|O)#x`kS{\Loߤ:b:Z.iֲk>:;3'#`rd/ui1H+}_֋Mx0Hl+HTI 8w{vL& /d=˒#r cVŝUjߪ QxzMzXl2Dv]Ź5n=5.mֻ{nZzj~ӏp8/Mnߵ[<  E BT|E.T35T.RT!8H`zhlTSG%ū.\_MRCbያUKi` $ZKCv5J$Rq2P\QzbiS >߯ɭOlf!8%Ҹ;JG` 4w"[w@ħrcon_m-YL8?Ja4jsT~o6fcxR0OD&AYHܐLAvd|!J#=_34("n {RGlԿ50' xs{srz) _𶟉߇h{'2NN'-?$: |䥠C5qB=suuo=oP^ vE4Dr&h}p;|o8u BŸXʫ [y$+o)zGUlQFI5 > U{Ơ :ZWz#WeO(IWX0s+i-;MFrAb#zrpII_t=4jSu |$M;,!ǩ9"D *gLEV(}Miqlp$XW}gx؏- .~ ζj{'KZgH[$de &{~1+g\Y!H 0d0B_4?!OTS=pJ'GnhY%16^HH+$,C:.>l6)au J/xgrSt`v$џbǞ]Ms13 q0ɲ 㐏-GDoNʨ{Hj6#l.*=z;c6qlrz4]cw#app?:y]Gq|WPCx76sSL! 9ML~rh F?7AaJ ȹ;C@VBL9;߀S>i,C#5!՘#@l ?Jto$|qJ볚Pl7@!+MuRFgaΤ:‘{?k l1uBjwo]xЙb08/Upٚ)8X2R'9co׎6l(ZDT9 Yn?Z0魒X˕ۦ֓s)HO䎃DoI\uMFqnx7rozhgad,nV#ވtF}͜a *eI=&fRì視XKnu7ltՑ[_q:֟ɐYkұ$9bR Kj--1J֡+r:-?͝9N-n8$ɀnRU6PZ#v&CMƐ#$)e86-ǤyhpIN=@+( 4lS;}E'¥s-.2/ݘc|Y[^o]lB7Mٯ `qpVLCd3&oϽ5_'&0إ׽$;HUfʹWL5`5"ay"Z(a}b8Sd~˻i)V*8aG!kNլa[XOTe\+Nalً z8Zk@ gvOBm^<{[^{#O7}tIQ(6yWPђƕ[<ʧ9#/6uHHLi۟gP$ƀ>PEZFU w۸dZZ:҈I\$Z k; bevdEn=4S`HS.}oD:[e7[!76 WcƱx4DpȽ9muҖW*RtX2urvצV&ʡ}#F3Ta,/PҩHljx>^?^̻>l<* jQJc«5eA#W)a>dۓKg/^k+n^ h2dKgKvmzW.˩fu/X\~}*~.'aLC0ڸ/"=isw4![L'S=)?O|\VW/f2<W$S)N^a88;pCrGPA<qTǵp{-[C>^XCywn~>iأ5?\\ŢN#ɄB?% QG.37+rmlF5 iÅ~Zs }Bt?% pI84 ͗ 20s=$:yi[&5OJȍ#fa0$1)FLӭ"k5L7xd$Jm6 "˖YqKk4d<V4&Ndhn=0Xg'/c=8"獑Wie- j<@ MhhZn)c$VBU?++v85|n*αQLj@9>j-%`TAe}% 2xBIMj{E`r($O`Li3(-!aުnaY#£vG;aq>m) $0SxGdKuAБqٝR=jp| -jerA,X]uXt+79*nQ̛/$5M[=iy/Ȍ޼Y 4l<3>kmY2Kn3tU36Zjc샓L#%w#fİ1b[w1zρCs5?stv0^s\3d.qK}a[a.˶*1oWE42qm,R7ayS3Op0zItM|?~'oѾZ4d`lKmFe"#QE%lb">[Nᳫ}o[js-%!j_qH*z?=A{ P+U CUV-f !a]j9; TN{v{t`{g~B>=\>;{ot1 Ik_T?G.ZPK|AdC~JPu#B<_Ox͏㫖`QoZޠ:WKlȺtЉdY?rmty\I>ԷpB!%dK@a-/?}Fṋؕ?cDzy_y2ծ6,=Bz]?M`ZA xNT@HB:~t˖ɠ u{)\?X$\VfK>aH.Jz:]Mpo,vŦN_BG!K/  ߲|֪1g%w.{S)]5~%hs`6ܡdZ}6 Ѳh̶sC@1#9|k]Ԫ}G{yJyb;Ԇb<CQk"u.l @0G~m({LӚs/T#%ʱWuu u#I3 Di ׫(yWzT.%Q}a9OGoBA$66R2 |#PUJx ԔQ3l⭂bzT%QOP#a:6 V߳7QꫮufY(68A]N% XtONտly-羫5Tk>ҷI=O)r"" D%҄\Dѿ$׼Al75d#V[A:Q}<]0x6`IZŅ릢J(2`G1c<F*Íu֒FAq#N7]9F{$(c_vM8 eLVK -֤0o跪1(fnK" k߳]^yvcf_nu+`=X&+O+wܞV[<tӪaܙ?JWL??Jt~57e>__\߿cqG򖹋.I+qy?Yaaffdt< 7%/[!111107T]٬.ܼ,&3=! 55hP>g֙>P%>JQBۿ;UZ9<+],-1UIU_)UL"~o~y1DC*Վ6vqծj/k0~u[\\+UQ;(>DV~S0kx5/O[bC?9;v">zHi۷Jxie+i ۭ<%ڎ&mO*KYvɘ kÑ)w{5xS_i~ Z5553fi~}wtEli^_CYES Ve\1!l|->:~̶6ɌkUi¼S**TL[8[TQ\%쩭s/Wwv+jɶ ;Uzy|;6_hJhi(t{tyQX+FН\,tEP=ug<^юKl Rx) V [oҒU56N/qK ԽQP"koj]{𠈚e*D 1"no,Z>}=BobM`{nCJSI4]6g9Tsv ("8`)ݛ_ QxR]g5ȋȵM2`Fibjh4e+66g&"oW[uKDΏxe_aͫharqzMX?&M i%Η_ǥZNoS]Ú-gF\UuC#a PuaNUYYslg5i:שNSюa)9P$_hxko|PӒ(\ծ!#S#"׬t_Vg6ќFʔF=nV^}-Lu80פ[ӈY4!9`C9me]9Q'^8"al쁖RO9w=[bAr+L&sm'9Q8&f8bx@CaU(XserѰq4A-3Kp>ZZJgS$K"I0# IKdL {Μy=N)0 Cl~VA>Y⇗r~[`\`U@+ ?@cܼ-V)Px.& y3Ś֌^Jf*CS}M mN[T%ҌxMoKB *^"U^_]u-q*  @P@0o7ڡ:hz;>۰{6?vfJE^Q8+`VOSIJ4BEI"Ce?gkӯ9ޞ"WZ+`F3*H0H Xx]Rɼ9kZz[tnbmKl)?Li=ߊgH+Xf͕܄q.m}߯>u/$Zғuj~?~2"hF2Dsh

""Dؠ.-m; Llhquձ P lY|TDFrYEK& ghyVN5]dy0-ӷ~'WnAk4Xtb# \aH TyFrrW"fed~Oe3[ObhęapIG90~8#-P#d,vI`2ym"{X]40u\_n7KfrX(P(!_jCvl4Bj+Pr^07~>nTbZ֭/+;dyb^d*6*\+(]d](L˾-6pםE2B&߻Fa?l $ƶ~g4)'"lDa*y)[ju)kmsG,1eo ؇Wމ杕}Tͣ#y(찪}8bk+ dzwI~AJܠ翜q CĒVm<ͅ0v9y+AVq%O<|;3UX AS$q֒9.R.Rpx:,6}kKA5Rz\Ͷmpl7o5\$Nc4>q!wlc9 ?e#ZsCcKOG qPz|< }{(IY XܮA\/s)Ըý/kXu\tM^9p9*/3Obڰ *;#\fRZk@\]gXB;nը杜6R] #_:W9Y:m=x'cg=["?+`>~>.ջ9'ꆏ'[.m5V얶dgc6w9o|̏oxH77mm#6 ٽ6K٦{t՚L}/P;ly~eml#X;\²gk'{gޣיִ{мnTE.{`OQo(V0I-01\NΗ^F&n*l1aT؞iwg_`ӟAk=6t)efVz>Zyۉ%qv(e l=&Z:P\,a{͗rkVvWz?Ub)c̵NN&TgL areĀ))2.\9db%s2B䤧!vjD,쥶E pG[PJku~d-_~*vπWw1<^5sѵn0jw7p58R^[?7 N ?/.&^ۻK~E'υit]] ¸X݃vf4lǵR_f@CW]k2M 3 {,=X0]Ǭs{Pdm7h<4 MOE][sʐbI.=OnkXm6;j)ë0[7q'" Jaݶ`WLN~y׾SL{'BV꫞ߙC<#7}{$H6;=9{4C,IioӮoV-^q<*\-]R!s4A~3L+hp!߀?buX|=)EW7cٔZLʔfY"vJ\nz J3:!?ƦF8B2kC,7akH -/wvp$a J}wh_ [LDZn2P? _J;eB@=ٝzlrZ=)motSDэ[Tpޏ#"z6RJJJzwtDxo{ppKK{jNtG]@GJkXzciM14bzIQ)͸ݍXfԯ%m2|`FwW>>WP/}?"W~RukZ%;}{ޮ75n*lAyYP{3-'LOW\{S1΋j/wKL M9o4ƋUr`huًƻZD{ZksMaLč̓NHġYI<@)$ caȤ|=O,gUqtS&Ry?+CRVK,n Qٝ½\XI8`u!TUe_нl>]"a?IkIdw13! skjX%uʧWKR6\LQHVc@HҔ$AZta5ޕ~6*'n8i,wi[@u̟RP@+q,w.+Xr:)c|=,D|.%_JAm!#NsR9$EIJ &]v%NG~yʻ]}"^@d:Hi \=[I޹xZ_aG(M;*Fܸ~摗)C y+#PEΑT}$PK?4Ex)ڬ)kUe٘@rD-/DlH)'T7D I܅Œ6P.УFH;LRC=*׿7ۜ#C{FzL z٪x&3;GtDl{ːB Qԕ 缜6$b;;ͻ ~}7o\q܀_v@EUJR̞ K. ߑ6_:`Gl($#%Gk*^oˬ̣ W#iXf6P;d^8Sc_@'#}Pe)O(abwkv/}yװ7s[94_f &YM~IUg"ee}KRRLT8ֱC %c$FqI%gL@UHnQ wZ=0j+ֽ+,&!5vX78\akc_M"H?_8(HCrI!o ;iOC\۞QXiH M7ԁp>ܙVA1pDq+Ŷ~<ڜu.^Kzc˟f%.]_]gx(h fjEt][>Ifܗ*\fe-j>=؉[2)@+y𮆳AFLHlugV@A AJ:wiOpwͼf xz:molz1_jX!$6EJ+Q$N'hB'9sA[ZcB3~#Vލ!tSQu@eݒF..3K*#\ ^ݽD'1W[X!֊/Q+uܩ۱X~\Jj 4-͔@"V[@idF"z.|Es^ӀvZNqғeRSS۝1SUTz qB ] J^9A\ڣzj лddjR>Z7$ Up9<%96]:7*\]~4U4bKKנڹ)W}Aj^2]js0wܚ"ߊY YZb:YA!&:`+o8Mس˙B.gIZBȠt/ZWVCk P+ﳯܖV8f_R`1 }u12hvW kDDGf62Oٿ_ ke)?MX&U{mȌ{Yh;Vg<7 %JFR"7?} a졄 NsRzR!K`CJxH5NHRt~\*YW\Qu.}gN λp |w]I[%1D,pD|Km\^~:iȖҲ:;)Xđ+߱UTa?5<@Ȇ 9+[j`i{Ԃ በ S L+,^&-oe_mo:$MVR&4kYsO0gvAMh'o܎5)7e5v3L>ͽD`uw),Ƕ#{KZ8OX+wY;cO`D F_'Uhڛݐ\ o/>o78:.o"b(=Z"3@d rP{{ny9O"HZPui|2}.h]ZO+Uީ:0?{uٱ w=?'6>S@FNd+IW7-)n`fzɜ^7u\gE.1Zfʖwe: bOܥ(ri|ͽєiLwedAo lE?X:f0/|lZUWbՄԌO>ӭzm=K㻱dbՃN/>bw^xyOUȷ:xr^ yOoWgڙw[ubsGb)wz9r8vd[9%k95mf$`2Q6gd^UL-XҨ0WemXk;e^bv~K_)+yn"@@/WSm Omt _ͥYs! L ĭg|}A/N;R =p\oUE()o!iUē9(SM0~-c$ݱh; ԒlV08>cᾷ{׸%zq_rChGl3D1}wG^~U|#} #\ܿ4|ܣ?+xnKEmnN_/e6.tr$"cťI߻'FcInC .$ޗ>1Af2ޟoH=9$}ͻb'ۖa2OEKBy=~3Z ؼT)ҘNZgm28^_PB EDѠڰ5Jz lE/["o%pҎjQr{*;N~00P_!$o$/;׋\v\"@JDYHmb忳 _赠D% 1"" 1R! "0DPQ D2* A @b(" @`@T"#EDbA2E#HcR(( QDb,b (,XUD$UPXT11QV*E+ " F0bQDED`Vy~CdK87֭g@Nz?ux~ap3\=ßv&|\cx$$Y#/kk,Gyn4FfªxϽڳz+{S# C B/Ux O0 l)s`~2T" 7Fq=(߼z; !"H" PX"Pc$"F@V2$X "(d X#!ȳtYYȈ@XR$TX, $b DI%h0d $ *H,2EYc`EE)J%B(# [`)"U$@dPRP EdA@D/FQߐ7Z:;85KD y#|@WZB BFr N,ʝ 0Q>?s4if-ʴ'ggO9_@4n&TZ] cB ZD@]}Ɨ_wd5oGyg7WxLGw+Ƽc_1 ~A$"×gba*7j(9XE$@ݒ),_!3LZs~w|oV |;SnǀǐٟZZ~k#a62Ŗ'(yD7k5H1 Č%fUKhYUa) W[牚C髶˾UU[oz륅wF]{_/%6LbCӟQ%_B28\co7-u,]ek笧UMy w: lEsE`Z.+/X *T|bF3?8Z@>u ˲F9 SٔwtBWP#!;H\\.UZqћ?Gwwnpe!ILs$);gf>$Ī.yYs=~/ӴO3 >FG` l}߇b<~G)_r8W+K`5[r(a<=|1~-S!S5ܙL%`洟5 |v:'un87߳lӫ8^-SXۯEVO ϻ8!9"`iT[QI1FA6vyC lg_xR=.MAl 3oxn񏯗(PSْ:gw5zȬ-UkX+<~7n썛%eܲK&J@)#6ZZ3|MeLWik/ ޮ/g%G+ф^gZn7ԝ(;DBHK[[}s {}<$P2AaIh^"&2B dR@$TW;R{ޛHQC6,Fٜ!񈎬Kc bB"'(g(K/"0"*gL.- Ρ iS$X3zG'lvZFEŋ&NhAKbm<֧Sa{ӘR fp>B0"L14ˡ-ڟȧ+skt(PAN 1ÞCU)!HA@2(*Ø`a6F1֝u0.wd.f"eӿyy4fg!lT8>f/ܵ'0y)IV^f}/F?@ 1M$k,Cq/a9+vX8 ᛓ$ɛÏ 3W-uS4L3Cwq?&n%3 j8Oh^+b٪@ O+y"7F/9O5f39w;rn39s?gs;n?^,IH!"!'7_~nuM #v_? @k=PG"Y:?-#c/MKtل2rY? I "z%ėP?á{{ը`Ǡh $ĘKuD>ݛ@v}CVErH8`r2@ҋ8n1f!8/>R1,,1>Mjl(>)?"?r$ yRFa+&Qʓpn3}c/"ɐDntaRR *${mIOPdž,Ӯu>7fQv_\ǵ2QmCv|,.˺W;Jwf|TGGj+4F+g6Fܖq/:h2f#[+z. M3 |ph~veQ* }3Z[Ŀyrom*Gk9IjpN1D/_o[$TmOk5iMJ2uoBMLMngа_3}Zk1w"zjuwm 3_I]4=sk 6c;m~sXncwx8q:>ȩ(֥[!j;9CXZ-=ws[ͷ/v: U ߲.ZُNCu)q<'`V7-.$ d^𻦊#Vcٲ+Gkjc9kv{fsYEfЬ-R kAdۈ3p VIm2fDy[d A5td]lswсJ 9D :~z$8U׍yMLvRݺ܉q{49=+IL<9̼QN^_'{w\sqdbOEnAF{҇nTӯf@ãY&(n݅lv[nFٱh:~ʧ[l0yǭ uFg4Hoe!gwbA#yG`/ߟ ee6 K V,ۨgڼ&tYG,c'z} ы"ᳺWa?ki4OZXMF 5Ennhy4ὪNۅ&`|>=`.k rV^lz>T=BVZjTT[[ThZ [digOg=<1酻zܽj֯PMMF"U,d~t^tx]{f[mƿg>2ja Gwk.{adaY26써"-(F)zG{>ZGg7ʃy*wn#|t<-L.qzfw&w{iw>xp~)<(Džrh?2-TtY^ooxs٢˩UsH9n-k펹dz{h;"{[ T{bCrU<{z.Z@G׬o?2^G9J7`3~R`D 3 (B7e ]m.ym1'7+n+ =lƶTA>Utj:05mmvmچ"p ,bA'npx)M{K4E!g.b3:Wq7>O/rn=ˑq\_/wGroc.\PCtV`_K~_o]&lF?i'9"N>OdmY?Eu{wmWan?/ q'ZqxlC_>\e\`3ߏ߿-%kmڅBX}ǙW#yZ>OF{ͫpmX%,pmW.tnP[xݓdֲb4U*bKs}z˿f2/[6]*#p?l>y#~܂FxݏrCG-r'WR uOҟ JC'x5t8A V3ݨxȥmX߃mc\"z6b8ާ0ÎS4o;hǹV>z'BuL~C I? ,MV|dqtm|mjj77Q|s?:T2QU41ySwş/P>-}`]Qhs˙qxŽ (Kz3TC>Z<.~]k%x)EmJ%(XG'yws$E>vYkb`Z2Z)J laPkܫ&N` T'}AP%%[%}Nσ[3+eAYy/77St=ѿ3٭<˯b9ԇRv,[e 5of[.<݇QM$k^DM߹xdC`*oAh 9qS4!ۯ\Vigm,| 'C,@+w>F3kE2E5Jk7Ty' SC=izY}6E91KK[8>#].«8iGypvLIƬ.5R@7Eo\m#*$36Ӈ7i@JC !3e1jq_[鿌cIC,}ke̶&S",1!Q`@w,F{#clxٳGP:*5aX{!և^#kB9N,j":yU|M2d.Z)!gSS˜aY6RܔM\ג1una+;2\d§[ETXMrUyM0n1aU\TynEuam/z]gF6_ "N .ݳ+V^?Ĩ%e`FlhdݣXZ΀׺BwAm^M@p~Xxi Ðh2u6ۋfN Vrެ7W qSdzyfŸ^6 ֆ]3aswѽ/k$QDdڴ[mQ7\h쩬ׅlqAٹ ;ȑas&( }[m2LXv:7r\G |bn:2j3VXBj벐/ZC]dcpkZŋ k,,M΀Hp]{ƼI+4wm>@*6)1O?:0㑡#8,-sm!x@DP$tg @m ek:Ӏz0`Bn("Q` J / x:^ ܑ*IS۾\TB7m>ʂ]Ve5^uR(4>,܈K>է[u7_(d-S&;MGv5lOM0ýn8$EM^dyJ;0pMCL@z+ !Bc@ Ybd qnbͲ`@MĠ Yl0q_a ɥqa )̏H҆c t,:%soJjqq<jX#v y7ۘ͆U4GQ5+Lrm 68 BÜjށ1]dN$p6fzY9K5/l$? 9F.*YLQU*ES= 㛬24*l##L*Nu*[Yv6 fO  ˻].|.mZ׷V7 \, V04:Xoݱmpuˆ[IK*WTxyRB<  IuQb m-F*d`Rđ]3C9ưӽG(Դ`frTϫT!/#7z?7M [k|h{jtߝRn33[ uObUqd^9:M%녳rk**n_vqߧ|~VWA}.vY s _򘷪+;aIípW]=^Jo`_y|Mr7 hw8?G3lÕEUOؚ܋#P]7t[tn{8 fuۧDffRfzՈ"@F +sG }8>hz 鰞^F|9p-Ҵv]3{/Eǭ??}I)ֵ_d s)|uK8:zkE;l[T]nwu]\vV+sƂ]yy_c.qUaf60kf$G/3;aY42,N)8W"exg榶ܺ*-{_LՏ񙙿 /,RRj,L؇ikjx}āOIs ݎoZodLw&;Q;{o|tv_cԍﻩJ$K/4gV-2\& ۦ xٸO;ףVo?UW_S,wW/[Aʮ/3Y_;- -W'7[kVL3cwɌջFD[wW(%oꋧ]1hxB;^{U{2' sfzo+H^q Ҳr3d5مf #Z /NC9skOpY&NjLl?W/XO?? eڽ 1);"Nٓː3/}sX sGx<#g/Y ʨ!$=F 4= 6~^B`{s0.%oUy]!t3._zcy+ZfRdBB,|)+萓#M >E.,f{0P%qa|p<۲zUs !8v;\G8x2 &Q}AT)E1u-wm-SNχS=~_~G\Q Ĝav+' ף `rX᭡+uvqfKu^}oPw|wwg 7 _>\7с]^,+XUU6[C#Өt?jV:^Eefy/_qVlvy&d}6 \~1"_6 m8Y?Ko8ozcR ,b7n'f٪t3a묍~-aNɱ7E[(OM /tݒ72gTEKXTHDι~IߝКTXh$(,U`f-&`c }K mut=aN{n⳰%$""@Y(Xq0l4L0,\( ,7&[:oi p: miBd8Z l6mpśݒLظ@0! \ M}j̦PVk| IQ ^ŋTPW (YQP oh) ȶRAP";Wnф@mmP7Ho>7c]v\ Kj3v1FO.I5hv_]ug]|W}Y#i/V [y=7gKuA ?;k:w_˾N_Z؆uW%i>4ﷻyo2|{Om2ڞP Ě _uИ[iVYYB<-shظ^98ܩs[o_f3S7=.Kni]A#ب"hT\H!PrP(],WS}3w]n >%wvU7b*&y-E%7I֚o[YKGς'7/ .OB{iztʮY]k㣴>+ߏ=`Z{/GԹ%{w1ouf7s;oCuLg{gu?~x_>\΋r;悓g޷gmĔng0&.Ao9Z|k@@[JFRزVES bcưbHR-4T2cV[dQaf16JHY.ft, oVe8 n Fa\m TZUFj,jMf*8̫ qܒ](NCȫ4U~AGk=5d_\I?VWZwr~W uKo F*ot+_Gw{UVAb7^"bfn sָS,2ō=pCueS 9U_W&h8 6okzgCt o]\Wu6o%UOBc)s&yo +Q~8؈ߛTg+Z#'Zޮ{~[ffw,ǟrzc*Ygo7Ż,x9+WJl;|yԛK 9vr/V6 C@cp:%;wWr r6 %wddpGߒó`sZjcvk \.wۖZx>Ve|N@ AeySJ8nO+LHCCYč.A/CTxNQ%e@?畻wy%Z? gsoA=FHc?uFȶ4ߒJ$*fLѪ{iC(`G DC VṞqc9\}*#v'a4חvX06oQS:)p]pr3s"=W.d1c'0c%s_ΪI/!6^{uQv׼9jWkѭj(G=ϳ⽲1s>|dEY֎'Yyr:۝NomGH[6*Q_3xܣnwб%=ͷJomY w'nJJpŶ#jFdfC>ݚM3tb ҁQgٵUTV6T_]J#Y(#2~qCOnJa wcUC•iq/>wqi֪ y욠^ApArf]?ngᳮi,n?sMmR¾n}JSVٳ'c=ոסMy+n]MWyՇkܭ)!luGt{]Hm+!@H=KΫeI!C Sc(* XQ"!^\(į"*d5e ԕaIe,-AAHX(,f1A`R((Y HZŋJX%B(,PREcqEQ-VT&$PPy:n" EVT dm~Qȱc1U}Y?uLghV mi׏KtM cR " ǕWHDN cnq`7'&cBU2Ef?o\/|Z]JVϙBWtb~>j)ܼ #յc?rvUL!vol:E,-i9ϻqTnf{T}'nfʪN*$iwBJ"E*vc4&o>qNba\gf۫:+)-7ʖr/My{wp1-+/o sc0~޶?Ct./4Ǜu& A fBԶ I)CCyLP+,_O1JW}ڽ捄:g^{Y޸g%_1s>fn~ªYv9q+7g-J]=OB/S;.__}`%|XFVk +Œl` oѫ,(|Ɗ"r)nM?rˏMVF47Zu7qz.\/dF?:̬z'/uJ ܧp*ܛ<#8-L㊿l.ǝ^j]c:YWzPȸ4ɵ7#)rt`Z1)6jWRKdlU;W'B倫P;[X^f3bd"aL H~`ŢKW8!''`8%Uhql0b s7aD~@A9@?zb.CVfѥRCG1JXzhؕ@&srVZ(V Y{n7@ -hɹ$& qދlPIa ȷ ahDx،N+˕>a0s -*gGf^;=^*,\-cߧ\>P!hM%U: QZ.]__ìm1S/=>fdzp)nT޸Xekq>5Vz-9D8ZZS:kڞVxONb;z>@cڤLgm;M ` mWg{.Os}ε06a>;Ƥ6p\/y}VKk IҧTCѢTU*j%ClM z؎JYM3OՓlĺUKl24gYޟ?F\T*z|@Tx|Ye#beqh ı$[Ggsglm'`5vE ]qq2J#V?_5"~1e O.\.z ,6jcW^]Zkwp/q{9s1.=7-zXvdeO3\_pCɴY{쏏4tui&W華7i,?lÁKZPPa񻫆DI'ULQh*~)S4" #3aXWGMͺbł+'8㱸NMXc-Ţ<Q= Q[⽗7e:Aװ 9nw9>'WfDn/~.B_9/+cr]v=֒fe+ߗ?p{$ySt,_}?cv>:^\ȧ?ٶSa,|t?JKV篼qY,YaX=h~\>]b|Y1~sl(4ſX;5fݑXIsP+V\=VhZ_߉Zlih` 9~+_XZya.\öԪ0h4 h.T`h9d``\rSꙴ>jA@V3t\lg\WťcW>>9 + >acZ__IsE7'6k?=j@;`ȣw܈( S^Mrk4Y*UNڵsY'B{9[C0 0q֔;RK0馠DF~͕Ӻ6U>w-a$W}N4t擳fƥPkUڣ?6;WWθE:8籭^\icdz\Xo<.ZW [;]i* +ŽϷ8LX>0?!t\\Ut!~s9]ֽ_{tz?~>rq{(&šl 98uro3֙9w4N-(S1ݒ'ro3pYg@ $.نg;Bj^~݋Nݮ>߁Ơv5KBz Nkjм#Tw*U &^4=uu'_3p{ޏ+vx;=؝V殦{>4 Sσaڶ I/9[/(BȤ[_G{D,@Sqn x Re-T)1GMْP 'D%嶤Ĩ|o8h)7,cE PTU[BTjZTF(`X$PELk AJ`?j^,}_i11/^=$LE#Pd$y['MVK N"/6Cjd[jQq1dfRyX1Dȁ XjDR[f9Ҥ1U@tC?59T<ԏYBun; 1?y/~' E[h~GT8H %2+"1BDps>h|/D2<] n4X(#~&۶\PMaX `R)يrpb&T=?`M# 6"0ZnH|(||'<ńI=[cfslޮg0 SbC mhuY%H֧fasH%@; %Ɣ6K;4A7'&fC}?m:Eam^n)v`qEP Ex z 8gtiwFl@DH"FY`((@Y,pyR\zq88*U5 6jl/#\C}ILX15JBHTXLbnx+`LD"`Xj K$=zO NaR7Cd!d&aKxA`6FHBps 66t$6N nQ=ol ۿ5Ow%rŭVDöJZ]5a/ ^_r@a2E0,*`HP266Hn8@ZQ}a;hMk0FC|<0=C!+*,tf\4N/z: a)-pzM]]0)m(ME.fuէHf$H H@ `)`;=WCU Ş趠7V}AQ,1.0`1 @p3%K:>\O0򬜳ʇlS5/ԇ3>w-y %f2ϒD`4j>B tѭJ``,9is vZL2q4`8t5€PRD7L-mh)Qh6p73T ȱap<7 c*(YE,&N j,4'3ل]Y\ \ip36N)J;ƀ6?q*hE@Stj֓jnkx\4aqm&#uCȄEKd m#cB -l/pͣ5\2[xq7ڠPTP]V1ƒ5ӕ@QIz6ib:zJe_`bcIZV)PiWǨf3aAƾ, >Ka}j/xq$ߺ"=n#/m}gn \푲0^edl!;YG.a G%@{,lӃw훐guď=48F0? S]L<os$z.NO\R9 }&AAeYţ/"drMFB? w{iV'7>_ ]?SvO[i$bK SjOԑX%08ˉM E}?Kj ĔK& 楱s U@elJ Q!b&NK(m%9RoQcr)9Iw_C'f3agӛ6yYkh3d;N+"$bf[lmmZiQT+O<6ef7|Y 04mAږ2"LjV1*,jPd+ eYEcU5٨fXTP0Xi-l!mL00HtԮbK[k1'TDYmE(PP-.XT"G`KF"*#f5 DBւ0AardRbCTS7rm(Ib2*+QbŅk ueqYRV4R+RTr"R VJZEMZUM5#[Dc!U^X|HB*H"Ȓ2"O[y>o1<0vURׄ}+_O3]'f4 +7FF9Y)@)AkaZ1Bh,+[BIkN)Z5U( DK-Jk 0m ֪т{SF109@.d4֞U_7U]r}/<iŷ]Pdrs+eB/_Qtn̬m@~::%ޫYrZyLV[½Zz cb$2 /\m1Y!TJu?ё[>sTo½Xe9&ʦk2^?>"iy=S;U82y걀m 7/iԮZV1dŚ3OzNmTe#78ϟC Ar'nnv;|*y<- _&e\xּDҗZW߼ W.yἯl~OUѸԬQEH#Ⱥ# ;rIVO H9#RB{ma_؁&EKUʢL%>'_ s[y܀V6/ۉHSwǔ?H8Xzw__~Kbۇ]:E c-==.؋j1 '1Yma8}%G7+> ;Z.bwqX3Hq|%ւ ~ F3a1:T'(,>XdMg[ѝ@ 3R}zmxݎm]&gӽxop+><УJt(0z7: ]}^ӫrsM6-J}}p-Aҷ|wYwκ=ySq{޹lmjf+RkMk*:4|N4ШD!:ـ})iEؐA!H=ݢ}QBA{vl4 h!4J(@P`r4P@> 4HLQD$ϻyPޙH";{/_P 'u-iBZwst޶-s Tnep@)%tuB{ h@@Jà=!(ϰ8:sȻn2ևMDH ;wb OE/Q@( a@Gs{A U꯹Nw523v*V=˰hD0CC@4`02ha M1Fh `0(4@LLč`zLLCG4Fi6z{SSM?I<4蟥6C!MPM )23&jbba4  F4шh44dA#CMѣ@ F =RO4P̓ɨ4iM 4DA 2OIф lML /v>hfˢIw?8n==|9 #ϙ0a6j ?*U;t0x+6h6&Cdi[T[Te/oά fgW$2JhQjHP#Jh7s/]-5Kη&[e?]XVf,E ZS,l6mL /D 6ͳm{iL,M4}$Zgt" 2 FbH(Rd ?xGm5U(CmդcDtƵ sbCe>wŬZ0)_W͓'U/#n!o}AkFDB@̶g36%9**/v Iޖf <ɧXv1keK|T+yTjgkY&#0Uj J*f4YUF$@$$D bq19Ktڌ!oCDL+k DYA@DfaL*j,D7V2"ȯj侏\o ~Ϸ'wfaM23 I܈K 58iܜYgL$۲vt؝m{׻?^}MTw/X.QC0hh0A2fBAEu_W5Eq<.#,H-:';oV'պ^~/JO=;'yV"Y]:^??Tk/a~rgϩi~\}-k4w^;,H"lnf8=eJ14L"3B~ZTy =b^ҝREahRֲ #+jBH#?˳,N_0u~7'gYwo~NC]" 0. @, %ꌁ f' XRùr}\[A(ġH6"3Kw9 -ј"?o77gzl7n)zmQlA߈(P eAi϶; ^f0sz^o6N;{t'=a.!AI.GE>6ݣ!9_uΛ׾A{DP)#Bķiwp.e a*,@xU-l*?Oqkݾd*Dqĕ`ZAL 0Y Q*RHV0i_S > 4%>73 (CllK+u#7o$ Oksl.E¡"|{̳2,d9 vh;,sQ^Kdc~ M߈q?g?K&s$ę*&!Ȼ2EB`AQߍf\e^ݙw0g;kIZDBE$$ A(tζ;)CKDFj"+dN%I7l yoWd5kcj6/WZTX%dUhڮj9+ͭyn]j墍Rdܹks59Xlm%Qɵ鰴2D5#H!$*5Qt5t[]܂-7+nedV bTS H#3ms,HK 1D iP 0Z00%&kȺ..kD/T^,ygiasS3xsTH{%_=(35 G1ڕ7Kbƥ/;C]tmxڮvW5tp0XǂR"2ҵ-n b*@WG0c pd9~rg\î˝v 2rTq *PdqR.w5Qq!-&d,$[ qj#Q BKp\-rFe1_`v \L \R!YW9l<?{~^=)(! Eg>#Vm}D!TFN其ZdCN>.2-I Hƒ*%)]N8V 0ɢ|r sKNQb6|uKP&8lT  (}G _h4[,(q+ ljG2lS.E{cG}O #RNFWCmzZ:,#|R6vafs.Oܐ;Ϳ.=jqv= KRU3MEF5iJF5V("Q MudhMF+jQ$R@ $ MpK/[NM?-ޘ畂 K_[]TH}Zڦ}j߿ռ!aY J@Gֻ|vL+rP"LJZHZTPZ|>_O%~GrrϫF6F֩5hf*.낍k!ZJ mI6Hl26X1$@$W+&;\[ {^E%=F ͖kpZMF”"fV=8|'ŅN^z&bhF$\LhPkaF;Hr*)R4+6j"6*h)6 H)V0,X&uc[Yf~?G58 H[Ɯl@Eۻrv}˒yVba pp9hka\$șjW6ܬ-nRhC2pfB$$diJ fxp5h[[yZ 5$"u\x@EO}ߙxo &*,;pdq {령^THNmz,`LM2 "Ȁ&" "cT7`6CpAsiDHCI <\/8 FJ $jH&ѢHVi&h(dKy~R* Y&3eP)dIfQ1SS4"B*pW+,Xdo 3D]y[)dcYʐNo<}?.ys\<llDDmEWoܵnbƤs,iHRLa#lp2 DAɎG S28A6N kc"IEj]a!wXBA*RLDRRLL 4pȄ@fL\RȘ]s*8P"l*ء*~o|'?[=NonM(&F9hfD=#&(|p4; 7[FELLd"2ɩa+ K9900pSDY* >SJDMl4q˘~]$GG!> tbFmIzw|.>|;+r1HG֞ZM$R$\1DbRP:z vn׷ѪCW=f8> C{;Tn%azuX<'%(/X$%Ԧ.11J&ż ~rY襬B ]~7K+sxbF#[t,oB{]q,kkaMY*rda`dzFnfVDqBL97f5EkK鄠XԢ9%,[m>vt-Qjb-ѫr5#"i5hTZƶwWc!)v64֓2S!ii&Jekh)- TG̕!LE5t5&T['5LRMX6L҃kKRZ\\myŸ<"йsNjoJ-DZ*1m|v=x1@6+RԤcNUs[%Z4#H%-&J9 !joT=]j [ba#NE&1s\So/h'2tN@p;k87UE,M!,KrO1ՙ\ظTqELHOtbgqÃ7/o@CR&-d8s\P 1ܒb1N.by \R͕ "bgpJ]cPtFضhQ"p#`D"\hF5QsA]d j Rhw1z]+Dat0"HQ#vHfɎ^<2"'̃aͫ"qd#!0,C&HV͕!40z>N1:J fYog2d"|lR%yI𧩃q8Zws:t˿VȈȲ1dnӟh{\\D_EPG=iY3!N&@ဦ$`d_73D8P[;')Ύ̡RYferC*2Toi{4Qe4Fe$"6HAJ1LQXW-EQXŋcdF֍k,DMAmD @`%%9HRlV+iJ4Ѕ WL!Bؙ,P66Oip'ionߑ8ϧ۫F A9kPLC4gf]݈!^:{yhP R@ D@dT:z^:lhZD~gvqmrT(7\wpqNֹ`/Ne2+J( J)($&PzsRn˟'GtDfD%`?Q,4}I21!4雴d̊R˵9SIL[4Uaa?$CQU5e)+s1OIhb" T$0f̯}& $$2X2p@:;4k%Ev^;IEHIF' Jv89 0`C!m |"+1Ta>c{* `jɂI#0I.BjTvpqs4m 5Oع˱Cwxձh"|F1EpS4`&5!)Pi5.P&5rŨx#"fA0&KB As5ӯf\IW*kT6CY L[*a+<#wvǍu٣&v1i9nZ3"w]AlDl$,I (5#H5hRȫ\SdY F`E!!w|*4$$3+v'f)8m.HҸT$Ys; quuQEKUE²5ő-F<>3oEclOv?HDZgؖR*ivk6@ܻB/}?Q*Tj"BXqjM Vd swkyLrjw4!  QQ(jbu:U$ OQ3_ȳc}+iʔT S֬ӟx&))icj!"$xNbܽYkluSD@H" ǦxsRa1' Ӂ1 paj;~+IHBB@״e2/}]-<2&םAwO5PU"iH)ՋA&DKWGvW #1J8-n:> SW6[j+Y-#Ej-oRpFڱ[kr5r+`ƵIW5m6֨ڧ2)hR֖5&h uD% D ;rӨ`0GMK';j6i\pP8C qq" `\(KGzBǔ@k^ ]p'5kNR@Fx{3Ş bem `I G1$U\̖6#~A5ĨVBa\ kFELS¦Wd GG j-H$[.k[ ȢɳXe&+lԶJᕊAyPvfʊJLhJLL.[wwxOfY4c HV6&K7Sh]tku杻WJ&,+aXUqQef0p5rJnXXHFy秳{EvI%S.(r ~px0O8ej2$\lߍK*"3hzM82ˍ5.z\$_>f}xvgbDmrH,cIƹns`G4IJCD'Z-R[Wuu'y4|̲pod${_sd% Ehu-S< qo%aA/*>.*I(꿡?2Y.EDqD@=)AH\\Ņ U" @vMR\Xk+mdO5 B$*BAD(dF @Q)oBW"A$Ͷ62[Ykə$s(BE! +3.cB1B:`spI7xi;vx$#M5TDM4B *#[i2N/oLYC2La"0X7$QW!$3 u uX,7hٮ]#3 vrƷ}K2h7v>.|i\ řNxoy0|Đa#Qu%_,ۏT ʌZU)bcxn=: l* q#U*qfW*o.mezjLo`4j IZrRBP(ݽeӯn aU$.O%bsnyKϠpg Jr uJ9iMe ן>}]KsV%Rkf:eӾ |!џyS3N|!w`I|<6rw삋eek*KLa5 pTVQqu.o![ނ>|/_*5<8?gJA_VTP0ST$x93_!| cMދZ,AZ墤FMѫzͼ󵂔ʘѭEQv6F4Z-1ڊi {,~Xn5-œ&Ctoz:i# vYdsYo$)$/{ i<@d.wJtAmRAzy"Ɂ3Uf1Py}s?s=ұU Tm OMcmx{L,BT i[chHFrrrwcf HG-kkchhd Zռ6Zbh-QbV*ƺ+RڮZrkQao<`⯶S9.LyЬ k$ԿB$)oRcm!_'͕->^}^Z5" #Ńk$In֡+l0HӴTdfR9PxŴiN˳G)T:q90ǝ-[ d}>&N~_yzn1W5rZC σ<|T!-d7{<I̾NKa''Q˗XhZдb`"(v(PjF Z#?Md룟9J),`-F" &J&Zrk]j*55V4WǮMh wB(DuhhJA7AINl,J̠"-!&*y+}"PMؼ*m$8).F9SGcm`I5;bZ^nG'[JISDS_Wd}~i' )03ɼL.X地/#X]N<{vf 忉pԘCEq{?Kr}S$HHV9@Z,̥Bklr("$R) :O rUR-1ףkUJFC  Bwh'T&$X~F̄(X><'ftM`:̓8sϫ^L݊_y?[7Px(SQ4Y3xw,/H؜ؚdAn ۉ_+ a@*J( ՞U,^7"'k! SP(PV 1a:3k#֞WR@=ɔjݘy 1U($rE'MʠJ"g`PAiޞ K:t >\Yv4%erIĒC9f?64K&Haiu(0 !e)j#B% #"(v$PF]Waף׆H9v1  K"ͣq8v{Rcٗ4qCYasPD2\'LASdqjr$bE8E;N\exo_ ˂!vǞ 2=((CQwwY5ј49 6r0RX8x\BʰVH%kwZ(5$noFvF()\ZhuaZZQlګe32oΑ''P/ƙ ae m/R ܩI׿cJz(X;Nąe.Uφ갨McǻGd-)B&!Sys=S %%>Xr8^s<ٽOO}UL`U]'Fxcms6/{ބR@!vk"؄,"=u0l5.]䦊s>vx #L33G+*A'j#8~ӞЈ[mJǾmu\1(ʨH'2*!\srs_CG$d!Hd}|Ȅ8(RP \(X֔ H]`#QiR$F:M;b;!ﰳumǻyi:>! x4~lM҉H-BRM31 >I {{N3;h8u@ 44Rqɀ9ڌ#SnY2Bn,w2Hi" $ࡹB(^>k]`t'l1eC<:2/\ Yz` M*頕a${hL:XlA;Faq@ f>aƟe:/X>>ӱ5WJrBA=wJ8<KT97޽'w0ui$/?X"hfF($~#c(n`RI Ƹ0Zk< Jvvys :b u@tT_RK<vzr|^1?/=;8A%(PSX^@RdT:zOysB^(KAR^z,M ҃LLI @ΚC,UxyH I|'DgowXvT1tuOwZ8 ESE߇_z>:Kz"A z H b}NMz3n?AtmMi> "na>vZy߄8(o+1 S" [U;8\1JfCRE0 hh@dK 0AMbP&VTlSniq 꺮}0AlQxdbJ6܂K!vЈ*Hrv5 8VG~wl } d, *(>s:iBβ&<7+Ms"*8y"#( [|#(^ߠ/Oꏾ"ws(U!J遠ԫU&'1*>;dz8Q|&ki==wm7><@v #g_oIG; ؕk X+@hWR5eS3A8ݺ:>XQw(/Bȉh g3W<(]5S@J $a ?\ SI@5ګ6O$0y#8BlwmI2Q/cm@TEE'뎤 U'gv1͗ @z@}5( ss7LBM c))u1HHAIFk 6_Ѻb &A3$j69zXC>Z@a{z}q{v{(R"{FtP&/ұa.:us2#?hN*HPC!eTR@FѤ47уF c.h:M;u!(0W"(|gȏɛGE|6lQƱn(&hT ,wǗ͆Ð;5ن"pQ:i"΃(i fZecc!2 ʁr!qaBPц y= HݲDe4TBh2^gßaMDoBJ TԽ5@R!zFK)wdE#@'ǿeכe335EEQ^mٰ.#T L̓ܚLM.I&;)LQ>("X`_Vx: U I!IMZ/Tۋ-xK1$A T oKMs9|rG7ESPM2X„1]F`%q(* (9ٽ1;!Ҹn͒A&Ҁ{n"r2U%Q@D Z G H"0Kz>pg옾!KZHjOR#a ($4u pr^7^*e9 ALut銋Ro ]HKE!UMݭܪ:׿C| t)7ؖ%] +pGDE`àNrQdT$@>g'#ݗ^ wuCǒK)NAʚĈ6ZSQG }+PBV-BĀH8P]r<<`:MxT,rAUh YZs\Yb[(5CU,`Wm]h5 !I#ʬ5=i" 0"&N*T US)$\MwWfi$.$̓+hIKLPB15½vƚQ&JPX* E42"Z`DMUZUA42|#YөC(eE@|?}Ad i;UJ X.(r'UN"7:2 cJE>0#S S`!эPd !TR:@JVs"Bp $  a %|D\BBc 4Lʕ{P Z o\J Ԋ36R"$"q* 2*d$VJ" N0 7vڥ>~7C9Gq&϶O?v6XO_STR0AN}a  m/ z،м㨖l2ff( m@q&62zsTO]>_jěN"3ሔ}Paw^lw!;'Ӥͺ4M̼'\;Ͱ&LÄU&sx3GnsW<:ǧ˙9&{fwFyhoRzK;WV/cY[rP^X6u׏YE3`hS2us LQHIҭGB D{^@9Q8oW08z'K ܚ3ggtER0ODidž{ w\6rKo9LN\35`G2!GlC ݸtt÷73pĖ.~ۂs&q*}=9ÒLۇ Fs}76ߊm;\ä!\2&r1Z#{{A;t\/N8ܶ\D O ӫZ(S!a}\O* ^)WowHjȯ @ NTiV Qb )C" t UDi2EB QRW\TU3w-]@JU@uaӗvˣߝuCnKa-qTA猰G H;͡ _W7y4/}v??<ΙDC0`'e{ " Aq@ AN 'SXb[n7/e=/N?&!A6U_H!r`$A`q!y^JGlD ܮAȊ(cuuu)>""ȹȖj,30uX"!;IU$ DDU\؀u/ s6\Uz.n:]~|wAEFDW)fX 'W]ˊ~4F'?DZwcHx\ Gh=wf{uWv!7;+r:h;n2黌>>v>bb@珄_s۰P @j4 +lzۚX"Nz@@X߬EG8;K="r"/߀ '}z^KqxsQ*cL<9ϕ;li.c@AA@4P} 4E/Y= GՀ&?X +~CKO-j \G؏w,t6 URW) LkHfM%9ǹɜadvJy@;7} ?40|`WFHs?~k*A4QZ=ՈsB)DQ pCÜ TmԀWB U+phE(8ZBA - }.ǚ/>xA/D Z'yW-{dC{[ .O`ɴ|}}t.7ΛC7PtV7 LB؁={bk=ѳ!C(Ѣ?Ρ3Zd_;s$g? _btPe¡@z5#{mqToQztmy _k\n@_y߭؝㽭_Ё!,]4}R6o?p>>}: {> s-D_]ۆol@b0(}۶;K@88)P ԐDI>RA'i%@ aL,66\d7dz`UX}Xȷ0?bˆt!X}X@ǝ Pg R]}4`${5[ЈӾm.R' $$(:MD kl ɰfy4{(A;R L,haJ=zD n 4DB?PYoC2j- 0~[$S"32)T̀PD / WEv\ gFn"/?ߧ?MNy(>Guyn_c{o3~'YW*4xY>'їNse^ȻW߾^;5yy6xn@=o-Og4rFm&@@q^BR;>hpuδmr/ڬ(l@|1 1: giAE>?|M=|~FK푧ur_ rFl6DS@d#0aU4R+cg~jMf҇n2"| +}K>H, hBD0l#"j ԶI~- 1w|*[! 2N8`31j6it{O3?{?Exx$ZՉ$QV5Ulm[\iݵmQk2Y#M\q֊mD[s[s\ţEE\峺-\[Uhj55N*rjE**Mh榔APU2)i]mZ6ͨTm66G6ƪb,h5FEj*V XOj7g}瑂r`|;EwThUd(F>}ߝGKlnzk$MrPPS ?;sm5wɩӔlUn7`ële,@y,Ww8*>x_\ 'IO=A5TA=r_T"m R*LC4̦DHmoPrEP +TU AsԉXm$"B1+nW2EKIh$d&B|6ʞu}P.EŪz4&Qf ;yqX'\'TAd_ (Q NJҚ\מEB;]4^uyvA Wm[8q:am *HukPpQԆC *Q2dH*2ҧd zy!U K_Bn] @_:yJ -*>^nQM. E!DTPZ"_T=3/Z6JJ"[7]V)\(rCppH(K uB'lm:A5@:AMhNyHPwƧHHtO{U<҅(!J9HE%HRĜ&f*fbimdm35\CEQj`k &eNkHRt)&J4)9VVjj^,QjMi5-Edf -04i,im%$fSTRF6nr 6Mfb\2j4nkl(bFR"R;Qfwq4V' dw :(4wJhjiMҩm<"6J;J:HҔk%Eصۛk\ڹstL$2T!ii JGFnm(勖e\شvZ傺Zƨmj[sHXETW6*ޞW,m֋Y5+bLPV1Dj+QXZ$2mQ)4h6h,cXŴUQV kkclmڬXEh(Mc Eb6 d-`E[jQ+h͛&hllQ`f-Zk*lcQM1PmٕhE+EZ,mRcchFUѲXTj-R6FQmV[m@%- J.:o"(GWwnjQ** `WQKKN7JP+MDSU]wqR!$$$ $3)n(t-Ջ;$r6 N$uBPVHgk'' VJoNˁ%wW2n\ݒ4(i(UJ 6-HHw7B 3Vఛ=f9ag854(k|!D%mtm8Uk0PZj-4EAHA)ͪuRVW[׬z遐&0K3 1@330U=QiB)}'-;PPR  ~ɀ} r* rpzNR B7u3 aS053 Ëyu.8FG(x'ۑyrNRHT~k7]Yn7;vrz+ZY֭ͭmkjjU$A$ICC@Rǖfr߂D@B!=Lw\s8qumh߄Py~oIPTA jGzfl̛ )J N}T=@vλyUtURdE}G7_NJdaf 0QU*nx0B޼5v|LRnV=+D V|ĽlGfd`Zkٞt08ZgWVMl  +t !@@([f+s*o"-14a)33Dm3 VfEPQ&>h?yn=@!ECW0k3"3#5ӵ:+BLLqݹu05yy)tZ5r1HI &dFl Ď殆]rYٱtŹW.l\5r dF$h.&I(Mx狃De 8v4w[x"g\ ۶..qZM뻼ma 9,&Cz9TSDԩG2 [- \&bB!-=oI̜t^w碛\MkĊԋJ吣T# X)Z5Qdq#G%pBct54uٚAQA!0*y7Ks7w]y{N.j fxwq=#%nIS5ӦyM2;Ǘe.vX5x EhDEFLXvD3:ה:F2JEH<[+!lR+#Nм׊WkR#ʂs#la#+lي9+rs28"d\Si-ȹl(-p@1ql^5vNo \swb⤡ GC+S2&J1L+!%#$LsBdLV(ql \ĥLdr)j &.gqFnEwsnvTA!Z1n(%.-1{xo]^QUZ2뎍wW!.'~/c "&jx|LcVf2z,ԈC3irRl#3,f,#!Z"T\"L5 ZA F,PEX̪T1Ń2o;{}AdpL Ѽ"pV`rR "(LD)bG "`-1 Em"+&w;NxƼ/ [+L3@$Q+Ƹy- uFQB+&Lq$Z$dFXLPeC2!)jW0Xq"bPR(G&8*GIdȪ#4R,BH8)"Z0`hm,[=q <,(T$+/t`r!}:)XP8@ s$핮rHHD(qYq52TQISQcDh V,h kdfA&"k&ٿu_Ha{wKJ)70DŮ\BHbr4H)3*8]x^-٣A97fExU,tř_ +}wZ̟`.-|G_*eNf|>I wSW q#BZGl50`*H\PB32չiK)vo'Fd.2@X J4k (`o.3Hlmsҙ wfc3@QX˻Q 8ysgQk&m#=dy.H`"Qk5S'#&[HpT536@ RQV͙ZJeQ32H0[jA\MJf WI9 l,p\T\؆aa[Gl4̋@Kli5͒1ɔفUɎRNP3hPM.Ws 5N8c$zWxLͬLlpų9w!r1KcJ] #$!I{4:+70wH eGp 6M4nZ"Cwniqm$A6qsn٤-7nXH.G21 a3WDU"ip2]rX }>n9aX ٷ%n&"G ˜ՋaaqH*AfE+s2aX 7Hz8w 8\ S|x~qН FK*!F[cMˮh]Ԋbdʶ,5p qH֢A»s1kq&ܻMp T03j BB`"JX0?yz7yV Z@G70 f@٘Qqwʐ1 Ld̄2VB4d$s//zޤ;aۼpY&+R;vjknlCi0E=}&rfuiwid#aSͥ6i( ",f͗hdRś3Ջ5nX 0ۅL`.DRTIდvIDR|pmnV,^[xań$$V99yIH L(L#-q\/m.2>$c##HH=MES"$FC fni7e6;F %0EdFHMmܛmwJ166Dnt*^iks}'ot"!Ys  I,\~C~?pK!r()PSqOgюM7 Tx9`t13RR/R`q8T!0DXLd"\1L,sZj뭶.--dUu9&H%E\J.Pl\c\gwЄL¢=UAp*%qim%!'<: V)&ہc+i.)B1ēREt8IQ\Eh:V̊6e:I^cɜ-LfLʒˆݶCDSSj!$v̔#]7WHɳ.R)Rt4M%_ܐtשHG~mST qxfa9b/IQf!@.slt 35"n8L*)\R Ko,!59.y&:zԖ6ۮD'MDpG÷=TrK#ֵF$qb`D,{^tvoR1",II{|'B(lw38Xp^!UKWX_ q|4r<64y99f4Ru;MsSj8*FYR[IfA0!Wo?{;pTnD<&NNZc=YXr\z)NᆲdR$ԋy^}:N87ijj^zQB c:@jk!<^듇zM,qgg IiAl,[׍ۢN!fbGMxHmܒnwvp݄dҼǴeӤgc{w8kS{SHFIVr뗳Ղ8IV1okVyxvxv^s;R*N+ :p~_ҧ9üj0^ x(\s^EIznKgNx^)e:!,l9Fc랑Ռ'4NG[8蒬_Dt(i>u F,TE$̮Rě׌sa.7"s+ 2ym޵)tGI;trE.b i(U9:njU0 X \,=b"D(V:E+y t>b?QNhGq-[5QJ ǜѻ0 % GGvL/zWxsv_}վ(\ȁTTv=E/M݉0aܞ ߀`QI$iPπ}φ}QIGG9L'o\[ d.H 2AA"}%*APq{Y 2s7pɲܧʙ?M[N[K-Qt7b^" F)gBOğwMt}co/9@Ѻ݇?GÁޔ˵2?xjդ*/˿Fޮ׽uUpN:.|m aMq[g:x/0(p(+H*a)|wyqhRlaǁ1z2rzqD@dS$?܁S%bDFJb@n{$B (.!"@cܧ̫9IfװHEЬR,[;=.{:iO| y4a tWF.w}6/T*xzthʗlB) }h;=]4[_Gz޾zޗ$(<g=G.OGg> ~PӺC5}~*?>n=fOY&ԱmTQl-hqI 3:jPc S!8"=A*z]Těo%,1Rk +JgWT=4 Sv}坍3E\%L!In_4}Y[Ԡ HiN>mVLz+g~}>;{ZgAdanKӞZ$Zc BX{O3cJ)'V?kMɐF]Tya^uy v ضp,62g1dxxaxsD@qbB) @{ wG4<=?􇧯F;4} F X|ϤC )UHo/:{E(IH%x*sz aH,w~z8R`j!䚞JS7Yx傒"^ sh!Li>c?vvnysq|cI IOht+A^6`s9A:D9a{[[?!.N>, "d$wzz˷á v/gjoiP*&߾S.rgI7@+vZ~W@\‘ fṈzaѕ1Pv7`eYH7Ƹtw+d>=Z^L9Fs L' Iꄉ0;IFY2ϳ D,k"m[-V֡ uFMu8!@z48<])䠑@$"/=bR"<`5e<1#՞ɼ,G|&eTz=ɷ&x)S8EѪwNA%蹽2ZR^D+ ↲bΏ_JOsьh0|D8{)*P( Z*Dɭ*$yց4u7Tj!B~nvN>N>> a]$ł)2 #{+[ÜvaE]TվG:(4]AI9dkcE8AM\`bSb,)r+2tYBUnr̓V M<0g￞bG*;TЅ ;_cP\ߩAw^{stqD<"bB DO^a6i7ӹzUI\kNK8i9JγRkN!3U{ -HqzLÖxO4>?'Lzs񿄙QeTnEЏJ dyVW;ejNï(bB>ߞU dObj).AS'9^[* @K||Wuuj:d+E(H`=a2 +ouo~-'9d)ne#JRLU=)*@> [FJ#dȊ!0} Un̮VDݞQyWXP 3D"q=x^שQf~ &@B y2 綾ϟ+Ns2/9ݲ<2 )yJa8^nR)/lv[;D\, قQTllY <=4 |]ö/넍~7#=ieWnфح@TQײkطwh?1D'LdFrm3J;-qͮtc>Dm.j!EhpqC~ѵ̧ }޸6leҫ|IGeÏ_u>csM~^^:F+L]-/cP'Kn΅A x x7R@oŽdQR Z$,"] cr4hWJ卤X/ˋj.Z\VU~:CM1x8aV;/] q:NG >njt盹 <םn⥞k wOqB#9&s5?zUSմc~je=uy{YJB 3U q!Ie츬wM83ޭ/+kn иûJx!{?l;30X2~aI;07$ $ FD;,[Gb@THyj|w(x(r DJ]".s!R%a9@+yxz{vxυ9:($}~~ܴs>p:FaT~%HZq}AbA naUa%=u nXt fJTG:YeHM(Saҩm3J,0p;DBk)ƅ@Ʃ8ow[ߤ򼙚ן Ϟ ٝn|0pݍGTb8(ieMx;tDJ%_3|$Pj#BYKxvӹ6G |= Kn:V["&Q u>7Ͻ GyXoɾLmےT|\o:}-\Q-=VuQtFۜ'yr_w^9uK̾Թ۞v_bQge^K[}=D؂2\Tu 0W3.^2n)50Z ;\HA He)ĀHK"(:6}FtzyeSq4>Qrt7h[LI)P59-wp_vf艈EHv%W>.1(8۝Ynlhj n}Pq/ʹk쥨M~֐^{lGi^+/YR^uzXZZj_,Yݾoٜ'6K|Mф sݪ PQ'jږgpbƣA+)qD%O9XnjW(ǿ}LuuP|yҕPq/ kߗmsҲ}o䲡RN7-@sש0ua}5&]~eOa/]C>v^0wq^qLo#}sFL%ufܕ‹,a*y#nwܿX E|TNk0>kv Hh܏O vڻ.e^#|?OcJ/Y",6{:6G7 =8Y ;݂w5xQlޏ\?sqZPޏ}a_TFDdS4'pɌlfGiEIfK k=}WuO׊ 6Q$W4Q}} ݂> ~N}Ɯy97L]cz:?yZ*o?gIK=|y\jqZNLe2k?M&wMG=Y_0e333E¨zVFw%t7 N_~0 zɌ $'k>?6|L/]o{7>NT6Q7~L׍kiP@^W3U=#gݽsNsS[Uy1tc|޷="i |=G=}HfBX@Gd $YP8nʶPPAMo/֠F_* |^\*z +A}pEP QDQGDr Q~` Ⱦs!y{qbn#zNgS}g޻U^O3:g?foj]' ԹeeY]~wb.r6i8XrPW7( iuTYwX]6Ƥ9s^:\~FQb\ogQ (CW"x0p@Q>$Q2 Ȃ4ASU/ TVGb9Gأ?666E7cObyxD=k ֚򴱆ccC2.nng6&OК k*prFB/|uM`zl1q@ SW:MIo 7B̑3#m#Au3_0s\o?wGV3AFN (R[@hESUn^/Nר/M|]W 4/q9(B=o|39F?kop Z)pyت`:DN9WJU4#4йd<9G $8(sC y>{7ޣ`^B aDk82?YC? PS1ĭT9A?m٬~wF5Gq*̨|_Irދ1 eI~tvL 䄳`,0ʔB5y@/2-/9|/kr.~^۔g+v<#-,"C_kOcm|S,/o 2fffd փHvs>"EP beD !sO(|_az,o.\6o(CEF|ߘ('ـۂ; ّ:"/㾇P8LiۭjYZZg8%5Y;Wx9bsg4hHeK@H5Dy9}tl}?F9e5k2!IܵIL1--ꪨ_9 k6lSgÎ?{O]Kb~?;.M0W"Kϧpd}Wi~%ǟªb"uʤ-ӆe1wrP1ݠE&La JRwb/y89~:d6& HQ nkXm&Y0bP1tT^ S;D"*~ƕN\sg@;Kb EP)".LQl_܈:b y$PVE@.EAˆ8Er!sel/=arXX \XTAr uʭCfd˰^:@QE@ M"J&A'CaYƠQTQ(.`(C޽J!dbL5`ieIP5ZR>DXNDqRr0tQ@dMt@:H"!Dq`=ԓcD(E` M@B޺WmLx]cTN I Y^k,X; u9:v@.qb&~eDP|U:!"_Izk ^"\tR̩bt"!Uwa>嶁>OžK͡ONpO7@qH-S0Oj)(`ȋU(G 9&*dxrPUczG/v2k)M3O.`aۆ6 qD hBȟìy&Cqbh l|ƛ?2M#B3Xs[#BI|Y5,d !\i1Av+߱~վlhV izo& Mw".eL4U*K"N%NyXtCc%w"L mںEjkd7KjT noZ6 [ A,U5\I.}Up ѯuJ*K" ^V mRW 53:T:@fkAVDju^all*A0)Y-ReE>#!bDPId*#(g~ TSMp>@St O]^BʈOe)&:5,޶ǝc g7zF}ے_{樷&[úME "-( pjL׈–HuS>&WzD0B<,E+K܀vA3y뮘EQF=e'֚Bnn"zfM9 !dxWI`Yclb`LY.(*?hqt_kG(tUfF9^<"6:;̙anƊ+ߪg2W.Z_$y:F=Mt-W:9&ZnWM?*/%6VM=$:/r]|>:kU<{qd|*ʬ\%M~AWWtٷ]|]VOõWmcd7sÿOwg<;}{aJTh΂RbӔq-/D聑ͷggҴ#l2Wo0  k.ł46gP|&,KV sÙTPn+`@}:a9|OWWV&]~g5eoYΜwOV8Mtt~KK]uV kvV{SVzsif3,GRa2`FzH\=`(wV 7dSVGPTP `tdE$]8Uh F(_u i5DRs&Z*Rǎ ɀ_\!_O0LTp\l*$M'-n"߉>[`ȠU 5e)6PfK {ԏAdR؂dyG}߸Ẋs)7NTJ;pcV'BdU|\ h镁s nT!boKo|FőEȚ(m紥UJ*| =E{~y<`N0sKB+DuؗjG:-wnKyyNvVf:c 0`c}Ȅfki:16b1$mJ {oP|(AyH*br\߭Sm~LDtdDzvt뼐Y|__.o?{l=lÌ\E}2! tNbnLߞ%F蠯23|%;Vh. ː_9 ~F> ;aҍ'YuzTi[+ k??;Yݧ9|{)gIy;k_b~{KE }S+{ l,}"ﶺD]{/c>~1{ JzͫI A@B ` PVC~rѽͻ?SiC-z,Ӏ1 ?i圗e>W ͓|4116ud{qzfɳbxӳs1猪611/iMk2U}m=#'_r\Gmv rv}Ee˾ϷK%lYY)*?lKl\}[mU\BcK>]mv=.,BngF w T-hc93~#`n18 ;/9+7]q6T"Xvol~[a_U!ZfS0:uJNZlؘ坤;δsߩ+n%~ysOeG$Gs0<Ǎs>%{GiY/ |٫.Ջ\0 c_'0ĮTߘ2=t =Ӱq=Y)P2? S2-kO9uCk)rN[ݬ0}kPBjBΆn TӞDHo@vq6hSiQ"@39dMPheRf2 *\$Lb u2{ s 9>y,,pnUN"QÀ|\;(}^D3 ^B- ynX "\wT jpȈXes.a碔y?~2J.AP`\,z\N:cX(8MmzλW| &[@@; 3"F@xd".ƯPiE-#d@H/5涄z(65|x8ҋ_&@ܲLG0+5̰4C"7ѩf 5`4b` = RF 'ES?"b l?be=\G?^9q/"rc]n;nr'e&㱁Qi P|M6첵ݹ˩Z^$4DEL >22L@i:AjnDVs[LDlh"ib  rT,Ûƚ4ۏGt|NWIigۨ݃$,Z? Ӕe7J_^.|cli7@PSӻ^;mǾ6& Xݰ3';h&Ӱ1feǼ;KaQkDA!LZy e.bjAzބzcDL1qb4W؄VUK͛w-]VgSv."o/83׫㊃ AVhrQ7 % 4#y}vtES7Nn?yՊ_L}s~ɺ A${bCvLEOE|:F"8PFWiP}8Hj^ +WH sCC)&s iȏUt|sN|H$K-OЏRII1S1JPfSl ųH%]q0"!̊25EZF㐮Bo6m_xǬ(%HBH#"1*LϳC|N1mMUIU? Q){,XM>qΕLgV,>cf7I=lu{p9AVJOa]GqۃLW|e)l$=,O@qQ gO[8Uc:Cy: @cP0LBQO?꿇D)_w7DZ^oԉ<=MCuw˦gc? ii{M|)%T<*_w~(~E>$љ3Eyf&/;{|pm>n9|vC^o-i"q=wXi2Sžn~7m7 |=b-j /,e *1ZMR嫚qP8SIB A6;1vU;]9 |V=fO1N֮c] W[. r;[t[& Eb~RPʘ;@u&@p!v c0r->8wCiIX‡#HwT`?6*`T!^Gm[m"ljyW"?'+àLb! 8<^m]_"ù\-ZE6v@4dB$a wGdYPL8W ϟ<<dw;#h^9 L wu"eys*~Ϩ6a8,Y7D1O.6QU7ּHrvJl&bB5i}5,p)"Ɓq h~0 _mu:m;W~6n4&J=Ys֯Q_JȶUہ[ʬ#5@c{k|"'.3M 5E4Hɍ9S\uζRwvڛXSpɐh.Sj~2مKC;gIK|ҫޫ,eo"#O6܃.+7`ޤ86 f&S!bƺOO& i?:ɽ%c*w}C:ukIwz+tc.jx|)?bl,̰ dR14RN_)܀C( o˭#o~JtJasX\- ] ]s|r/LnډnJ7G:q62k,ޒLnFo1ƒ~T:._Wv*WEbΣVP?"eם(dFg \!~ ǹME8sٍt n>j;Y <~YkGx9u-4|(;lSgȤRY`2.ۭVgPNXs;ueuX*ʨSLacΚasl7nHsn.IߪWW[To#8*sAGUTxY~v>3:VZsdPxI ]P*|O3 Sq8~,XZsU"Vt_9 Aș+~D2/e+;M f`eʪYv/'GQ$uS[C 49x>yD TB#9Rkpu ن/zBzt<)F۴Y.#E)|ö́o1eC ^U\RU]&Պ[JL-))v^-r룮w[7>]wif}t! h`%+-Va,8'D`eu8NF u#3q>;auB50S4{ٟt w{:+&g9|UO ~ק> ]Z_zus;qi.nɳvW"S.wJ_v~ u)_UKo父 ÝTwLZy889[vb;K[,RUUj|6_1"B! @@&A*m+DeǪl7נ>M%7pno{2'ƫB adF־uKpHZpo},sQc PҦ,Y ^enE|l땿k #$Glq5#?²~t 2/yPzmT姹gV9\7p`M0¯ܫ:3TPyk<l@:CYꜩ9G~ pH:I"o9gvO<3!qɂ~w9L3,.xvIGY R7 :D6 RHv5"|KmAmmOI$PL[Β#̎og;^Q\)tŎAgᨁ;o+T(Bq9$҆q:*Jk&~ʩt!Bçe_uC üĿ޷Fc(Ćz&i5;|*/vyuqF?7dz[>?szgw_VP4$GT[__|#ׯ1ڼTѲU-g1sa!a*OMTc8[ {hX N0a –nMvќ pVθ.;AWm}ʵtsd_*jO[$֌YP'!}Y8nđ\7򅥏3lAm UEc)e/Q=[Ӏ„>[M%r/ u_wvz5U0&ͳDׄPzDl䬙"da>[ F]g=Wv4t+;ѣQk_3#12t/܀mHAz¡','nHsw݆w1vQM6c`Ղ0k~CGkDz@쾁% C^ty/a:LCEWq EMGSy3I߆u;DQ{,|֡Ì\ajvWC />|P%Zs4%-B_ B/Ѕ)h"LLI^w,-w VшXꐠaMMPy82 4?Hӈs Jz畼$)Pe \̹bwjoewa9 P豠%`SȯQ~A~oٸ&$0my7?N9ȸ8P~Rm>].$w=̗/%D̨1 vUja*I$#ǃ9^WMhqg{;'drk.ou mǔ lZpYyQDZ!I0(*439ʧ t cMMY` N,j`ts aovHq}jP uQ'G'/vcb Q%ϓym{͆ b3Tzɘw>)a 8 *"8f&$ Cl,7 i`gޛ 쳤ɵD|mPbUN0CB9% KPdΡR0\vsuM2nzHJ &Zi rkBk~v,1"55w=$q$| O%UEHďڻӭ]|M\w-mJzlʟ/oNf(>ͦt(]V]º;BtNf!Œ遦wR)f11.h́'xdYo"hgG~_j]~%Oǜ.##>琤~2jV훣 F ıcʢ$rdR*eYv"{xŮINJxrRҋXX3!*>Av (TruxL2O>~5懡3Gј3n߆GQ~O:#x 4=b"nFzqa))FYw,V2Kc,OQ )NZhIfr<2)X͎JcbyT|*Z#bIYX]t Ѩ]sx =x/љ2_R5_Ġ@ld^'6ښz5aS@e^ѰP!rgNr("Gu|<4&Z WP,+)̲`ݼcɉe lu۟h[tw=qۓ!5b3e{Y=C,T;-^'-:9,>漱N\N[К0/'I)R$#O`1 sq~rVI^ۺNS 2ccWSr]axH߯1YM0oYQveXQγg`(IxL ixzy? ?A%lBJ~b_~U%|(Sk4}&>ncM=YjX o:j߬$ɎVaM` 69UV%gm bN 'hjJѧMyUK9bY9M+?OU纽. 2"Fǥu_urF#,G42)*s=nl\؀gܥ Ic:R?{)jThEtR"Bnj8ߴkةZ *$7Z0`!G!UT<^ Ǜ]a3\Tat4"׮dIBj auڞsZpnܖ KRׇ N'bt՘ӥ_(E,%għme3I{<<*J|:d/6vJܕG=&π!O-.KRpy+PDYbPkwM=\~]+9@ΕEt]_a~SHUoԗ/*zwzUv243R_COgO TjLTCDE:XRxYZYX4}ht%9 #Ō#L=߿\3wBެ[ 5AI9`~S VbkswSTF )~_=^\r̋NħDh#jUir׏NexUkJ '}̴|hB}Ɓ+NG:?W%mw-G zn&_4V4's+u ,6C% {r,0Jddq*Ni/ezkAUMT#k-3Ps_$Z uЌ;?p>%,+q(TޭͭX0v\fy#ȏo X5:#o(\RSfCLp .8acomxY;En n[+_:t0Sx`/gha5V ePlߑ 'wkoʅeL1J|P{ z m6V'IBuSGh>ei|ź.p< äl& ù{B6ߊ^+ YO$<ckFJˍ$KVx:YOl0 =Mquf~@؝ϽxRz*_$T1|WF{[tI_\Nz]B W=J JA$/.Ѩ<ȺǚC%7)!- M;G݋RL0f]* P4䆕jTB&h¯Ɩ6Mp_Dxq"VrNy{ss9ζDZR{,}W5@H?T~8W5߅%ȼ<ͩ wf)lK~ğ1CrQ)Oqe9M:{(Ō(!h촾 )w@tטK pHDH: YjhQ?훀9(G+gX),|6LZ}cm~0>@#3PpNg*?Tphz |c@F0-M?3E!: ˀlr LFy#"Þ\RLnE؜ϲ;+;tP Qo0qpxYVkI5eٖ$Ӭ]zk_:cx L˷r-@%R:{@jˡ{5C\'452Tv`|qU/1@ƑCA3[E[YXP:qfe ^V R vpڃW0t_r$/Q~%K T9 E[ qqܹ9up%\U\Ojc&G1@ypl+<FiPrQL9.JmU_. E'&jɃRיekk<;LTQ( 2qOșTVK8/ϐ^N7-# oi=q{LagD6f3s̗ 'P #e8]kP#T'$3_qpBA؝^-Wdg<cwvl x8߰I0 i>!2j7i׼\2w`x똋= 6I"[L޻\;?``Je^#v1z7V;Vb3WꀦR6/f vziKWQAZKtI4FMqԺPnX`n ]y36tF&۵[~0#[oU:t{J V֏B,O|`)(  N-c%@#(՞*P(ˢ f-nIy#YH3+A{E v$H*fg`JDgn.86tzXAv(=^So ALg'CdL/ɦ@~ >Ev O̅.2ʷ~붋-ne OHqz:#CGe ǰ0.T1 <6*3{8'dGcs>YBys U^/ޱl>E ԍp "HfJ^lT[7 yأ6 >0W9/(|6X&ؐ`zrbn߯->QIaAf. !&8mF# B{ax$K=$Brge!?"e''LeoLaa&p[}@U;:$dE$ fA*k!Ҁy(9l?NgnN#7f-{e嫡|)qUs#03c'|:q4s3. ҁ0`;W{= ܴoH六>?-,Lo`Ik3_y(9 _C}q6{O4>'pTTd**4*pa2蜭{Ѯ2\4+>GڕS R, @z+X+FIiWǙKkK[z9B&w #鷘! A4MvM^>jxEGqx9 >A1Oq)bVugɩNOGNJ/UT,N'YXޣi R:RV؅m$UA1F: E cAZcsvAp$SStq9Ah$ac6vVfվ3h2^$Ep1`w>v/ T_kDȇ|C"EsQ$D.2ι}S~S9[UDξ1"`&o"_zJ&4WǛtf05|;ـ8=ԃ}GkNݾ$dIAe :;<˘VxYJсpm6&kbIׄ~Duy`++噫do(wG8>(TNⅉDa_[ e:0eŸRN(7,T;zH귀2{x[P_o\_ep)17k&]k3!1I4[c}[QFQۇV24Irs)FV荕y>cO}S{8BP) .4ۻqr<9Dž#JQwWiTR>ר&ݰeG_MV gwXUoÞK|AdjM 1[µ)yaJ,ƍ  "]{΍nw3O0<v&;.AȬ 6I/uC"M8Lg}Hu~ tZ-a0,`Yqs/9@pR(nd ~O\)怿G8so)g,1maNFUQ|Θ̠`Ζjv#ʐxh6Q#ʏ_ ;[gZqOݖ<ʫOɒ7Aϋw=wxNj2wn"jPůؤ1SYu_V~ӼOKd1S6Ki)a쉨0r3-K ^ɳ9B>r8m #Qл,se2NpGqG=uv57NhA2sbY@ ٣bW3acu1cT#Щ b5yIw1Т#q{F_P J/Me3Fܝ`R]4vBj U "_lb*dzN/iieZ}=׼F$v<#G}TR+et$i?ctZ"eϙtaf',bE묈Z1*tS4:,>| 9y|PPc~X31}w4$t+VQ AWp$ҥ9lP1zf=Ar='p\-}]#>Cц`WaL"S=Dm^ޔp2I_l+m<`,yO'x[AKR;kn% 0fCfy~DbE){Sg`ѥzIU5#w5:j?9終sѬ"e gr%JD1p#dk̏[gͺ^ f:ctS̹+Q&]F").ԭRfuƯ(g\,|7./>'+_*Yg;wE WрTkĢmr<桝`A ߥrc ssc Bvi x2a S7|W&.v/ϪUlaI@{*0-ieEw=a|JҍO#iHLAtd|{F t|pVĻzMMmaǂWn3`X!y8».W[H~w9-mmHRfQX:x@ ~빵BF@xxXAOmʼlsJ38S]&8}̽ ;HdwȎ u`BcҞ}Kz<~2ݰK \zG?I׈qp ȩ4ZEqk&W,QӂJQV,緪sR;aqn7[(B` %%t}e j2aBJ=/'밢[%"xFJW>xfЉ7'w4]$wOωHCO+{/~YLkt5MdHgt.jƂ({ )Qޭֶq1Mz_{/ 69|܂m uqnM^8^~gy!Xtr}51i+0zﶵx!ݱ_ۜ.UcLQ/ x0^mlZ>CyV ;dKu4~tT0fq\ky縏"7//`j5olƳKGc(D?S.oF[K]qiOuIi[SÛx~y 5ɏt́ 넑isbhPxOT9rٕA'^PVwnN\n Gm~p3-~!hvȌd2@qG-ek)b"3^ѩH Q}tqtճ}i9:(?,WуH!{8^ U3^XGTqB`ؽ81%NUmo e:hb#ӔS22 3>9 %jos.ٟ:(ޛ FN{n@1W6O͞YOBh-u'._T%\(Jqt@;M8Μt+Zj<<~Ÿ\݋R=וhV9  E-8tT80&JZN@%Rs(UDO<1%wIs.$1`4d dض7ڈ:O)]4c"&Post%'ֻf3v IQzxA{`7(i]}wh,d4kd_Hfՙ}Sw~CZ"-ra~G)`Oq`}.:qمٔܨ {H3(*>tjܣnpзBGo.N~8 ǀmF{\`g= CבA*<m 6ZrvCIu1Dh gB˧vI3H wS,D`9A^+5/%j *oQY ipnY_.rC̵V2weSE1'4Jy^~\]m.ʋ.mzVnz?|ێ(b Ǐ+4zMl$%$%Imƀ .x.% 3kR YD;N[xt܄/-~V%ޜ.5]7*?pN5;aX?mR|~>F>$ϻp<@ǻʜ-!6O`*Q7P-qYƿ裗 jV_L%n+ɡ͈X[7$܃PFHìn"4# ~Xse{!*x!QF z],JxGF+ 'I:wWb :X_M2,E6<R| sÜ8.R冔9_(KDf@շ v9CH O@ӘVOB 5T{ס@AkG6W==0Yqy֢Ol?10 /5Uo-'9 maG,yԚ##RG|$q+G.h Y#| ۯe_Zb)!? {L; ke[ CPlݚZʣqln}<8doH ՑjNTbʙ;Zj8Ibj\;!H t^'Q`?Ak Yق<(M}/~X( #\d srFVZ UA!5ZYNX4f 3e>qu TZ/,Cd$`7xH=m%蠩Ҍx%|1RwVW6xѱ(>EF8g_)1`Ua:Y}֔agtQ[٭ݾǡFbAį*x(X{5ZN ⌘Wϋ5KDyIR n]K4Ȭ,XFmyo nyq71Y>VBA ?b{D!8)-brbj<$sU21HU0=v kswLg3\"E ͱToW/ɓJ_g6ϦꌙM"smBT{`+ 5G?ˠ'bSaPƲ>"={!*/H}$}3i&Gs3oB qx1&9<-!_N c0tzl(hff9dYH<>@W}k[uY/3^695-W^HJ\9Y~-ņFR3++[b$G8I ' Tš=@\ 6)Mq6o \9*Zn^avao0:y 9v[dݖg>1T3KZ)6 WR~'Mt'!`3mn&v@(Q8I~0c)/K#mRi5rRy92*_!eD Uyut ^"N(8Gk}إ/ c\o0P*%U5)L`GSْexHSè8V9p[~1U k(?c3ZN>Д'1UsGЦp$Nfw+H7Bt!3nx L(athb;k|ױf~<`ƂovE \B?niV3)tv 2R\A(@]uu(09!P1@*ުdO9͓hu8*/dWN}hڗ- %&̝1 UZ :mV ,͞es`4j7cx !"7 XPdI!M"|vMXar-Gtx. MC=GbG{2eΔ>^98aЩt |gIw@bCQaNcP~ƖX8gXodHf)zHwٔ䣫C`cUVJq*lR2y8+vw(&u.f%dؔ_37 Ϭp_R>pVinHjB*?;\-\g&uLz?$+3e<Fw⋘J?_ ޠ>xx(.Cl>)'7Oyr+ȌwQ;n|">}DOcPVNjLT*g$ l6AȬZNvF[z`qE8@;;Xa(83M 满렅HP!QDdM xT2#ϮgJtD3`n_g0@==AɳH e!߷e`Go  @6\{f61g't]& )pl"Z @B1BIG(zKU.\niÛ(ػsU-i]g9hUd82'S9ZEF4A{tj/ɜjq'E{q;Mpk<*˸SS,f5WU (K[/tXi ċ]z*)D$ftΆlxY[@vyYo86Z8m-ǖ7Cq$&%={k-?a_%Fg&!)w2-_;/v )dU^ ^F}|H Y (ʼn< Dq|lbZZ8y\3&ݮxsr"٣2WQ.Pif ՚6AxC-p-$zՀy]-ꘫqiO8e5f{~^ $p1!A{1Ti9\0!Csg|~ $A33%f}":Dv//@@, Pk}\NS)"ϫEP¬:}#*2DOϜo^/?}P`h9IXG:"Q3'?;bV؍T3V)W1k*+]ۦ䈥H)-Nd~(f&:Wr%b A$/RLq9ȳFKt n3P}Zx" b˖6uMU(>҇ZAv/8.is63 ~٫uvg;wzdB^Kt*d+*Ԋ_e9<UcĠ|Ն CM؁aɘ;0t"?:i~Mi{{_ƞ@ñkb.OaW!c$ ɫ8,|b\2$͐`j$0lũ5\"83ʤn1:gOjؿCR8svABj_?7Wзz6 é|%JO q4^C_FcY eԹ UgPW ]}2F>yJmMTDhKv>-ϓn˒>L%bt:pyG͹K\b0yPU~{EȸȖ2]% $d$nR̈,๻M 3nYŊfhAex(pe ^e|0d!ܾۙy~M:WI#Ga2BB2,ZW YG3@>AE}K ijyo|K/`itVWgQ~o%wIJfF$1lLY0}# 8ovݵOw͐_v@(JԒ?x';>BCx<qnʾڦ2kR)M D|'7fMcrrY ~ᢡJ/ezJe@_6r/$]I'5Yi;Ooܵg nBvzK7!ChcsY܃m-q~FZw6$CɊv7<1oi=aE ˚H: YUʶYсi<9Rp==s!VPq_H0?y8RF!Te7PHAs1}wՁq@OFn_# >&M 6p)7^.)U\8P.MgcOiy"s k ȋbSr7:3Wdb-\)r-"7*RD?r-V6qh]Aig(*dQ%N0X H//$pQ'>`HnMVeզ(: ZE5Q!Ms֢:/HLD6DK[koeopV{1AÍ&AF:ou" hY_C:V16%0}2 R y ?BLǡd+ dFsLYISPbj9"` (S^؅1W1|<3Nw="`0FU ߾g`5 &ޓSLVSk2jn$ {n4{EbMa+פͶcwsVjGn4 z<5ڈ1XOM wZQjo钅Y`!&WCХBKNcz 쯬$ 66a&lpKN6NlI -(> >t1^9+ jAԿ=@Ϭu#pD~.Y,.Ԫ.و/a\kF8}ZfXLDkU`A*.lFUjIS_%U1wCS̿? 2֓o?@>ٍd7tqCm^-wyʷa3cfΐn5-̟UhVaTv}E՗AvnNu|_v*NA gض7~3x" SlTIyHo|14X0?ՂgnKyA}B{6M&:6?#Ve3A 3m*ģlX~\{*>8vp^ymYY#vN)s߫ avk+>b`lqƗ~|v/z_"֓*L!4`KÆ֌x1Nǯ4 03czrңΈ4g2|W"ko߰}3 +I2_SҙGyRm;,=?hhBQPX2kbB>+u~z`()\.ֵ$$R T ycFC=QgzM~z{\`j(4;wUzE7]ӭA.}YGް+:Zyf&UXOqxiK1Eьz\lǚAv8rpgo"U2c|n҆Q$RxFi\q98s]OpCt4ͰT/ͤv>jtKoN?i)g e M3;o\#A+:KU4yX"ai;"@ ^smޛc{ƒ*PY]+\ݞ$s|\&Meƿ=p1m&)E4"R`µևhn/+e~B2Ug>}J (*M苵Y ;%ІeTAR+*6Y9W?K&Az p+ҿtX&,Cxm׌+\~GP#j y[`!&"+W?q>tcy򼙶ePRQTkf' 9.>[ű0iJТ+xnm)9!ϴ{_.Ҡum%\FC:Df Zky.tcSٳ :\Fg{D)0躰`DLh1-1`QОw|go} 1܄))Ү:O6"#^ikLbi-oי1֒8PчSV >YŔÓ[13nzŸh锈OUO9VC}Pgyc &˝G1Q].hؒn~`|Hc I4%Yvʷ"z4r '~+ T:WWW5tiʩ z]V3cH}h@)!LsLIOj!.V;w54d)m`@,2h7˓BZ1G~Bb#-p,PYٝi;՛%1)W)ϟ'?G7%-JϿyZƲܒ>/&>ec7VѵC]?.S?چ;1̬ۧWJ} &7Xq*4`Cܿo"NCΔ'7..i}ӝW~@Iʻt${oЌ?wUԩ;(+P3Uf1('EGF{ZgBAORBU|k%޾tuvS (_nz33lkOl$ެ\#W[_GU)iUg0݀BΈQQJ_KUu%5;q+̏@xO?ѩVO>YH@@VNh&&t O] o^AS,<_ZX!2#j٥DYѶb(E? +{=M)|^{' FCS 2۔=?nƕoZ̗|;6bOfe:{dV,)\'ӎo`~;%BęP?,Fq7bh s̽9 FA-&ѧUU6OSP^r0jsO=Gn+JcWJlW`~CJӸ`ry!D4eMHc<5s )ETxw7p(ɞdr -\sOGsen )Fߴ[솀 զ&u`7ns4fTpȱ{D5U\;N0UGE9Q$blF̦VRB\s5oFR,Bjͮ޽-f3 Cj]neoOӌW0!FDD՛߯@o')y"K9NӒ<ſ"/ՆVo`6Xɫ6i[@PlJT_' 2{ۍElGt{Ns󢩍i 3(WmF+MkwwTw/wׅv9fu_$, :uqLZ+1Ջ$?ks).wM5Y,8S LхV#T#Y*Pgӿ!$GM;Y~]>py{p`]& CT "d'7fɇnŐerGh5LtͨD? S)TmUfA/牆y6R[V# b'M,dQmbxQb9@%0lC}UIdIy=>^G Un@dd4 |]T'XaJ5w&*#žbX65ңD(=8R0~n{y/Cwξˡf:/ѭ6B>6j'Dwk~˕SY䴱HMHԬc]xv:vE4NJ@CM3ծj&@Rx MfDX0K7?",A" U \dC-`jY;CďE;h Xi7]U^_jS~l ̵$^/o$'aȋ>@Ɲ) YS(L *<<1rAp =L%e2I]*g}s n(bED;%z+5deh#ն,%xPV~(6x.0<ŧHA7,ANoWwE h ?a$6;#] vP%`_nuV{ʮaWZU݉\sWh7 ]s@$8Il g#Cpv*ZKm4/"Hjl3S; oFO;&T'Eu rɠH~/- O•rGIv|S QlUZ( _|U%G+z]>i"MSt17s*$&.aj V_AkҴg$[H_gHUAnk +g&"s5殙{MZ(^.Ksb,XeW R > 圅*qntD3=SmSTwp6Y\CC^W\᢭F4ٰkFi?A}n/{۱~nXGjD0x,kctd3tŎ0Ky~^ ]9k̆C iqS@ S,XV-O(}(Ռ&z5OIN6~?65`.JEM5y^l؁{jw@vsT5rA Y6y1QrE'bQbA͕(6z;%2)#Vwef(~#I\MIrʲ;Q3{4 |Iqos>wͦ/oWbj]"Cޑ $>ON 59PsXyd޾TБh7* CM֘ *0<t?G{l1B\!_ӊjqʞ=:n߆E^d2YTAm/1QG$kg ND#G Ϟ҂֫qX\ 'Ykߩm^އVT !%9hjLI`HHVqP]hJ>dGO ɏ;ͧh)/4ݓ.yju+uڎw[$mGTBn[cb/vg!뻰i윩gxqVI Q/& J r^o-kYCZRCKf%y s\PEh8}V9v5vqGJU ~MEX)ߌA:VնΏ"Sw~g2XwIVne=´O.fHýy5 z&}zmEG αFڿ{C׷:S6'jB%Pʹm 0 Wv?a9%6KKCgwbXZ3ۤ>gʨtnb Dfl#1v!?@%(S2ٷrZ:Ѽڈ"l41g׃O<1Y%X DR%n2`L`x:&а2Lp%VnRUdRPɇεRCyI<7Sjc,@ ;խX"6 !I/kSco8n1n21Gj_{^{a4ϓleݴ|G>%ٞd*J>c0&͑J"ã]~p{i{p*s,G†! s(y'*{[eoB̶k.'P3x1%Uyu̾mFDm}n]%|7y khy{#Me}N÷#ܵnnʳŭ*!uHdk@{AD3tz@W%z<ʚ,A [kI8>CfB# />L6jFF2͛nG={` Ug-]/zQI Gn2 9EќTU-(}"@nR6IƊl5PCb` AP ƾ~Ri9dC1zHTQDPk^k FkEY0uG-]Y0@{Ԣ9gPkC)Jlc H</ $lTvf]U11a*le"}pDy*O}g(<,}]i,H1icxHuo3Y]#;%A"X LN)$ c5ɍKÊvP ›__kYktMT-.Eٹ8'pgĚ&ci 0w7gx=rjԨOZ+sd.w71#ދBJ7w]ƺ%ЌOpQWRQKr7:cD#4f{j<蘷1֒f[3 4ëEj-Gt9K=CV‰C r0h:}W̔ZdG`uB=uNCߒ;l pV-_BUHt "v$JK%Z|@b=cK7Jgx{̪i\vNlW_ٗ iRXŠ9tQ}MY@ n̅MnAO uÄB\ 2H 0|oyы\S/Q&N0V-ZWma }[۬ttH:!m|g9kу8sdzL ,l-FƃNua"f,o-dNCͱ*H*o[M501MIi8ʏmX npDx7Cv]1S]vAX˧ebcY+/p v~+p7T}=$UbT1Yg[=8R<:J~.2aY9Sw{VTp3I:Tq׻so68*DU/K[a3Ү'IWlcZ$ZZ8p> {ѭ7 2cxnۇᭉMw q.܎հԟ n?6(n+j+މJgx],Tp\S-2MmOe@g⊓,z-{v.%uJt Fm'o{M5ѤVJSWΘ1;Ӄ%E_+ژYWXyݲC8sS`:%_K|Hn4 )aZrw~Mch9eSg8b$4{-dq{dڮ\kbt?'  .l* G::p n>VJUlɌ(L,adOPo-E,-:;z9Nۿ=0>ލ_XyBŦJ,Jx>[EH AFjFG@۳5(+b~3*e]Åtb>+B0l-<>DѪXPD'J#JĬe!u2 CTf( +N"?K6Jz} tf sȭ7M2X@xWl´qg<1]9r,|)epc_d[* ]]dB]Sp0|'N!bsG+{}"q/<(5fG"ꤢPIvcq['12e9w٠:;5 D.>dVrJZ8)]U:J_u@_ i/Љ_C M7J>V=Òm'a~\p]Fֻ8Wi+rsAI;b%l|@yVw{ ]$Ƶ+1.bx'~-dth e;39@VY* >pBqMI(]"\lhA_; :)=k#59qyh!KN Ѵf""&3,p" eüe@NB:fK#,hC&7xq e-:ۡ%ljd'w4ن? OkChrlWb3=1`n3Zlsi.W ߋ?EK%k 2R~G#_FshDsBH'z+@YDW5bXz`z"'饌#t6M矱R%Z(?Jx7ICC}4"-:o+u=않D_1nGX۷?Z-TD2 (z]`;PAߴ?d8YضsNL\<09ou-HǷ_J d!_òt42ȻB`@fB^\\}aI&Pp x{f0>> }maNTj#Di&C]w L/\@Ǣi> w22|cΚ@=>%0NR§a8ۼ iQD}-_ J<"|֋n1Pڝ-zg( EƉwZ[B\7Fҳ;<:O2r9|W{o@xf:]֣ͤeb7ל v+ljl'vz0>_I.|,xSiu#r!vlY _J^YJy \ A\Խ@Epn߬+ 's U ~fm j=O"\\B!hV[>n*3;Tv'Uun50)"V+7 TJc&ğsK4[ 5vN'n*لܧhw+;;ٿg&GQUwS1 :dNTX#W+ZT,p@ @T`(:=4q42 Ex&ڋ% Nf{;ޕ$Rל1Msmp{k嵧Zkd~wU01l -g5^,|vB|4]nDeky~A΋YڹS0ROl#chאύf,CnW23s~U J\uTpy>x~hޢ]ZU:^賣*c{T; \xW"x0V Ux3Z],4+ X|ًBc"V*Ƅ*J_]`/ܚz9eױGOCP@1#[_z6Ѫ P?"v}0F99}i:S# -[A$%3tcZC:"|^+~RՌ-fRka37P `Wkm'.Ԯc&ƾ;]U:FzN睲鏑W² ۅ y‡~C^]f a:EݲƜq.1бC[g۴G~[ o!Z2{ۍjRA xL>!;Eh fuG/~Dl*43 tTF,enbG.b8N0l^*<VWaVvLN,GDZ;؛`` Mq7S~N F<յ(0hAQSg[oσ-]N{ ա^YL' A mafפ6CLm@7JI\i8.~GIzͦ?A^3scց#Y xͪ/w}uͧUq^T_*cGv][=e6[jM_w~ZAMy!z`1CX6N 4&!TJ: N#-"CUc"ĺeieg5DZFo\jD?IٵX!sWf˲RyZI&eEYìÖѽZlbVsFx0OTDJB\9Y78 .M$}x*XҿՌ(ڳ(]Ob[ؚ5_?AGzb A6RYEG7O=/2Khgi#cQuǔ\NTi685 9 x *d#{Yv|h<oE#p7E0SL+aPp'؟Z[Suű^x: xT,iv$rbaj@Zsc#_ lR~2æT74"_Iυ?K?9v)n$!V$s^ pߥLя`mgc8+('ĚaPV}2E>xUN-)#K:^ iC iF_šܬNC \D,M)`6ր4oc No񘁀B =&~kՂl,J+) z(w$Ba՜5T7I&3_ ~:*z򥤎;8 _dv/[qMe24Xث[t8%-U܅:ہYͺgD6Q7f,u%P̺Y]:^d2JpH]Vwp~yQw >gy`ڭM٣uR8GOܧ[8ZZK V;$'EV3 Aٯ`Ŝt:MA%-B *OerOmУm6s˂a,lacOVldv/D3nd[#oȦ ̽?'ifWnCq`YX=tVA Limpqy-Qq۠Ƕ4oH`^iK!.* L+CE1X}<ǑpR fI%xC-TWPlM0_/ϡ#KHS\C 6ZaJ<+* g $R_?4y/6rxsw;臷gzi@xAmt8dv%#m6m4OJZq2G'xFFVС˚VlCpr]^O31seN3.v؀~OV&ǿkmG]u/Ds^eɈH#sGhke7+#A8P,HWylT_([Z=/ ^r?E+m-Ԯ; v(86H nyٜ.t/&NLJP%IZ7{Zno;䵑G[".q# ̂V gel~ ehnߟ蓼̷MX.NDKbeȈNkJ7:Zy$uNUNK(IRW zBY:;T<rm-*Scb=%͗fv5c?"W#?fnF5c⩴yinj ) D_:S73"?5ԇYF( iOTp̚9 LUśA2,F%N5JdʑBպ0|JVձZcBmFsn^|49֫W Bb#%WRh%7Ta8fҀ{~I~K2}COIDN B)^dBrӾV`!pY7@ATlB٭DZän.(\)|AOrw.jd8ڋ]:k%BcI(Its~Nq\VTduOgB؊ B#CUbY2lstc)Bj 88!|Y9Xal[!DO-%UGP b!iynyvE':껹;1 M*%Q>_pd pX)+/jwYkmpGC)ÿ& d5nV"$@c_~=)<05}-053ɭ=FwG79EẆj;Fm㒥o g^԰h1ig`oR'P]=e~Mq)~tvҭmD[޷֮vt˭fܔRpW|Z6A'6Lj46.$3) j^#Sέ6\"Scũ=F)# a`3!%'sL6rm 4e8= ҞHTzW+6a8F:NOF`gl]]ߜI~B^o ԼqƧ|VA nR7 ߯`9zʙ!rg1ʾPKT\`Qjir<=#)1Z6- 'VXYCpȸ@%'bsQ8VU83* ݽ8l #X1~*5pUe#G,p51sF,uhYm&ID|ba3 H S]Uq9 f83*zq]_(.ߔV AMu2Ado߷h>'lU L 8Wys'  MHД5nۗeS81P 񈨲ooTiawlmTxQ"{O}ov;>&z#wZr?d+7ʷ2vi3L_N;o63= 2MMRB\Q9xD-_ c@XnZ"n}ccCbs&1jO[fӫAe$/S]Q*,*eocyzn*]#fVOl,ʊc<\̈ʵ~ 3?Fk_.Թ7@KTp篙}}ܬ>G=>QS+ˠe05{vP`m-B>'O5 `|C]om3_hɋތ7)DeĻC/U<ƜӅxJ5à2t` Eev7#&)ʙ̌#R ɎH MD-qq=g0. +Hm`T6FZ$JDC\k/=Bkm w;l`k"oG p['Y\ζ_g !0Hx*Q3Q^82ۑU)pe nZi;H(㣷561vzku)Q-"H޽ښ$/!"fm;Z˱X@/얢 ~=U;Yҗ KfC@\"+TBxj y0c̡rWt} 7gv^P+f}<mJrO/<-;sf[??S_m95 k@%$ڃZn΢AR3%{C vs)nP7B޿hnkVB!_;`S;9ZT8}EФK 40`B%*|4LU =mcr5Ix=I<,oPLѶפo0-4mE  _U vldFZe_Bg߼e!suMUBw\Xdڇ_1\U:a-Ʌe;"&܄CQaȎݺ OT:[/ݭA{^aN]n9n Q!(ð$3zgtb` A@cETkυI^\sF~̵_MU9o<7+MG` ur?osŎ]VaeDaFȃ3d6+g#P06_cevI&gD‰ t^Laz3Ɵ踚BIU9J 0}N\[B#%O.!/EdOsJ?總Õ&!)o:V,uXPdX؊Tve+.̻wLjބF%)gM̄z9&_HNHmq e@l>8yVao.8#[5B) *xOV}\O)tb^jВFEYҔ[F1e sGP&h{^qJNG(Ԏ՛׾Hzvb!c,I9A: T*ZQa92v}ESLUbs{j`wGX^`a!E&Xtt2T* wB:Kӂ%G$n۔)/pH=~*>gj/т$F' 8xaqz?s-^$oX.|1(?%9*X2|f}eɉS-շK<RP([տO80̱}HAH4W7n"S 3.LY`M)* ӧ6pdHanK%'RbwZ$&c=Hu[7m֧G =(]US7\LzT ȏ3yk2Ū6o(}O [D?g#}IBzF7/5Q8~kD"Ș(eZ4?sH2xt6c cx>jƝ%+ysh`oAtTTr^m|` TIVܡ15C;- PrBҝ]ɕħnA&B;J69t$_ߪ>n"4Zv%FG`YCAz`B?=Cz嗩U A&I'Gdrߒ/t5)3.;Z_n ^m{,EĖ+ "2xkoIAL\g@h&jtAcc|C [vё2訫o< %{ (0abƔw=%ז$XRrmmUĂ4{9W̅9* M(KxR17܅HjT >D4vIr f8h0?Jauۯ/%bo,/j!m~4!"* ,z6wD{UV6?W~dj=NapRǠ׿ W<1@?~@uM|gĤqϤ6HZc1"?^N,v)#WUiP!'PAX;k"oDfUƩJBFa9rQ*wOb¼ _<ŞXw?*Sב7qk\mEئ̩%dm.M[-w qzUQC=NJd[M>@)͸ y! -U4]s&w+)ޞ0\b5 P&7#}H(Pᑀ(2B\YxaLrw s^L_;Q{t\)pc]>лqQ<vdq̙ Us CX6~!DǕ-u^~@aX ߟΙ<ɊC?JT)}ƋVz)mhLT*04úaFCsخngҭɒt^Xh쮊t2y;4YћƋ}7TZ4y̞~J(e[}[љ ܩ0Jz!so=ogDW@@a=%Vن. 's^!,c')ONwGvxab%i >[y~$6@(ףT*eJR# Js0SQW[]A&'6aQߒf";MK_XgU]^I$` ⪆*o3|0m{ݲ$-ZU3Ek5 }Uv)iC % Q 1͚Ab2̮bF4&m3mQ< 6[=+O6h ?㤞QBTR[ OͯhtxE"߁.[K!Rr[*.2Bs=5U%EM½2޴#XgN-4ٮ"c`YT傧̽;uj0w`rIz煝2=jLI)5k+N٣d#9rCD~`VVAÓcK.r^OglȠ[ZYs⊭9:85W}}ltݼz~='d;* b]kj 4ч9n*%R)z Hum], Xh[R#01"r)I' L2p&J uW2*?[ +-9#|werפ;L=!jC{j5wF"S~qNI [у5&MYͯϏ1޹ H+na'tg386K=-bSna "L${ :l^(jY܀4kaw5QiJ}ʘ:|0S3h#J r;AK``cȆN7Tz3yiO*kW;k$C.8N4cfwge!Mn h]W1:=U:C@y/4`V\/b6.$u%oD_/|ۻ MD** ٌ?ixxb)y/D$`D)xJdѐAsـ#a?7ˎb ˘snY͸?7{@؝inv,ycg qo mk&2nl T}XwrW9"J ڂAZKq{V\P&t/H:%|y}tT\Ipƃ;)\`2XƱ CǍˍG ƹ^PVw &nFZ5ZD~Qɝ%O;a2޻hۖ"7C7yҺȋ;%o'](['k؊WTChL7o|ͭc\pE?>\ڶpZ7N\n];Ap̀s] ^ g_]Lg0>RM%wTC#nNQbA * EX]᭍ƫ(C\.J_(g _]nHb8K`'|DteEd7 YBKiH CB+Ϫq(KR+Q)1F$W[qXj݂]^I/ꢫf۟=Nɩ'dF;>0- W"}cE@l|EhYS#(b4A)ɗ2n)//U/pJ#=MU`"4`b/Hδ?!%h cX&fԂMsOn(aࢩzmp468"bWvsmX;=8</l[cCp<>U͗"TN&krA'"A)*)saǥX[=+'DwJn&_b ZE i׾yJ:WR]`_Tz|J*!H“?X"Av9]1kC2Q2|WsFUD+d}@39 )]5q0MZ:;UC~bҟ :ɞ>z}fqێ!ŦP cmÁ0>yOZSZ0DUdJfhBܾcȽLFYgJvR'F/Q[2vOoIltV(|Ζ6 s~\l n@{C*xdM9m|dq*d~IUP 7AoRPp=-nvIWɛ< ~ VF*VU?Yr%87dyyԗc [+aڝ/_u֏WU~omm7kc6^ 6D@2p/z N R><ڍm"/'2bn$L?aZ]TgsЫ2֬W8 3}pd'y:E  #1߿ eq 0 D~.Ĝ1WNu$W™KvX/PYrdՉP`,rEۿm p#P@#.H0,󍸛 M=V`5 4ihRW-jk$zO`q60o}0Jq!ѩ2zms[B2Ky+ixt(3R1dXwg#ݭ@0 ஐ3$Bfx<6 iIR|zE)S۴Z_% %LU9I (;9W$@mr>XWj6&ۘL=g tU < x W$TĜOܪX&2m5uawAO,P9*S?3u\sf:.ʲr$2kg;\gi;ڛZ#h^(HL 6^yȼ6'A`/Z Rر‰aZ~Ʀ4i7EK 1~g˱qr e N?q6$\*jS/[~U!G@H<&dr'عI@Te 뙴J!_ՆC Jw̛+UPuxtߚe2Ձ$b{AorhT^="c>3XJ:;&L@)`HקvRюh)(s"ZEEZ4}ctsMЊ/zt<,uLᏰk'DiR[2o?Ou5C}#.Wl ɯ΃pؘ[jV2bak~Jqo"8 WFA q; f&$.؞[}Af+֣='QF. rw3I<@x46r{UyuhhT#'+Gԕ"Z#s C`SF׬r3("en̍n%[( %Kd B-0z _3 /H,=e<[ќ%Q5#;Ar1rطXEE ljYCisD鼩0Y}劉xn#?2CJ اt3m2İϕ@LJ 5 %j=yOU^ P66IiA0Sl \Akvwb@|A9Mt8| XYǻrѭ$Q ?Oѐ<ए(YzWe7qIāxBs?el%6 gFJQPx7ap@~ ԰a*/E