fwupd-devel-1.5.8-1.13 >  A `p9|<O$CQz!i."KhDe!$YJ ?#q1\o JGuIO#_$ 8j@&gaV^{jA x7޲Nǭ5' h鹰T۝\z}٨Ԟk}^妋Q9$$GKcնBr/v5W#tU92QyR7O3;=N_qY P 9 eѩTNO,ckC?v%C8a5f3d9bb0a5e3c39d3d906e8c936dd125dc993f6a6fd05aaacb9841687f50606171d29849346829132c2d708d14c51474dcfdd9 `p9|$雋(uG1YۗdRv{*#@4 L; uT; ƨ{̵ޠ&`&2+^)-!!pzҺMa ~i}6hs"ěCnwKQ ;x5{<-ӞabI%[qED-ꛭMJgkhl^fDsP>p>`?`d  J 3Sfltq8q q q q !q "q$Hq&}q((q**+(,(-8-Q9.TQ:4eQFI$GI8qHJqILqXM4YMD\Mhq]O,q^W0 bXcXdYeY!fY$lY&uY8qvZw\xqx^<qy`z`X`h`l`r`Cfwupd-devel1.5.81.13Allow session software to update device firmwarefwupd is a daemon to allows session software to update device firmware on the local machine.`s390zp32D+SUSE Linux Enterprise 15SUSE LLC GPL-2.0-or-later AND LGPL-2.1-or-laterhttps://www.suse.com/Development/Languages/C and C++https://fwupd.org/linuxs390x@ CP " nf--Kvq  *  Z |/ ` I \rAG<I`ٳ[ Q9)]9)DEc!2x*u+Moh^,0Jp1Kq +u-Vuv9?A큤A큤A큤A큤`,`[^`[^`,`[^`[^`[^`[^`[^`[^`[^`[^`[^`[^`[^``-`[^`[^`[^`[^`[^`[^`[^`[^`[^`[^`[^`[^`[^`[^`[^`[^`[^`[^`[^`[^`[^`[^`[^`[^`[^`[^`[^`[^`[^`[^`[^`[^`[^`[^`,`,`````a`````````````````````````a`a`a`a`a`a`a`a`a`a`a`a`a`a`a`a`a`a`a`a`a`a`a`a`a`````a`a`````a`a`````a`a````````f3cbf852a17766ea52df4ee6d4c531b6b168c97eb157fa91473628bc4783263823999e85357b8b5f3d2f0953e9a2245115bbd48955eba7111fc36f230dbae45e73295a0c521b16bca98b42a29228c78f2687c8561104ec317fa17cf982ee95fbf20a17434988cc1517f54adab67c130aff925ca40d2066def02fe8584a337d716d5f1725d841854294e27f1fe8b6fd4726877cc3b6b7e98b0b376344e53697d0f6d9085cd8205680e7ba35f0e49c76a25bd36c1bf31961889f4106c6bc2f229086066e2a2ccb105be7c2ccd4ca15048ebc8e0a56252f9c52231f1844e4c5ec5908d071153617a0178e0ef5d269c87262928657a5c2271b2b3e96b2214922c383cf1537f7454f41b4a2f28d3207751da5f9c1b48f0b3c2e1ed1a6b3792833a105fd4e9aac3b87474d7b31592861636a1938945d2ff58a566840c2052533e73f0fb9de2d74b3999a8513ebb810380173fea9c145fd94d35565142d31a13f4adf2a887d56a173bdc523cfe38346ab90f60b8b3738684a8c63994b493d043bf180d4579c314ebca225e49e2f0f5c7aaf3ced394822dee5aa654b52f8c25ff62325f95ca9ec2b74d2422ee455608dbee886b63369286413b12ff8578eef790db615df2e9d38d4c8d3f6cad84feea1d97e73f80f38cac83c529133b91a639867571c483ca68c171d09d2f7c1366daccf63aba35a17073e443718be4e1b9a5a0f1cf2bfaba47c62f1dcc8e06cc8cb518fd24d41eef730d4f40b72ddfaf328be1eb70c67a76a8db1206fc8ff1e047635b7e387c47011e38793c2d9d74c859e4b23d28f3d163dbc1ca6ffa16c04f4617cfce2d34a9cd0d1d5a84252dcc1daae690cc8b4f7de2ba7b9213643c272e2bd82eb82cb048e77f601c7a8db7f4cc3860380f83f1c0ec39b218a2342688abb320eccce1d9830c3a3774cb28e3aee902d8786093c890c50d69b21a3da323403f188132b17fa9220b0ac147d7c13ef3c3787a5674d99f6d9085cd8205680e7ba35f0e49c76a25bd36c1bf31961889f4106c6bc2f229078b73e50b009f6c86dad9b514198eb7d4736b623e5dcff65b47f14070d579181e0a5b865b4d118fd3c2f172de156316ebe0b099b3df476c021aaaf0d77641dbc889b043909ddce94d1f24802b0501bb7c9c7497c8968c0318344f22946612d789e47cd14558c5e4d818fa5ecec64c964213a0d3727fa6234f037bd2794c890a486a03e399cf02cb0c84a54f84737381af119e98c2d7918b59e569b1332a0499d361072290c6ad052c9d18d0bacb71921142cbfee8c5e67892096b03e14f885ecd1877f29afe177fdbdae431db1efa6f63f02a2dfa722e9886fd75ca85e743baa41495f3f5e6d72e60dccc1f814cd24b3a93d36b801e58adda4315cddd82086ed7ab67c119ca914e730acd40124e628fdadae91b3b12120100213124cc35d3a5e38638d6576453eab38fe165b12d7fce788ed4944a15fbbfafccaf3e57003bb96c4ba9dcb41242cca5b8711e6b2bcaecb4ee2376b60d2fd2f4b2f3c241258ea2dc64be4767a1677f85edd97c500fd8e573cd8530f4739f5fdc9a3bbda97ebc10a4ba2ee43d804a261230aff29401778905379c7273ea887d30f286a3ecbcdb31d4a744c6caa020d6495e1f92b86342eacaa1e59180531fb0c8e9683d1d444a537e99a3a84faf3a9df02d517648f504037d0fb7705799efb7bae52e273900cf24dd84c221a71b80b78b75f8c8a07c9c91e8801a465aa80f8d0202b922434f3fcceba4b008a01f318d7d55add474b75a6c9289bd9f7919f7b4bb1100eaba87a77cf9051c55028d3bef196650c78f81ee881490065e0a2a3c5dd46418c575aea39cd2bfb40b21bdd7191a3c792b2b0bf51fdc9b05a0c3efa20e3d9e101d29ec34bc7e0aa7bd292179ec55a8e29199d55964b85f86710a58a953eea825103c894de1ae1155a96bd15bc7d804e4f3ff3e60bc1fcb2d1315c1ae40d5006d5329f8ba6ae3cae0b3305ecdf40446932d75d3e4ab92a61494771ae421f3ee2633ad31608814909ef6dd16f23ade68f15e65a3c20f909b983baf6882412c06ac9636cab2a9cbd5a30868c1cf804d4d219eff362a975d10088991e8bc1a01d8a2263433fac17b03fd9955686afd13263790933d6856a6eb1e580c50cdeda5b05f8a5d1581b8f7f2b529e63e34c8d5b4e4d5708d653179db9cff9985f6dca74b9ccbbcbefdc088499434d80f935a31a114ec2169f2ddaf36c216eedbf1fbfe4e91befb1071e16ac867a8112e9846ccb313bb173203a4fd4c515033b67e24b0bce32c825b836f3ab2a4b3f18946c01af41ceecd23db00c41371f6ceb94e9267fbccaaaf937a0d7e80b603a0ac201598cc6db9a74a81f272cb258be4fb0d948d7dfedcbc3b590488915536f3daf988bd6a5420e75dff698e673a94902f2f3ef142d3d91c7ebb181e8c0d6505dc3c9fd3a4c8b7dc1ed8be8afc8a207ed295ea5a8299041b2902b90ec2ade822864477cf15d30113cf9ca98ce9393f736af3c32b32b96ef9869ffb8f79287fa4c737f0e382321c59c16429edb1142d43709a7a573558cc3eaa23a9c7408e2a5aa71f77e2d1c94135b5cb24ea08da34586fde10f1c28b6ad242888fba30a61b3c2747a216272d11312f285fe828654767499567ddd08a18c2e661e2acedab7d6658df962cd674888fceef0bfc425a80716d74b3d0dfcddfa3ae6ba367789b9626dea9aca23eb322ad7924d90bb16d04458e81776fccfe7e6b88d06b836054a2328d17132e4bf95857d20b6e6bb23838c5e9ff8f3e82cc98f90241fce2c9fe23562e56723d223f6c2b24bd62494b13d76d7cfd3e5953b0ae666696a5fc11a95196146c6065072b295f80de0f5a331d972d0a81c12c0ab56e4019d966270dc7aef348335337feb501aef64a54321ab2cd9cad7c39444865fdb6e02633ecf9d5502b88dc6977478f4deb73dbf9122aeba7ef51df6dce1db6f352295f0532044a5eaf98bf431c3667bc8b57ab13227fc84e172636d9f967dfbe931fbedba0c6be291f391f38f7549988d9b26c3501a55dae56fe7df0a1820b3b1799aa2fe21934989e0e67d0552df120a013af846819361587fcf0c4c9ae729a2811e08e6d71a7a16648bc53618c91d8b481a6d06599946f85d7af28f325df17836cf3fe605edc8ef9b2e3b6d7b6b33267e9b3fcf02c1d39a606667537511bb5bc26777a5d9b66b138a7aa19b24104d206675cb9dde59d7eb01321e084672c4b1d0482b4323c6837a960db8cf0b750193daffa9a5c31d8167d7935803cbb117fe399be4fe4ef30ea8122acdb0bfac6527051ad330f95e2f469bf18ebcff00026fbef5577d5889b73adea0be60ee8cb5b60f67a8dfe7ffac1d82a09b80567090fb8246b51bdd19c99725bfac9afc1d62872a3a7cd9be35a0e3e479d5c6551a350f175bc11bc7ac8e6b99638ce178dbd1ac37563654067559d6382a7d8babfc6eb15120af63d3a439fc59fa2afc5d4b3679a94812c7b3f0252d61b1312dcc9004c40882a0f704ed6d01b9ccb49ad9da7a343643a52f83be2634b84f8ea8a69072fbf0e2516abddb8b5af682a7fd8f84678141cb6c68b0f9a2de09916b5ff97928ec1c8f39bf1cec5fcdb95eda182c604dedb5a1b3fe4bf7b7389cf36f7461d08646a631232fd7a89b985ec01d2cfec0efddae636f2c2923d6e445aedb906b3d7802b55b2c454449d3fc73cb4a46bbb006e757923eac7b47d4faf9b9323da34ca2a1e8e95a13612b557065d2d741ebfe06b8de2f1106343dcbe7f28eef78b45132aeb12d46297ba7d54dd0e9ca51f57540afb571f58adbf9adfa11285ddee01a8c4cbe23bc382bac75a28168d496d32ec674158ae741ebeceb6a6e7a003b5a47eba5fd32c334f742f59ffcf01f2b8c712a066ca9866877588d8cc3916fd34c8e515ec8617b03a8e8bfbcdfeb5ba7650d8d9ec83295561237ecb4ecf62a8bf3244db3ac660aa83f70c8ed5c94a50cb382b5821fd0d42f12264923e5b8b9cba74f7ebaeb93a4f9d8ecd3c9e82308471cf4e063f2e3a34c913423b8619ce825af273ba403adcf0b7a8d24b00f5fb6bbb0446249b605efdd36598e8a0f65ac3fab2e18438c73b91e5c564e4586aac398bcaa3e5bfe9efe5b569c1439dca55b06b338d3d0a3130ccb41634b3042e56dc65e9bde9a165c231df4052906bd26af3deba74987e3d7fdeb303355d93cac53410997dc7a3f9bd60f3ce0d8ebae7908978c8731fe9bb139ff0eb96fe775524c2d4d4f167d79041b17c5cc8ae9112478665132c31a1417fb4adbad72f861982bb78e1fd3771ebbc230a1a27559f8f662cf3229cf5b3c6ff567f2130b883b3c95ab17504880cedd2c2c208f6466053e0515c2bcebf4351e838b794050c64c498420599162f2b3b6928232dd0be7991d942b1dc0b1670eb8695e0629ad38280184be1b94602f2015707a28170151058f7171aeda501fcf0979d3b5a67eda502f1d76c81b8ed7a7cbeeda0c867a4c24dc206490ee519d4200dab0371530831b2ba10977c7a6c0fd7e6ca89e221cd416bba0828a20c195dbd73bd40420f2040eebf418098a86a3fb2ef5a9659c87d37b81ee85b69316b045a9453ac54b75948f4d26357dd018159078f36f90deeaf29ce3b9d2bd0ea6655ef1bda801887c0839ca68498a12c20f91817feb1dee5355a185271afd0a0abd188872030fc1a7e7ea726c79f4648ff57fd97c270b1ea1c3bca24c48c6a280c51a44d49201887c0839ca68498a12c20f91817feb1dee5355a185271afd0a0abd18887203312936dad905030c45e53af3485acc8213899f4c43d74e7143bce01a9d6bd959libfwupd.so.2libfwupdplugin.so.1rootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootfwupd-1.5.8-1.13.src.rpmfwupd-develfwupd-devel(s390-64)pkgconfig(fwupd)pkgconfig(fwupdplugin)@@@@ @@@ @ @ @ @@ @ @     /usr/bin/pkg-configlibfwupd2pkgconfig(fwupd)pkgconfig(gio-2.0)pkgconfig(gio-unix-2.0)pkgconfig(gmodule-2.0)pkgconfig(gobject-2.0)pkgconfig(gudev-1.0)pkgconfig(gusb)pkgconfig(jcat)pkgconfig(json-glib-1.0)pkgconfig(libarchive)pkgconfig(libcurl)pkgconfig(libgcab-1.0)pkgconfig(xmlb)rpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)1.5.82.45.82320.3.50.1.01.1.17.56.01.00.1.133.0.4-14.6.0-14.0-15.2-14.14.1`e`c`KW`6?`.V_S_м@_$_i_F@__@_O@_"@_"@_"@_@^א^א^1^@^h^)^ @]@]@]c]8H@] \\-@\@\Yz\73\\U@\ @[k@[Q@[\[h@[Xf@[GB[E@Zľ@ZlZ@Z`@Z1@Z1@Z1@Z;@Z8@Z2gYYYX @XX*X*X*X*X*X*X*X*X*Vii@Vii@Vii@Vii@Vii@Vii@Vii@Vii@Vii@Vii@UeU+U+glin@suse.comglin@suse.comglin@suse.comglin@suse.cominfo@paolostivanin.comglin@suse.comglin@suse.comglin@suse.comglin@suse.comglin@suse.comdimstar@opensuse.orgdimstar@opensuse.orgqkzhu@suse.comdimstar@opensuse.orgdimstar@opensuse.orgdimstar@opensuse.orgyfjiang@suse.comdimstar@opensuse.orgdimstar@opensuse.orgglin@suse.comglin@suse.comhpj@urpla.netstefan.bruens@rwth-aachen.debjorn.lie@gmail.comschwab@suse.debjorn.lie@gmail.comglin@suse.comglin@suse.commpluskal@suse.commaurizio.galli@gmail.comdimstar@opensuse.orgglin@suse.commail@bernhard-voelker.debjorn.lie@gmail.comglin@suse.comschwab@suse.deglin@suse.comndas@suse.denico.kruber@gmail.comjengelh@inai.denico.kruber@gmail.comtchvatal@suse.comoliver@getspam.deoliver@getspam.dedimstar@opensuse.orgmpluskal@suse.comantoine.belvire@opensuse.orgfcrozat@suse.comdimstar@opensuse.orgdimstar@opensuse.orgdimstar@opensuse.orgstefan.bruens@rwth-aachen.defcrozat@suse.comstefan.bruens@rwth-aachen.dedimstar@opensuse.orgdimstar@opensuse.orgdimstar@opensuse.orgdimstar@opensuse.orgmpluskal@suse.comzaitor@opensuse.orgzaitor@opensuse.orgzaitor@opensuse.orgzaitor@opensuse.orgzaitor@opensuse.orgzaitor@opensuse.orgzaitor@opensuse.orgzaitor@opensuse.orgzaitor@opensuse.orgdimstar@opensuse.orgdimstar@opensuse.orgdimstar@opensuse.orgdimstar@opensuse.orgdimstar@opensuse.orgdimstar@opensuse.orgdimstar@opensuse.orgdimstar@opensuse.orgdimstar@opensuse.orgdimstar@opensuse.orgdimstar@opensuse.orgdimstar@opensuse.orgdimstar@opensuse.org- Remove valgrind from BuildRequires since it's not a hard requirement anymore. (bsc#1184248)- Update to version 1.5.8: New features: * Add a new internal flag to opt-in to GUID matching * Add D501 Baklava device support * Add fu_device_set_battery_level() * Add missing uint64 read and write helpers * Add Qubes wrapper source and create packages * Allow enabling plugins only matching a specific HwId * Prompt for unlock keypress if reset command is blocked * Remove obsolete dell-dock non-passive update flow support * Remove the Hughski public key * Show a warning when parsing invalid quirk files * Support for GATT characteristic signals/notifications * Support more than one protocol for a given device Fixes: * Align the CCGX DMC firmware to 64 byte chunks * Be more strict for custom quirk keys * Check pixart firmware compatibility with hardware before flashing * Correct a thunderbolt assertion if kernel failed FW read * Correctly erase STM32 devices when transfer size is less than sector size * Detect SREC overflow to avoid adding ~4GB of 0xFF padding * Do not show a critical error when flashing footer-less binary files * Don't allow device updates while needing activation * Fix a regression in the elantp defined IAP start address * Fix a regression where activate stopped working * Fix firmware update of pointing device on Lenovo ThinkPad Nano * Fix the HSI plugin 'Disabled' state * Fix the quirk key name for the Lenovo HDMI with power * Fix writing to the GD32VF103 bootloader * Only call elantp->detach() when writing a firmware blob * Updated StarLabs GUIDs * Wait a few ms for the Logitech hardware to settle after detach - Remove GPG-KEY-Hughski-Limited from the filelist - Drop upstreamed patch + fwupd-bsc1182057-fix-sbat-section-copy.patch- Add fwupd-bsc1182057-fix-sbat-section-copy.patch to set the proper section flags for .sbat section so that objcopy can copy it into fwupd*.efi (bsc#1182057)- Update to version 1.5.7: New features: * Add initial support for Bluez bluetooth devices * Add more supported pixart devices * Add support for the RTD21xx HDMI converter Fixes * Convert MBR types to GPT GUIDs to help find the ESP * Do not allow updating a synaptics-mst device with no customer ID * Drop unused heap pages after startup has completed * Ensure SBAT metadata is added correctly * Move the plugin build logic to the plugins themselves * Only allow verify-update for plugins that support CAN_VERIFY - Specify SBAT metadata for openSUSE/SLE (bsc#1182057) - Adjust the meson options + plugin_uefi => plugin_uefi_capsule and plugin_uefi_pk + plugin_synaptics => plugin_synaptics_mst and plugin_synaptics_rmi + Disable Intel AMT plugin in non-x86 systems- Update to 1.5.6: New features: * Add SBAT metadata to the fwupd EFI binary * Add support for GD32VF103 as found in the Longan Nano * Add support for RMI PS2 devices * Add support for the System76 Keyboard * Allow downloading firmware from IPFS * Install the UX data into a single .tar.xz file * Add a plugin to update PixArt RF devices * Add new hardware to use the elantp and rts54hid plugins * Allow specifying more than one VendorID for a device * Detect the AMD TSME encryption state for HSI-4 * Detect the AMI PK test key is not installed for HSI-1 * Add Maple Ridge Thunderbolt firmware parsing support * Add --no-remote-check to ignore checking for download remotes * Allow creating FMAP and Synaptics firmware using builder.xml Fixes: * Add support for the Starlabs LabTop L4 * Allow using an external ESP again * Ask the user to reboot when required if downgrading * Be more paranoid when parsing ASCII buffers and devices * Check if the fwupd BootXXXX entry exists on failure * Clear the pending flag if restarting the system * Do not allow flashing using flashrom if BLE is enabled * Do not allow Lenovo hardware to install multiple capsules * Do not parse the OptionROM image * Do not show Unknown [***] for every client connection * Fix dnload wBlockNum wraparound for ST devices * Fix OOM when using large ArchiveSizeMax values * Fix several crashes spotted by AddressSanitizer * Fix several places where the Goodix MOC plugin could crash * Include the PCR0 to the report metadata * Report the lockdown status from UEFI and SuperIO plugins * Show a console warning if the system clock is not set * Fix flashing a fingerprint reader that is in use * Fix several critical warnings when parsing invalid firmware * Fix updating DFU devices that use DNLOAD_BUSY * Ignore the legacy UEFI OVMF dummy GUID * Make libfwupd more thread safe to fix a crash in gnome-software * Never show unprintable chars from invalid firmware in the logs * Allow using fwupdtool as non-root for firmware commands * Do not trust the Block.HintSystem boolean for ESP filtering * Fix a memory leak when parsing Synaptics firmware * Fix a possible crash when reading the Goodix MOC USB request * Fix crashes when parsing invalid FMAP, DMC, Solokey and Synaptics images - Deprecate fwupd-bsc1179790-disable-hintsystem.patch- Add fwupd-bsc1179790-disable-hintsystem.patch to remove Block.HintSystem from ESP filtering (bsc#1179790)- Update to version 1.5.3: + Lower the CURL version required to fix build in RHEL + Do not use meson ternary operations to avoid bumping the required meson version + Added Lite Mk III + Allow setting the GMainContext when used for sync methods + Fall back to the misc device for serio devices + Actually implement rescan in FuUdevDevice + bcm57xx: Refactor CRC code to remove extra byteswap + bcm57xx: Fix CRC check + synaptics-rmi: Don't crash if calling ->to_string() before - >setup() + Fix a possible critical warning due to missing retval + Add the serio->firmare_id for UDev devices + Export the driver name from FuUdevDevice + Allow the client to send PKCS7 and GPG signatures + Force the remote kind to JCat server-side + Only parse the signature if the remote is JCat + fu-main: Fix sender_features insert with wrong size + make platform integrity plugin optional and disabled by default + Add quirk for Western Digital + Mark more user-visible strings as translatable + modem-manager: validate firmware update method combinations + modem-manager: remove unused byte counts in QMI/PDC update logic + modem-manager: make sure the correct interface number is used for QMI + modem-manager: udev monitoring only if device switches layout + modem-manager: plug udev client leak + Restrict loading component types of firmware - Enable supported_build to clarify that this package is supported (bsc#1179790) - Drop fwupd-platform-integrity.conf since upstream disables the platform integrity module by default now due to incompleteness. - Address fwupd-refresh.service in %preun, %pre, %post, and %postun and provide a rc link for it - Version "Obsoletes: dbxtool" and "Obsoletes: fwupdate"- Update to version 1.5.2: + ata: Add OUI quirk for Toshiba + libfwupd: Restore recognizing gpg and pkcs7 types still + Register the SoupSession gtype when required + Switch from libsoup to libcurl + Fix sync method when called from threads without a context + Move ABI check to Github actions + Enable github workflows + libfwupd: Add fwupd_client_download_file() + libfwupd: Add fwupd_client_get_user_agent() + Only download the remote metadata as required + Add breaks for fwupdate 12-7 (Closes: #960688) + Install modules-load configs in the correct directory + vli: Do not be clever replugging the MSP430 device + vli: Make some trivial debugging more specific to help debug an issue + make gcab optional + Fall back to FAT32 internal partitions for detecting ESP + Add a flag to indicate if packages are supported + uefi: a new option for uefi configuration to use UEFI removable path + Add a section to man page on scripting + synaptics-mst: Improve reliability by waiting 2 seconds after writing data + hailuck: Add an plugin for the Pinebook Pro laptop + Allow setting global flags for FuHidDevice + Set the SMBIOS chassis type to portable if a DT battery exists + colorhug: Don't set the version format to triplet at startup + Allow components to set the icon from the metadata + colorhug: Fix detection of version on older firmware versions + bcm57xx: Fix reading vendor/device ids from firmware. + Remove HSI update and attestation suffixes + trivial: make dbxtool executable to fix snap build + Ignore an invalid vendor-id when adding releases for display + Notify the service manager when idle-quitting - Refresh fwupd-bsc1130056-change-shim-path.patch - Changes in BuildRequires: + Replace pkgconfig(libsoup-2.4) with pkgconfig(libcurl) + Replace pkgconfig(systemd) with pkgconfig(libsystemd) - fwupd-msr.conf and fwupd-platform-integrity.conf are moved to %{_modulesloaddir}.- Obsoletes and Provides dbxtool since fwupd 1.5.0+ now embeds dbxtool in the dbxtool plugin- Amend the spec file (jsc#SLE-16818) + Only enable fish support for Tumbleweed + Only enable the MSR plugin for x86 + Only install dbxtool in the architectures with UEFI support- Update to version 1.5.1: + Use UDisks to find out if swap devices are encrypted. + Show a link to discover more information about a specific plugin failure. + updated fish completions to 1.5.0. + Remove the duplicate parent-child data in FwupdDevice and FuDevice. + Show a less scary fwupdate output for devices without info. + thunderbolt: recognize authorized value of '2' as well. + bcm57xx: Make hotplug more reliable. + Use a different Device ID for the OptionROM devices. + contrib/ci: switch TPM simulator from ibmswtpm to swtpm. + Delete unused EFI variables when deploying firmware. + Fix probe warning for the Logitech Unifying device. + Include the amount of NVRAM size in use in the LVFS failure report. + Add external interface messages.- Update to version 1.5.0: + Add a compatible re-implementation of the rhboot dbxtool. + Add async versions of the library for GUI tools. + Add commands for interacting with the ESP to fwupdtool. + Add firmware-extract subcommand to fwupdtool. + Add FwupdPlugin so we can convey enumerated system errors to the end user. + Add plugin for Goodix fingerprint sensors. + Add plugin that can update the BCM5719 network adapter. + Add plugin to update Elan Touchpads using HID. + Add support for a delayed activation flow for Thunderbolt. + Add support for ChromeOS Quiche and Gingerbread. + Add support for Hyper hardware. + Add support for the Host Security ID. + Add support for ThunderBolt retimers. + Add switch-branch command to fwupdtool and fwupdmgr. + Allow blocking specific firmware releases by checksum. + Allow contructing a firmware with multiple images. + Allow firmware to require specific features from front-end clients. + Allow updating the dbx using the LVFS, validating it is safe to apply. + Include the HSI results and attributes in the uploaded report. + Support loading DMI data from DT systems. + Support LVFS::UpdateImage for GUI clients.- Add fwupd-jscSLE-11766-close-efidir-leap-gap.patch: Set SLE and openSUSE esp os dir at runtime (jsc#SLE-11766) - Drop _multibuild and build option -Defi_os_dir="%{efidir}": with the above patch fwupd can detect esp os dir dynamically - Update the efidir related %post and %postun scripts in spec file- Update to version 1.4.5: * Add XB_QUERY_FLAG_FORCE_NODE_CACHE * Add support for a delayed activation flow for Thunderbolt * Allow firmware to require specific features from front-end clients * Allow multi-byte FuUdevDevice preads and writes * Be more defensive when remotes are missing required keys * Disable the SQLite lookaside cache * ccgx: Add more hybrid dock support * ccgx: Modify readme to remove customer info * ccgx: add new protocol for dmc dock * ccgx: remove verify flag in plugin * modem-manager: read the vendor ID directly from sysfs attribute Fixes: #2209 * thelio-io: Add the DFU instance ID as a counterpart only * thunderbolt: Add a new subclassed thunderbolt firmware update type * thunderbolt: Allow quirks to skip the authentication step * thunderbolt: drop support for force power * tpm-eventlog: fix PCR0 calculation * uefi: check for free space after cleaning up ESP * vli: Add dual-image feature for VL103 backup firmware * vli: Add the project ID shared SPI PD controllers * vli: Allow chained usb hub devices where the parent needs GPIOB reset * vli: Do not modify the class vfuncs depending on device type * vli: Do not use GUID matching for the MSP device * vli: Rename FuVliUsbhubI2cDevice to FuVliUsbhubMsp430Device * vli: Set FuQuirks on the shared SPI object * vli: Set the i2c instance IDs in probe() * vli: Use the GPIOB reset for the MiniDock VL103 * vli: Wait for the root device to be replugged when updating the MSP430- Update to version 1.4.4: * Release fwupd 1.4.4 * Fix regression when checking for downgraded metadata- Update to version 1.4.3: * Release fwupd 1.4.3 * ata: A OUI quirk for Kingston * ccgx: Fix a potential division by zero * Check the device requirements when returning from GetDetails * fu-engine: Allow --plugin-whitelist to use dashes instead of underscores * Always enforce the metadata signature has a valid timestamp * ccgx: modify install duration for dmc device * ccgx: Add support for HP DMC dock devices * dell-dock: prevent updates to occur via synaptics-mst plugin * dell-dock: Capture the dock SKU in metadata * synaptics-prometheus: Force the minor version from 0x02 to 0x01 to make sure the devices can be updated back to 0x01. * Generate a body for github releases (Fixes: #2034)- Build the package separately for openSUSE and SLE using _multibuild (jsc#SLE-11744).- Update to version 1.4.2: * vli: Add no-guid-matching for all VLI devices * vli: Remove a copy-and-paste mistake * Add two OUI quirks * ata: Add WD OUI quirk 000cca * synaptics-rmi: Essentially blacklist Dell K12A * dfu: Avoid communicating when bitManifestationTolerant is off * ata: Add OUI quirk for Western Digital * dfu: Support MATEKF722SE quirk * Fix various build issues with -Wdiscarded-qualifiers * thunderbolt/dell-dock: Delay activation for Thunderbolt updates * Switch the default of EnumerateAllDevices to false * Add OUI quirk for SanDisk * vli: Add two standard USB instance IDs for shared-PD devices * vli: Use GPIOB to reset the VL817 found in two Lenovo products * tpm-eventlog: Correct the display of final calculated PCRs * wacom-raw: fixup switching to bootloader mode- Update to version 1.4.1: * thunderbolt: Don't show safe mode errors for USB4 host controllers * ep963x: Various changes to make the plugin actually work on real hardware * Make tss2-esys conditional * ep963x: Remove some dead code spotted by Coverity * ccgx: Only update the FW2 partition of the ThinkPad USB-C Dock Gen2 * ccgx: Expand the FWImageType for future hardware * Allow specifying the device on the command line by GUID * Fix the DeviceID set by GetDetails * wacom-usb: Fix a theoretical buffer over-read to make GCC happy * vli: Only show the i2c devices on the USB3 hub * Allow devices to be updatable, but only when upgrading a proxy device * Reset the progressbar time estimate if the percentage is invalid * ccgx: Always report 100% when finished writing * Add a device quirk that forces an explicit device-id match * ccgx: Set the device name and summary from quirk files * vli: Only do the APP5 FW bug fix on affected hardware * vli: Show all the buffer when debugging with FWUPD_VLI_USBHUB_VERBOSE * fu-engine: Refresh device name and format before setting supported flag * Allow a device to set the logical or physical ID during ->setup() * ccgx: Split out a trivial helper to set the instance IDs * ccgx: Set the device name to be more useful * ccgx: Set the logical ID as the FwMode * ccgx: Split out a trivial function to set the version * ccgx: Do not reboot the device write after installing * ccgx: Do no show the flash parameters when unknown * Allow devices to match the proxy device by GUID * Do not skip attach() if the device is marked _WILL_DISAPPEAR * dell-dock: Port to using fu_device_get_proxy() * Allow adding a device 'proxy' device that can do actions on it * vli: Do not show the USB 2 recovery devices for USB 3 hubs * vli: Add metadata to identify which is the same physical device * uefi: correctly format firmware version of Dynabook (né Toshiba) X30, X40 and probably others * synaptics-cxaudio: Use the ->attach() device vfunc * synaptics-cxaudio: Wait for the device to reboot after writing firmware * logitech_hidpp: decrease verbosity of messages that hid++ ID is missing * Prefer to update the child first if the order is unspecified * Do not modify the device priority for child devices- Exclude fwupdate from the architectures without UEFI support.- Update to version 1.4.0: * Release fwupd 1.4.0 * Allow removing device flags from quirk files * Use black to format python source in a consistent manner * Define SOURCE_VERSION when building a package * Only set the parent when adopting children * Do not conditionalize attach() and detach() on IS_BOOTLOADER * Do not crash the daemon if a plugin does something dumb * wacom-usb: Add more sanity checks in case the daemon goes crazy * wacom-usb: Use a per-device cleanup function * Add some more device regression tests * wacom-usb: Add a lot of missing metadata about the devices * wacom-usb: Hide a lot of debugging behind FWUPD_WACOM_VERBOSE * Only auto-add counterpart GUIDs when required * ccgx: remove update message * ccgx: add parent guid for hybrid dock * ccgx: Use a smaller timeout for i2c read and write operations * ccgx: Retry the register read and write with a i2c reset * ccgx: Fix buffer overflow when reading out i2c status * ccgx: Retry the HID disconnect up to 5 times * ccgx: Show a better error message on failure * ccgx: Allow forcing firmware of the wrong app_type with fwupdtool * Modularize the hardware tests * Ignore indirect devices that replug during the composite firmware update * Export the device state as part of the D-Bus interface * Fix devices that use CounterpartGuid when more than one device is installed * Use the GUID as a fallback rather than the connection ID * ccgx: Fix critical warning on i2c write failure * logitech-hidpp: Do not add peripheral devices for receiver in BL mode * Install the installed-tests only if tests are enabled * Load the signature to get the aliased CDN-safe version of the metadata * vli: Only reboot the USB hub once * synaptics-cxaudio: Only use the PATCH2 address when the patch level is 2 * add STM32F745 stm dfuse quirk * dfu: Add a way to set the timeout from a quirk * Export the release urgency * Export the release creation time * Check the firmware requirements before adding SUPPORTED * data/motd/fwupd-refresh: Only order after network.target * ccgx: Do not add the HID device that will disconnect * ccgx: Use Silicon ID and Application type to set flash parameters * Add a new daemon configuration option to control EnumerateAllDevices * logitech_hidpp: set the bootloader protocol * Install meson from pip for LGTM * bash: add completion for fwupdtool reinstall * fu-tool: add reinstall command * fu-engine: export fu_engine_get_releases_for_device in header * vli: Wait for the VL103 to timeout to fix detach * ccgx: Show the UpdateMessage in the correct device mode * ccgx: Add extra instance IDs to match specific firmware * Use a static version number * thunderbolt: Rather than hardcoding to PCI slot numbers, use domain in GUID * Revert "thunderbolt: Create a unique GUID including Thunderbolt controller path" * dell-dock: Port to fu_device_retry() * nitrokey: Convert to use FuHidDevice * nitrokey: Port to fu_device_retry() * vli: Port to fu_device_retry() * Add fu_device_retry() helper functionality * ccgx: Implement writing firmware to flash * ccgx: Add i2c status check when reading or writing registers * ccgx: Add 5ms delay between read registers to avoid an i2c error * libfwupdplugin: Use fu_device_locker_close() * synaptics-mst: Use fu_device_locker_close() * Add fu_device_locker_close() * ccgx: Do not store the silicon ID in the image address * ccgx: Add device quirks for the Lenovo Hybrid Dock * ccgx: Switch HID mode to HPI mode at startup * ccgx: Clear the event queue when in startup * ccgx: Wait for hardware to settle when coming out of reset * ccgx: Do not mark the device as updatable when in boot mode * ccgx: Verify the firmware app type when preparing firmware * ccgx: Set the update message when running in backup firmware * ccgx: Read the FwAppType from the hardware * ccgx: Set the HPI version number for the current firmware * ccgx: Get the silicon ID to map the flash parameters * ccgx: Read the HPI device mode at startup * ccgx: Set up the HPI I²C config at startup * ccgx: Create devices when in HID and I2C modes * Add a new ChromeOS CI target to build without GPG and PKCS7 * Use Jcat files in firmware archives and for metadata - Removed fu-keyring-gpg which caused CVE-2020-10759 (boo#1172643) * csr: Allow truncated HID reads * vli: Only consider the high nibble when building the sub-version * csr: Parse the firmware as a DFU file * Add support for EP963x hardware * Add FuHidDevice abstraction * vli: Correctly attach VL103 after a firmware update * ccgx: Parse the metadata block in the firmware image * ccgx: Add a firmare parser for cyacd files * logitech: Correctly set the protocol * Add the optional device-id to the update --help output * Fix a difficult-to-trigger daemon hang when replugging devices * vli: Remove a dock device from the whitelist that is never going to be updated * vli: Add some trivial debugging to help track down a bug * vli: Never add USB hub devices that are not upgradable * uefi: Don't use shim for non-secure boot configurations * Start fwupd-activate.service after snapd.service * dfu: Actually reload the DFU device after upgrade has completed * dfu: Add one more m-stack device requiring a quirk * Apply version format to releases and devices at same time * Ensure that the DeviceID is set for child devices * Fix a daemon crash when removing children * Allow waiting for the parent device when replugging * Add fu_device_get_root() shared API * vli: Fix an error when detaching MSP430 * vli: Fix a critical warning when getting the USB speed * vli: Fix the error enum values for the MSP430 * Do not add blank lines when tokenizing Intel hex files * vli: Fix the version calculation for MSP430 * vli: Ignore one more error when attaching * vli: Always expect the VL103 header at 0x1003 or 0x4000 * vli: Do not fall back to the recovery write for usbhubs * vli: Only show the 2nd header if the device ID is valid * vli: Fix VL103 reboot from ROM mode to FW mode * vli: Add some better comments for writing GPIOs * Add a helper script to add a DFU header * Add 'firmware-convert' subcommand to fwupdtool * fu-engine: Make two passes of requirements checking * fu-engine: Copy the VersionFormat from the CAB if specified in `get-details` * Add a new plugin for CPU microcode * Don't build/install fwupdagent man page if agent build is not requested * Introduce a new VersionFormat for `hex` * Drop UEFI quirks we now inherit from metadata * ci: build Debian using libflashrom * When TPM PCR0 measurements fail, query if secure boot is available and enabled * fix fwupd.shutdown.in according to the movement of fwupdtool to bindir * ata: Add OUI quirk for Western Digital and Intel * improved fish shell completion * vli: Set the MSP430 version format to pair * Always return AppStream markup for remote agreements * ata: Add trivial OUI quirk for Micron * added completion script for fish shell * Do not fail loading in /etc/machine-id is not available * Use xb_builder_source_add_simple_adapter * Create FuCabinet and untangle a lot of legacy code * nvme: Do not try to handle integer version numbers * Allow server metadata to set the version format on some devices * fu-tool: Correctly append the release to devices in `get-details` * For the `get-details` command make sure to always show devices * fu-engine: Copy the version and format from donor device in get-details * fu-engine: Use unknown for version format by default on get-details * Inihbit all power management actions using logind when updating * Decouple the version format from the version itself * Add raw versions for bootloader and lowest * Allow server metadata to set the device name on some devices * Remove support for GCab less than v1.0 * fu-device-list: Check protocol before de-duping devices * Do not allow devices that have no vendor ID to be UPDATABLE * ata: Include a vendor ID for ATA hardware * ata: Switch off the verbose logging by default * Always check for PLAIN when doing vercmp() operations * Discard the reason upgrades aren't available (Fixes: #1678) * Improve the description of `fwupdtpmevlog` for man page * Move `fwupdtpmevlog` into `bindir` * uefi: Move `fwupdate` into `bindir` * Move `fwupdtool` and `fwupdagent` into `bindir` * Use the system provided flashrom on Fedora * Add a plugin vfunc to run after subclassed FuDevice creation * ci: use standalone script to generate build dependencies * Move the daemons from /usr/lib/fwupd to /usr/libexec/fwupd * Use the recently released flashrom v1.2 * Generate an additional UEFI quirk file using the stable LVFS metadata * uefi: Apply capsule update even with single valid capsule * Fix a critical warning when installing some firmware * ebitdo: Fix the endpoint address logged in the error message * uefi: Find the correct lds and crt name when specifying -Defi_ldsdir * upower: Move battery threshold declaration into a configuration file * upower: Decrease minimum battery requirement to 10% - Refresh fwupd-bsc1130056-change-shim-path.patch - Add new dependency: jcat- Update to version 1.3.9: * Release fwupd 1.3.9 * Always check for PLAIN when doing vercmp() operations * improved fish shell completion * vli: Set the MSP430 version format to pair * added completion script for fish shell * Always return AppStream markup for remote agreements * Do not fail loading in /etc/machine-id is not available * fu-engine: Fixup broken-ness from 0c0fada18fc9cb2a0efec351db67f0867bf045cd * Use xb_builder_source_add_simple_adapter * fu-tool: Correctly append the release to devices in `get-details` * For the `get-details` command make sure to always show devices * fu-engine: Copy the version and format from donor device in get-details * fu-engine: Use unknown for version format by default on get-details * Inihbit all power management actions using logind when updating * fu-device-list: Check protocol before de-duping devices * ata: Switch off the verbose logging by default * Discard the reason upgrades aren't available (Fixes: #1678) * Improve the description of `fwupdtpmevlog` for man page * Move `fwupdtpmevlog` into `bindir` * uefi: Move `fwupdate` into `bindir` * Move `fwupdtool` and `fwupdagent` into `bindir` * ci: use standalone script to generate build dependencies * Move the daemons from /usr/lib/fwupd to /usr/libexec/fwupd * Use the recently released flashrom v1.2 * uefi: Apply capsule update even with single valid capsule * Fix a critical warning when installing some firmware * ebitdo: Fix the endpoint address logged in the error message * fu-util: fix a logic error in report uploading introduced in e076d48afb74d1447936d353f12781755f13b047 * uefi: Find the correct lds and crt name when specifying -Defi_ldsdir * upower: Move battery threshold declaration into a configuration file * upower: Decrease minimum battery requirement to 10% - Update to version 1.3.8: * Release fwupd 1.3.8 * Do not use fu_common_vercmp() when the device verfmt is PLAIN * altos: Output raw buffer data when using FWUPD_ALTOS_VERBOSE * altos: Prefix an error to provide more context * altos: Add a trivial _to_string() implementation * synaptics-cxaudio: Make the verfmt match that of the existing Windows tools * synaptics-mst: Allow MST to fall back if no PCI device is marked as parent * Allow specifying a list of subsystems when setting a physical ID * synaptics-mst: Fix trivial thinko caused by the wrong dock connected * vli: Invert the logic to reboot the parent FuCliUsbhubDevice, not the child * vli: Switch around the hub tier values * uefi: Fix a build regression with Fedora 30 * logitech_hidpp: Ignore detach failures (Fixes: #1183) * logitech_hidpp: When detaching to bootloader use non-blocking IO and wait for timeout * vli: Show erase progress when doing a v2 recovery * uefi: Do not remove the 'Linux Firmware Updater' boot entry before update * uefi: Do not rewrite BootOrder in the EFI helper * vli: Add support for the PS186 device * Set up more parent devices for various Lenovo USB hubs * cxaudio: Set the update protocol to prevent a daemon warning * vli: Add support for Lenovo Modularized dock * Add an extra instance ID to disambiguate USB hubs * vli: Remove the unused tierX custom flags for each device * Revert "Correctly delete UEFI variables" * uefi: make debugging output more readable * vli: Fix a potential buffer-overflow when parsing firmware * tpm: Optimize the string parsing and fix the boolean logic * synaptics-rmi: Add a missing error enum value * synaptics-rmi: Correctly identify a checksum failure * synaptics-rmi: Fix Coverity issue that is impossible to hit in reality * solokeys: Parse old versions of the bootloader string * Add a plugin to update PD controllers by Fresco Logic * vli: Set the device progress correctly when erasing a PD device * vli: Use the correct command to get the device firmware version * vli: Correctly reset all VL100 devices * vli: Set all standalone PD devices to not do SPI auto-detection * vli: Mark standalone PD devices as updatable * vli: Set the protocol for FuVliUsbhubPdDevice types * Support the new gnuefi file locations * Cleanup ancient fwupdate-* EFI variables too (Fixes: #1739) * Detect kernel lockdown status * vli: Add the DEV instance ID to all devices * tpm-eventlog: Replay the TPM event log to get the PCRx values * tpm-eventlog: Store the eventlog hashes in binary form - Update to version 1.3.7: * Release fwupd 1.3.7 * Correctly delete UEFI variables * ci: allow working with podman w/o aliases * ci: fedora: force correct rpm package version * src: fu-engine: check version was updated by checking version * Correctly import PKCS-7 remote metadata * Add 'refresh' to fwupdtool * Add 'get-remotes' to fwupdtool * Generate a win32 setup binary * Fix display of UTF-8 characters on Windows * Move MOTD population into the daemon * fu-util: Discourage metadata refreshes more than once per day * Disable the battery percentage checks if UPower is unavailable * Allow getting the list of updates in JSON format from fwupdagent * Revert "trivial: Attempt to fix Debian CI" * fu-remote-list: emit a changed signal when modifying a remote * synaptics-mst: Skip self tests for systems with amdgpu * Allow applying all releases to get to a target version * Split up fu_engine_install() into two halves * logitech_hidpp: use the correct timeout for IO channel writes * Allow quirking devices that always require a version check * Shut down automatically when there is system memory pressure * Show the device parent if there is an interesting child * Allow the client to get the list of FwupdDevice children * Set the FwupdDevice parents in fwupdtool * Don't always get the vendor ID for udev devices using the parent * Add a runtime warning when adding a device without an vendor-id or protocol set * vli: Set more of the firmware max sizes automatically * vli: Add a SpiAutoDetect quirk for some of the PD devices * vli: Use a different protocol ID for i2c devices * vli: Add support for standalone Single PD devices * vli: Move generic SPI functionality into the FuVliDevice base class * vli: Remove the PD emulation code * vli: Use a more standard GUID for the child i²c and shared SPI devices * vli: Allow setting the device kind from a quirk * vli: Make more function names match the docs * vli: Move the SPI command quirking from FuVliUsbhubDevice down to FuVliDevice * vli: Rename FuVliUsbhubPdFirmware to FuVliPdFirmware * vli: Allow the device to specify the PD firmware header offset * vli: Add a FuVliDevice as a subclass to FuVliUsbhubDevice * vli: Define the device GType in the quirk file * vli: Move the CRC calculations out of usbhub scope * vli: Have one 'DeviceKind' for all objects * vli: Rename the `vli_usbhub` plugin to `vli` * Capitalize GNOME - package has grown a few new binaries: fwupdagent, fwupdate, fwupdtool and a tpm event debugging tool, that is packaged separately: fwupdtpmevlog- Drop docbook-utils-minimal build dependency, manpages are generated with gtk-doc.- Update to version 1.3.6: * plugins/coreboot: Add missing fu_hash dependency * trivial: synaptics-cxaudio: Add Google type C <-> 3.5mm adapter * fu-engine: don't expose bootloader version errors to users * trivial: dell-dock: drop unused quirk keyx * trivial: rename synapticsmst to synaptics-mst * trivial: actually set vendor ID for synaptics * fu-remote-list: Drop fallback path behavior * libfwupdplugin: Make sure systemd created environment variables exist * trivial: fu-remotes-list: drop usage of `FU_SELF_TEST_REMOTES_DIR` * trivial: synaptics-rmi: hardcode Vendor string * trivial: Set vendor ID for Dell WD19 to USB:0x413C (Fixes: #1653) * trivial: Document the use of vendor-id in each plugin * superio: Use the baseboard vendor as the vendor ID * uefi: Use the BIOS vendor as the vendor ID * coreboot: Use the BIOS vendor as the vendor ID * flashrom: Use the BIOS vendor as the vendor ID * dell: Hardcode a plausible vendor ID * emmc: Set the correct vendor ID prefix * fu-util-common: correct the default prompt for reboot/shutdown (Fixes: #1617) * Split out the remote loading from FuConfig * vli-usbhub: Fix the quirk for the legacy VIA 813 chip * Clarify error messages when no upgrades available * trivial: Don't handle a vendor-id requirement error that cannot happen * Only check the vendor ID if the device has one set * fu-install-task: Enforce that device protocol matches metadata * Add a new plugin that can parse the TPM event log * Allow other plugins to contribute report metadata * trivial: dell: hardcode the physical device ID for tpm to match the tpm plugin * Add a new plugin that exposes the system TPM device firmware version * Add fu_udev_device_set_flags() * trivial: Render large values of VersionRaw in a more portable way * trivial: wacom-raw: mark all Moffett SKUs as self recovery * Throw exit status 0 (instead of 2) if there is no firmware to be updated * Add a `dell-bios` version format * Add support for multiple LVFS::VersionFormat tags * Do not do semver conversion in fu_common_vercmp() * trivial: Deprecate fu_common_version_parse() * trivial: Support 'plain' in fu_common_version_from_uintXX() * Add the sysfs 'description' as the one-line device summary * trivial: Also print the parent keys when using FU_UDEV_DEVICE_DEBUG * trivial: Add fu_common_version_from_uint64() * trivial: Convert the VersionRaw value to a uint64_t for future use * Allow building on Windows with MinGW * synaptics-prometheus: Allow incremental version major and minor number * Replace 'scheduing' with 'scheduling' * Export the raw device version to the client --verbose output * trivial: Only dlopen the test plugin once * Export the device protocol to the client --verbose output * trivial: installed-tests: try to display journal for failed tests * trivial: ci: debian: enable verbose daemon logging for failure analysis * trivial: installed-tests: explicitly choose webcam device ID * trivial: debian: remove obj-* built files to fix back to back builds * trivial: ci: don't let bad symlinks cause debian build failures * trivial: debian: correct a dependency for libfwupdplugin-dev - Changes from version 1.3.5: * plugins: Fix potential use of NULL pointer in fu_dell_dock_mst_write_register * Fix shifting integer by more than 31 in fu_util_filter_device * synaptics-prometheus: Reload the device version after IOTA update * synaptics-prometheus: Reload the device version after update * trivial: wacom: remove coretronic config from Moffett scope * trivial: Fix a NULL/FALSE confusion * trivial: Add a BR for Fedora * trivial: Fix coreboot commit to fix CI * trivial: libfwupdplugin: clarify name of self test * plugins/coreboot: Improve version detection * plugins/coreboot: Get rid of FU_HWIDS_KEY_BIOS_VENDOR in coldplug * trivial: Move progressbar out of libfwupdplugin * trivial: Unexport fu_test_get_filename() * trivial: Unexport fu_test_compare_lines() * trivial: Unexport fu_test_loop_run_with_timeout() * trivial: Do not include non-introspectable functions in the GIR * trivial: Fix up a few introspection problems in FwupdPlugin * trivial: Include the Fwupd GIR in the FwupdPLugin GIR * trivial: Never add duplicate symbols to the map file * trivial: Properly namespace the defines in the exported header * Install development files for libfwupdplugin * Convert libfwupdprivate to a shared library libfwupdplugin * trivial: Allow building GCab from a subpackage * trivial: Fix under-include to define O_RDONLY * trivial: Allow compiling without * trivial: Do not use FuProgressbar in dfu-tool * synaptics-prometheus: Manually set the bootloader mode when attaching * trivial: Split out a new helper funtion * trivial: Add some optional debugging when hotplugging devices * trivial: Include the correct header for S_IRWXU * Always use the more portable 3-arg form for open() * trivial: Untangle FuHistory from FuPlugin * trivial: Allow compiling without * Revert "synaptics-rmi: Use the build ID as the version number to match the vendor tool" * Add missing documentation from the plugin interface * trivial: fu-udev-device: remove a prototype that was missed in b3d4d2ff * trivial: add missing gtk-doc fields for many files in src/ * trivial: fix compile failure without gudev * synaptics-prometheus: Mirror the _IS_BOOTLOADER from device to config * Allow setting the device flags using GObject properties * vli_usbhub: Set the composite parent at construction time * synaptics-prometheus: Set the composite parent at construction time * Allow plugins to set the parent during construction * vli-usbhub: Whitelist the PD and I²C devices * Set the protocol per-device not per-plugin * synaptics-rmi: Use the build ID as the version number to match the vendor tool * Create a REV_00 instance ID as this may be what the vendor needs to target * fu-util-common: Invert default behavior for reboot and shutdown prompts * trivial: fu-plugin-vfuncs: Add GTK documentation for all vfuncs * Make gudev a compile-time option * trivial: Set the offline trigger using an environment variable * trivial: ci: pull lintian from unstable for now. * trivial: stop including fu-hash.h as part of fu-plugin-vfuncs.h * Fix shebangs on scripts * trivial: Use prefixes for DATADIR in config.h for portability * Allow compiling GUsb as a subproject * trivial: fu-udev-device: add a to_string func for debugging * trivial: Don't assume that plugins end in .so * trivial: optionrom: remove unneeded includes * trivial: debian: ci: ignore library-not-linked-against-libc for more * trivial: remove version-format.md * trivial: Allow compiling without pwrite() * trivial: Allow compiling without * trivial: Allow compiling without realpath() * trivial: Allow compiling without HAVE_LC_MESSAGES * trivial: Allow compiling without getuid() * trivial: Allow compiling without * trivial: Allow compiling without * trivial: Allow compiling without * Ensure the _get_type() gets the same ABI version as the constructor * Use the correct unlocker when using GRWLock * trivial: plugins: only build coreboot when option set * fwupdtool: don't show a warning when calling `get-plugins` - Changes from version 1.3.4: * trivial: Don't force specific linker flash when cross building * dell: Use the more portable g_usleep() * trivial: Fix unused header includes * vli-usbhub: Make erasing less verbose and writing more obvious * vli-usbhub: Correctly print the 24-bit USB3 offset * vli-usbhub: Print the PD firmware offset and size for debugging * vli-usbhub: Open the parent device before attempting to read or write from the child * vli-usbhub: Set the install duration for the PD device * trivial: Fix a failed error prefix string * trivial: wacom-raw: Remove embedded from device name * wacom-raw: Correct HWID support * uefi: Just use a uint16_t for BootNext processing * uefi: Use a simpler entries set algorithm * vli-usbhub: Add support for writing using I2C passthru * vli-usbhub: Support updating PD devices that share the hub flash * vli-usbhub: Support the PD file format * trivial: uefi: correct a NULL pointer dereference * uefi: fall back to `ID_LIKE` when the path for `ID` doesn't exist (Fixes:# 1566) * uefi: Make generate_binary.sh more robust * Tokenize the Intel Hex file before parsing * trivial: Detect the USB version automatically * trivial: fu-util/fu-tool: explicitly block unsupported flags * Add support for matching requirements on device parents * Skip cleanup after device is done updating if `will-disappear` is set (Fixes: #1529) * efi: use a wildcard section copy for final EFI generation * modem-manager: explicitly use plain version format * modem-manager: add quirks for the Foxconn T77W968 modules * Allows confined snaps to activate fwupd via D-Bus * trivial: thunderbolt: clarify error message * Add a new property `Interactive` to the daemon * trivial: contrib/get-version.py: require git less hard * superio: Never read from port offset zero * superio: Fix regression when coldplugging superio devices * trivial: Fix Fedora CI build * trivial: Fix the autobuilt spec file with the new tarball version * Dynamically determine release version * trivial: synapticmst: allow missing `/proc/modules` * synapticsmst: filter invalid chip IDs * trivial: Provide some defines for common image names * Allow aborting early when using fu_archive_iterate() * Add fu_firmware_image_set_version() for future use * modem-manager: increase re-enumeration delay to 20000ms * modem-manager: add counterpart GUID for the DW5821e/eSIM * Add versions formats for the Microsoft Surface devices * usb: make loading vendor/product/serial strings non-fatal * trivial: Fix the protocol ID for VLI usbhub devices * trivial: wacom-raw: add more device IDs for Dell devices * trivial: contrib: don't require TSS for debian archs without EFI * fu-udev-device: Adjust bounds checking to be safer * fu-udev-device: Don't assume all devices have `device_file` * synaptics-rmi: correct an error cleaning up on probe * trivial: fu-udev-device: add some safety checks for fd * udev-device: fix offset of vendor id of hidraw devices * flashrom: switch to upstream source * trivial: fu-plugin: only show an error once "failed to open plugin" was being prefixed twice * trivial: debian: only use mingw-w64-tools in archs with UEFI plugin * fastboot: Fix a regression when updating modem firmware * trivial: conflict with old unifying plugin * Rename unifying plugin to logitech-hidpp (Fixes: #1329) * Add a new contrib script for installing a Dell BIOS from an EXE file * trivial: add-capsule-header: rename to make it easier to import * trivial: simple_client: make it easier to reuse code * trivial: firmware-packager: make it easier to reuse code * trivial: add-capsule-header: make it actually work * trivial: fix some gtkdoc sections * Bump the required gudev version * trivial: Fix a compile error with older versions of gudev * trivial: wacom: add vid/pid for panels in Moffett * trivial: post release version bump - Changes from version 1.3.3 * unifying: notify users to replug when using dfu control (Fixes: #1383) * trivial: 8bitdo: set a transient failure while waiting for user action * libfwupd: Add a new error type for user action needed * trivial: 8bitdo: show the same message for SN30pro and SN30pro+ * trivial: Fix up some typos from codespell * trivial: Ensure config.h is included in all source files * trivial: Fix up some NULL/FALSE confusion * trivial: Add all the _LAST enums that shouldn't be checked for ABI * trivial: Fix a typo that means that UEFI results were never cleared * Always report the update-error correctly for multiple updates * trivial: Fix fwupdmgr get-history if the firmware was not installed from the LVFS * trivial: Do not emit a warning if a child has no version number * Move the file descriptor lifecycle into FuUdevDevice * trivial: Fix some GtkDoc annotations * ebitdo: Modernize the plugin to use FuFirmware * nitrokey: Use fu_common_dump_raw() when debugging * thunderbolt: Create a unique GUID including Thunderbolt controller path * Use device safety flags to show prompts before installing updates * trivial: Use the new possible_plugin support for USB devices too * jabra: Move the Jabra-specific detach out into its own plugin * Ensure the device is open when doing the subclassed prepare() and cleanup() * vli-usbhub: Add support for updating V2 devices * Allow verifying the device image itself from fwupdtool * Use XMLb to query quirks * trivial: ci: disable pulling libxmlb from unstable * synaptics-prometheus: Don't add a config-subdevice in bootloader mode * dfu: Use the VID/PID to identify devices without download capability in runtime * trivial: debian: remove some unneeded lintian * trivial: debian: bump compat version * ebitdo: Add SN30Pro+ to recognized quirk list (Fixes: #1503) * dfu: Add several quirks for Realtek camera hardware * dfu: Always mark devices as UPDATABLE * uefi: use `genpeimg` to mark ASLR and DP/NX on EFI binary * trivial: solokey: correct a typo * trivial: fu-util: fix typo * uefi: rework ESP path detection and lifecycle * trivial: uefi: show more metadata in to_string method * trivial: fu-device: add new method to remove metadata * Add a plugin to update VIA USB hub hardware * trivial: Add fu_common_read_uint8_safe() * trivial: Fix two typos in fu_common_read_uint16_safe() * solokey: Allow parsing firmware with fwupdtool * Allow fwupdtool to dump details of common firmware formats * trivial: Do not do system coldplug when using FU_ENGINE_LOAD_FLAG_NO_ENUMERATE * trivial: fu-self-test: set polling self tests to slow * trivial: fu-tool: Allow `detach`/`attach` to prompt for device * Strip trailing whitespace from USB descriptors * trivial: Add fu_common_read_uint16_safe() * trivial: Add version to the FuFirmware->to_string() output * Add fu_firmware_set_version() * Add a systemd preset file for `fwupd-refresh.service` * trivial: dell: work around a memory leak caught by address sanitizer * ebitdo: if the device has the will disappear flag, don't wait for ack (Fixes: #994) * Add a new plugin for working with eMMC devices (Fixes: #1455) * fu-engine: Check multiple plugins if quirks match * trivial: don't try to enable LVFS from systemd * trivial: coreboot: fix a clang compiler error * fu-util: Add user friendly strings for all device flags * Add new device flags indicating update resilience * plugins: Add coreboot plugin * fu-plugin: Add fu_plugin_get_hwid_replace_value * trivial: Increase verbosity when actually updating devices * trivial: Allow plugins to use WAIT_FOR_REPLUG in prepare and cleanup * Add FuDevice->prepare() and FuDevice->cleanup() vfuncs for future use * dfu: Implement FuDevice->to_string() * trivial: colorhug: fix a crash that occurs when flashing sometimes * trivial: fu-util: break out of automatic reports if one is not automatic * thunderbolt: some more clarifications when using ICL * trivial: fwupd-refresh: activate motd if using systemd v243 or later * trivial: fwupd-refresh: allow exit code 2 for success * trivial: synaptics-cxaudio: Add Google Pixel buds * trivial: arch: ci: Wait some time for tpm_server to start up * Allow a custom FuFirmwareImage->write() in superclassed objects * dfu: Remove two completely unused helpers * dfu: Make DfuFirmware derive from FuFirmware * dfu: Make DfuImage derive from FuFirmwareImage * dfu: Remove private headers that do not need to exist * Fix device flag filtering * trivial: fu-engine: Don't compare device and content checksums * fu-engine: Read all releases and convert versions when comparing * Add new flags `can-verify` and `can-verify-image` * trivial: make verify and verify-update safer * trivial: test: add checksums for "stock" 1.2.2 * trivial: fu-udev-device: use parent udev device to indicate `internal` * trivial: fix TPM2 simulator tests for arch * trivial: uefi: don't add PCRs with all 0's * trivial: Fix a recent regression causing a double-free * synaptics-cxaudio: Support the ThinkPad USB-C Dock Gen2 * trivial: fu-util: add some extra checks around automatic reports * trivial: fu-tool: typo * fu-systemd: Use correct method for stopping units. * trivial: fu-udev-device: Use ID_PCI_CLASS_FROM_DATABASE if name not set * trivial: fu-plugin: quiet down debug output for optionrom plugin * 8bitdo: use will-disappear flag for sf30/sn30 controllers (Fixes: #783) * trivial: ebitdo: don't dump out firmware header unless plugin verbose * trivial: ebitdo: don't use local errors when writing firmware * Add a new device flag for indicating device won't come back * wacom-emr: Fix a regression for EMR devices * Add a generic DFU firmware object for plugins to use * dfu: Use FwupdInstallFlags rather than a DFU-specific version * dfu: Remove functionality for modifying DfuSe files * dfu: Remove functionality you can do now with fwupdtool * dfu: Remove the merge command as it's unused and broken * trivial: Add fu_firmware_parse_file() helper for future use * trivial: Remove the fuzzing details for DfuPatch * trivial: Add klass->to_string for superclassed FuFirmwareImage objects * dfu: Remove DfuPatch as no vendor actually uses this * dfu: Don't wrap provided VID-PID functions * dfu: Use the standard FuDevice custom flags functionality * dfu: Use klass_device->write_firmware() directly * dfu: Use the generic fu_plugin_usb_device_added() function * dfu: Use daemon flags to ignore devices rather than a special flag * dfu: Set the device state directly to avoid proxying signals * dfu: Use the built-in detach() and attach() vfuncs * Read firmware back from the device as a FuFirmware * dfu: Remove a pointless function * dfu: Remove support for the Metadata Store Proposal * dfu: Remove XTEA support * dfu: Remove the SREC and IHEX parsing out of the DFU plugin * ebitdo: Use klass_device->write_firmware like other plugins * trivial: Remove G_BEGIN_DECLS from all private headers * Remove FU_PLUGIN_RULE_REQUIRES_QUIRK as all the plugins now use it * Set all FuUdevDevice plugins to use FU_QUIRKS_PLUGIN * thunderbolt: recognize new 'generation' sysfs attribute * Rename and modernize the udev plugin * synaptics-rmi: Also add the product ID as a GUID without the minor version * synaptics-rmi: Correctly set the payload length rather than hardcoding it * synaptics-rmi: Write the core config correctly * synaptics-rmi: Decode BL7 status failures as actual errors * synaptics-rmi: Add some trivial debugging to help debug a write problem * trivial: uefi: Make efivarvs errors clearer (Fixes: 1330) * trivial: uefi: don't prefix efivar errors * trivial: Remove some now-unused vfuncs * altos: Modernize the plugin to simplify it * Create the custom plugin GType in common code * Reduce more boilerplate in plugins * synaptics-rmi: Check the correct register when querying bootloader mode * trivial: fu-engine: fix never reporting remotes * trivial: fu-util: don't show warnings for no reports to upload * trivial: debian: remove more conffiles from transitions (Closes: #932617) * trivial: debian/control*: Update for fwupdate transition * trivial: Fix a tiny memory leak when starting the daemon * modem-manager: Fix a tiny memory leak when starting the daemon * synaptics-rmi: Copy the behavior of rmi4utils for BL7 detach * synaptics-rmi: Simplify fu_synaptics_rmi_device_read() * synaptics-rmi: Set the version after ->setup has run * synaptics-rmi: Use the correct mask when getting the bootloader mode on BL7 * syanptics-rmi: The build_id is 3 bytes long, not 2 * synaptics-rmi: Read the config partition the same as rmi4utils * Provide a default implementation of common FuDevice actions * thunderbolt-power: avoid checking for bolt support * synaptics-rmi: Add some debugging for BL7 devices * Fix usage of incorrect type for return value * synaptics-rmi: Do as little as possible in device setup * synaptics-rmi: Speed up reading the PDT from 900ms to 30ms * fu-util: add support for a reinstall command * trivial: fu-util/fu-tool: update re-install help text to reinstall * trivial: fu-util: remove double printed message about succesful firmware update * trivial: fu-util: show no updatable devices error for update command * synaptics-rmi: Ignore the ATTN reports from the hardware when reading DATA * synaptics-rmi: Move the fuzzing instructions to the toplevel README * Fuzz the SREC and IHEX file parsers once more * Use parallel fuzzing for the SMBIOS checks too * synaptics-rmi: Fix the packing of the partition table * Add a plugin to update Synaptics RMI4 devices * trivial: Add a parallel fuzzing script * trivial: fu-util: output newline after prompt. * trivial: fix %u output in report upload * Add a --no-domain logging option * trivial: Fix compiler warning for impossible-to-hit condition * Add support for automatically uploading reports * trivial: motd: disable updating motd for now * trivial: fwupd-refresh: fix a clash with fwupd.service (Closes: #941360) * trivial: Fix Fedora CI * trivial: fu-udev-device: fix some assertions * Search up the tree for a vendor name rather than (ab)using the HID_NAME * Add some success messages when CLI tasks have completed * trivial: Put the boolean prompt on the same line as the text * Never show LicenseRef-proprietary to the end user * trivial: snap: correct install hook root directory * Export the instructions for detaching the device * uefi: detect unmounted ESP partitions (Fixes: #1405) * uefi: stop recording efibootmgr output after flash * trivial: post release version bump - Changes from version 1.3.2: * Add support for '' to disambiguate some firmware * thelio-io: Add a plugin to detach the Thelio IO board * trivial: uefi, dell: skip self tests with TPM if non-root (Fixes: #1396) * trivial: dell: quiet the TSS output * trivial: uefi: allow forcing to TPM2 via environment variable * Do not ask the user to upload a report if ReportURI is not set * Do not enumerate physical devices when running the internal self tests * trivial: libfwupd: skip tests if machine-id is empty too * Add a new plugin to update Conexant audio devices * Export the salted machine ID as a daemon property * Fall back to /var/lib/dbus/machine-id when required * trivial: add stalebot (Fixes: #1393) * trivial: dell-dock: correct another write_size error * Align the key values to the text *width* not the number of bytes * trivial: Move dbus directory location for snap too * trivial: Fix some NULL/FALSE confusion * synaptics-prometheus: Fix tiny memory leak when using FuSynapromConfig * trivial: Fix tiny memory leak when using FuSrecFirmware * snap: switch to core18 * trivial: Return the correct property when getting the host product * trivial: fu-util-common: fix description wrapping (Fixes: #1378) * fu-util/fu-tool: Map out changelogs from remotes * fu-util/fu-tool: Better display historical information * fu-history: Update device_modified in sql database during updates * unifying: Use the instance ID to check for supported devices * unifying: Ensure HID++ v2.0 peripheral devices get scanned by the plugin * trivial: Add some more defines to the srec parser * trivial: fix wget command in fu-tool.c * Allow parsing a raw SREC file * trivial: wacom: Add support for second vendor ID * uefi, dell-esrt: Show firmware version when capsule updates unavailable * Add some more debugging to the SREC and IHEX parsers * Print the instance IDs if the GUIDs are unconverted * Add fu_common_bytes_compare_raw() for future usage * Call the set_quirk_kv() vfunc for the superclassed object * uefi: make the TPM optional for runtime again (Fixes: #1362) * trivial: uefi: Make the TCTI output less verbose * Support in AppStream metadata * Include all GUIDs when uploading a report * Do not crash when starting tpm2-abrmd * trivial: Update DBus conf path for example Fedora package * Move D-Bus conf file to datadir/dbus-1/system.d * trivial: Add fu_io_channel_write_byte_array() for future use * trivial: post release version bump - Package new sub-packages typelib-1_0-FwupdPlugin-1_0 and libfwupdplugin1.- Fix file list- Update to version 1.3.1: (jsc#SLE-10751) * Allow disabling all plugins * trivial: Specify the tpm2-tss-devel version in the example spec file * Move to CI Fedora 30 * modem-manager: Fix two build warnings on Fedora 30 * synapticsmst: Add another name quirk for the ThinkPad USB-C Dock * Re-introduce GUID support to fwupdmgr and fwupdtool * uefi-recovery: Add a plugin to add a fake ESRT entry for device recovery * Add a DMI quirk for the Minnowboard Turbot * trivial: Make it easy to disable or enable libflashrom for distros * trivial: Don't use Recommends for RHEL 7 * unifying: fix timeout metadata * ci: arch: minor improvements * unifying: fix timeout * Allow disabling SSL strict mode for broken corporate proxies * trivial: Allow ignoring the daemon version check by using --force * Try to only show DMI product name once * trivial: fu-util-common: Show unknown devices as interesting devices * dell: Use TSS to query and build TPM vendor strings for GUIDs * trivial: dell: show reasons for lack of updates in `UpdateError` * fu-util-common: strip all trailing whitespace in XML description * trivial: fu-common: match all whitespace not just ' ' in `fu_common_strstrip` * fu-util: show release output in get-details again * unifying: use fu_firmware_strparse_uint16 to read be 16bit values * unifying: fix incomplete hex file parsing * fu-util/fu-tool: Print devices, remotes, releases using a tree * Add aliases for `get-upgrades` and `upgrade` * trivial: UEFI skip self tests if library fails to initialize * libfwupd: Add a new private function `fwupd_remote_set_remotes_dir` * trivial: add libtss2-dev into debian/control (Closes: #1324) * trivial: Fix up the GtkDoc Since lines for API only available in 1.3.x * trivial: Post branch version bump * thunderbolt: Add support for kernel safety checks (Fixes: #1312) * Include the kernel release as a runtime version * trivial: fu-util: Drop GUID support from get-devices * synapticsmst: Partially rewrite the plugin (Fixes #1105) * Remove replug flag after the device comes back from reboot * trivial: Fix running the tests on devices with the TPM in v1.2 mode * trivial: fu-util-common: more cleanup related to topology * trivial: fu-util: cleanup fwupdmgr get-details output * trivial: Don't use topology printing in --verbose mode * Make get-devices and get-topology aliases for one another * trivial: Adjust daemon device sorting * Make get-topology more useful by showing all information * trivial: Fix fu_common_string_append_kv() to align properly with idx > 0 * trivial: dell-dock: correct an error preventing write_size from being set * trivial: Do not warn about deprecated declarations * trivial: Update BRs for the example Fedora package * uefi: add test for TPM 2.0 PCR read function * uefi: use tpm2-tss library to read PCR values * fu-common: Use environment variables for systemd managed directories * Use more systemd directives for directories * trivial: fu-util: fix debug output for devices * Allow turning off the timestamp prefix for debugging * Add a ->udev_device_changed plugin vfunc * Add fu_device_rescan() and a FuDevice->rescan() vfunc * Remove the duplicate files in meson.build * Hash the source files when generating the daemon hash * Split up source files in the build script * uefi: add support for tpm2-tools 4.X * trivial: plugins: clarify stance on afuefi.efi * trivial: plugins/: Update README * trivial: disable gtkdoc by default * trivial: update references of hughsie/fwupd to fwupd/fwupd * Publish docs to fwupd.github.io using CircelCI * Add support to integrate into the motd (Fixes: #1270) * Simplify get-devices output to not show un-useful fields * fu-engine/fu-config: Reload metadata store when configuration changes * trivial: If no devices support updates, show messaging (Closes: #1295) * trivial: uefi: set vendor name for system firwmare from DMI data * unifying: update Solaar url * thunderbolt: Fix logic to work properly with ICL thunderbolt controller * Add fu_udev_device_get_device_file() helper * trivial: Fix regression when using fu_device_incorporate() * trivial: Fix a potential crash when using FuPlugin in the self tests * synapticsmst: Make FuSynapticsmstConnection an actual GObject * synapticsmst: Use the same style as other plugins * trivial: Add some helper functions for GByteArray * Do not use FuDevice metadata for the physical and logical IDs * Use fu_common_string_append_kv() in subclassed device * synapticsmst: Use G_DECLARE_FINAL_TYPE to simplify the object * synapticsmst: Add a SynapticsMSTBoardID for another Lenovo dock * trivial: remove unnecessary CUSTOMERID_DELL define * synapticsmst: Add a SynapticsMSTBoardID for a Lenovo dock * synapticsmst: Display the board ID in non-hex form in the error message * synapticsmst: Use a more suitable icon for the device * trivial: Remove unused variable * Never use memcpy() in a possibly unsafe way * Add a ->to_string() vfunc to FuFirmware * Use FuFirmware as a container for firmware images * Allow filtering devices when using the command line tools * Be more accepting when trying to recover a failed database migration * trivial: Add translation for X-ThunderboltController * trivial: fixup standalone installer * modem-manager: add counterpart GUID for the DW5821e * solokey: Release the interface and rebind the kernel driver on close * fu-tool: Port ability to update a single device from fwupdmgr * uefi: Actually write the new device path if different than before * Allow setting custom flags when using fwupdate * trivial: Do not show a critical warning if no firmware is specified * trivial: Fix overzealous search-replace action in user string * Verify we don't break the ABI * Fix a crash when stopping the fwupd service * Relax the certificate time checks in the self tests for the legacy certificate * trivial: add cache directory into systemd unit rw paths * Never show AppStream markup on the console * Do not segfault when trying to quit the downgrade selection * trivial: Update icons for Thunderbolt and MST devices * Add support for the SoloKey Secure * trivial: Allow a device to *clear* a firmware version * trivial: debian: For signed package fill out Built-Using (Closes: #932757) * Allow specifying GUID to check any version exists * trivial: post release version bump * Release fwupd 1.2.10 * Disable the flashrom plugin by default * trivial: thunderbolt: catch failure setting up device * dell-esrt: Improve the experience for the plugin (Closes: #1245) * fu-util: When unlocking prompt for reboot if applicable * remove those PIDs with Bluetooth interface, Wacom updater doesn't support updating from Bluetooth interface * flashrom: Only show DEBUG and DEBUG2 output if using --plugin-verbose=flashrom * flashrom: Only call flashrom_programmer_init() on whitelisted boards * flashrom: Fix no version format set * fu-util: Show devices with an UpdateError in get-devices output * trivial: uefi: use UEFI-dummy for device ID instead of just uefi * trivial: fix error handling for non UEFI case (#1220) * Add a specific error code for the low battery case * Fix Fedora docker build missing directory: dist * uefi: Determine whether running in legacy mode or not (Fixes: #1220) * trivial: ci: debian: Only turn on flashrom when running CI * trivial: Fix typos in error messages * Allow client code to construct objects from GVariant blobs * Export functionality to build an array of objects * flashrom: Use libflashrom * trivial: Fix the version script to pick up boxed types * trivial: Correctly order the map entries according to vercmp rules * trivial: Fix pylint issue in the version script * Add meson target to fix translations * Add support for 8bitdo USB Retro Receiver * Use the newer features of GRWLock rather than reinventing it * Revert "Allow SuperIO updates to be done live" * uefi: Try to find a duplicate using the loadopt name * uefi: Provide a quirk to disable the use of the UX capsule * trivial: uefi: use the path for efibootmgr that was detected * synaptics-prometheus: Fix installing CONFIG firmware updates * synaptics-prometheus: Set the install duration from a quirk * synaptics-prometheus: Don't emit critial warning when updating config firmware * synaptics-prometheus: Fix missing field in the IOTA reply struct * Create SECURITY.md * redfish: Never set NULL device name * modem-manager: Never set NULL device name * ata: Never set NULL device name * trivial: Add some parameter guards to FuDevice * trivial: snap: make polkit directories if they don't exist (Fixes: #1205) * trivial: fu-main: clarify missing PK file error * synapticsmst: fix GUID generation (Closes: #1207) * Lite Mk II flag for use-shim-unique * trivial: circleci: try to fix automatic snap deployment * Allow SuperIO updates to be done live * fu-util-common: Support empty proxy strings (Fixes: #1199) * trivial: uefi: clarify error message * trivial: Fix non-systemd build * trivial: Sync example spec file with downstream * trivial: post release version bump - Drop fwupd-bsc1143905-hash-the-source-files.patch: Applied upstream. - Add pkgconfig(tss2-esys) BuildRequires: New dependency. - Add gtk-doc BuildRequires and pass gtkdoc=true to meson, build api docs even when using source service.- Add fwupd-bsc1143905-hash-the-source-files.patch to hash the source files instead of libfwupdprivate.a to avoid the checksum change due to the random naming LTO profile sections (bsc#1143905)- Update to version 1.2.10: * Disable the flashrom plugin by default * dell-esrt: Improve the experience for the plugin (Closes: #1245) * fu-util: When unlocking prompt for reboot if applicable * remove those PIDs with Bluetooth interface, Wacom updater doesn't support updating from Bluetooth interface * flashrom: Only show DEBUG and DEBUG2 output if using - -plugin-verbose=flashrom * flashrom: Only call flashrom_programmer_init() on whitelisted boards * flashrom: Fix no version format set * fu-util: Show devices with an UpdateError in get-devices output * Add a specific error code for the low battery case * Fix Fedora docker build missing directory: dist * uefi: Determine whether running in legacy mode or not (Fixes: #1220) * Allow client code to construct objects from GVariant blobs * Export functionality to build an array of objects * flashrom: Use libflashrom * Add meson target to fix translations * Add support for 8bitdo USB Retro Receiver * Use the newer features of GRWLock rather than reinventing it * uefi: Try to find a duplicate using the loadopt name * uefi: Provide a quirk to disable the use of the UX capsule * synaptics-prometheus: Fix installing CONFIG firmware updates * synaptics-prometheus: Set the install duration from a quirk * synaptics-prometheus: Don't emit critial warning when updating config firmware * synaptics-prometheus: Fix missing field in the IOTA reply struct * Create SECURITY.md * redfish: Never set NULL device name * modem-manager: Never set NULL device name * ata: Never set NULL device name * synapticsmst: fix GUID generation (Closes: #1207) * Lite Mk II flag for use-shim-unique * fu-util-common: Support empty proxy strings (Fixes: #1199) - Add python3-setuptools to BuildRequires for generate-version-script.py- Update to version 1.2.9: * Release fwupd 1.2.9 * trivial: Add two new translatable strings for new category types * Check if the system is offline during install, rather than at startup * Prompt the user to shutdown if requried when installing by ID * Use the correct file extension for the offline updates cache * trivial: Allow using --force to use the wrong daemon version * trivial: Display the correct expected command * standalone-installer: Be smarter about existing installed fwupd * Add a plugin to update Synaptics Prometheus fingerprint readers * trivial: standalone-installer: rename uninstall argument to cleanup * fu-util: Check the daemon version is at least the client version * fu-util: Check that daemon is started by expected unit * fu-util-common: when stopping a daemon, check for snap too * Allow using --force to trigger a duplicate offline update * trivial: Allow using FuUsbDevice without a GUsbDevice * trivial: Copy the icons if unset for the device child * trivial: Copy the physical ID if unset for the device child * trivial: Ensure the parent ID is up to date if the device ID changes * trivial: Fix typo when setting the parent ID * trivial: Disable the flatpak CI build * Allow handling FORCE for devices that subclass FuDevice * uefi: Fix a libasan failure when reading a UEFI variable * trivial: Fix a memory leak found using libasan * trivial: Fix an libasan failure in the dell plugin * trivial: Fix some dead code spotted by coverity * trivial: Fix a typo spotted by coverity * trivial: Fix a missing config.h include in a new source file * Dynamically read path to use for /system-update * Display the remote warning on the console in an easy-to-read way * ata: Set version format to plain for devices obtained from udev * trivial: Only apply SmbiosManufacturer to release version for internal * trivial: Fix two bugs in the hardware self tests script * Never guess the version format from the version string * Only force a semver when the device opts-in * Export the version-format to clients * Add missing gtk-doc documentation * dfu: Add some trivial, but useful, debugging for AVR DFU devices * dfu: Correctly identify DFU firmware that starts at offset zero * dfu: Don't keep showing trivial debug output * dfu: Reset the forced version during attach and detach * ata/nvme: For devices running Dell firmware, set `VersionFormat` (Fixes: #1169) * fu-engine: Check if VersionFormat is ambiguous when adding devices * trivial: Fix fwupdate --apply * Only use class-based instance IDs for quirk matching * trivial: dell-dock: set minimum board to 6 * trivial: post release version bump- Update to version 1.2.8: * Don't upload reports when the user has configured their system in a broken way * Allow setting the daemon verbose domains at runtime * Allow fwupdmgr to modify the daemon config * Do not compare version formats when the release format is unknown * Do not fall back integers to a plain version format * Use the device version format when converting the release version * Set the VersionFormat using the metadata or the UEFI quirk - Changes from version 1.2.7: * l10n: Create Lithuanian translation file * l10n: Update LINGUAS * Updated: Add support for 8BitDo M30. * modem-manager: increase the timeout to wait for modem after uninhibited * modem-manager: implement qmi pdc active config selection as attach() * fu-engine: When removing activation flag match the correct version * Require --force to install a release with a different version format * Match the old or new version number when setting NEEDS_REBOOT * Make an error message clearer when there are no updates available * Add support for the not-child extension from Logitech * thunderbolt: Set require-ac for Thunderbolt devices (Fixes: gh#hughsie/fwupd#1142) * Fix some typos spotted using codespell * Add a component categories to express the firmware type * fu-tool: Port get-history command to fwupdtool * Recreate the history database if migration failed * Move the core built-in 'fwupd' remote over to the dell-esrt plugin * snap: Add a custom systemd unit to call activation on shutdown (Fixes: gh#hughsie/fwupd#1125) * ata: Flush cache before standby and activate * synapticsmst: blacklist plugin when using amdgpu (Fixes: gh#hughsie/fwupd#1121) * uefi: add a new option to specify the os name * Return the newest device when using fu_history_get_device_by_id() * uefi: More carefully check the output from tpm2_pcrlist * uefi: Don't overwrite CustomFlags if set from a quirk * Shut down the daemon if the on-disk binary is replaced * ata: Correct activation functionality * Fix version comparisons after reboot for some formats * fu-tool: save history from stuff installed with `fwupdtool` - Changes from version 1.2.6: * ata: send ATA standby immediate when activating firmware * offline: Be more graceful when dealing with Plymouth failures * Save the new version in the history database for offline updates * Show the DeviceID when showing the updates list * Allow forcing an offline-only update on a live system using --force * Do not schedule an update on battery power if it requires AC power * superio: Add InstallDuration default value * superio: Add support for writing new e-flash contents * superio: Fix reading the attestation checksum * superio: Add support for reading the device checksum * superio: Use the chipset ID in the device name * superio: Move the device flush before getting the register map * superio: Move all the IT89xx code to a subclassed device object * superio: Move all the IT85xx code to a subclassed device object * superio: Split and export fu_superio_device_ec_writeX() * superio: Remove the port from fu_superio_device_ec_read() * superio: Move the register read/write into the FuSuperioDevice object * superio: Check the IOBAD0 is usable during setup * superio: Use fu_device_set_firmware_size() * superio: Move some constants out to the common header * superio: Use GObject properties in FuSuperioDevice * superio: Convert FuSuperioDevice to be derivable * Update Plymouth when updating pending firmware * Ask to reboot after scheduling an offline firmware update * Do not fail when scheduling more than one update to be run offline * Allow running offline updates when in system-update.target * Fix the location of fwupdoffline in the service file * Add optional vfuncs to allow detaching and attaching verify() * superio: Add list of SPI commands for future usage * Add a verify-update command to fwupdtool * uefi: Actually upload the UPDATE_INFO entry for the UX capsule * superio: Get the chip size from the EC rather than hardcoding * uefi: Check the error code of QueryCapsuleCapabilities() correctly * Update the UEFI UX Capsule Header checksum when needed. * uefi: Copy the shimx64.efi binary for known broken firmware * Correctly get the check the new version for devices that replug * Add a simple script to add a capsule header * Ensure the PKCS-7 client certificate exists at startup * fix makecab directive options * fwpup.service: use display-manager.service instead of gdm.service * Allow signing the fwupd report with the client certificate * Add a D-Bus method to generate a signature using the self-signed client certificate * Allow signing and verifying data using a PKCS-7 self-signed client certificate * Fix a critical warning when loading a PKCS-7 certificate with no DN * Include all device checksums in the LVFS report * modem-manager: Fix a trivial build warning * superio: Fix a trivial build warning * Move out the offline update functionality to a new binary * Do not reboot when failing to start fwupd during offline updates * Do not write the schema version to the db when loading * Do not recreate XbSilo caches when running on a readonly filesystem * Add the fwupdagent binary for use in shell scripts * Allow restricting firmware updates for enterprise use * standalone-installer: new --allow-older and --allow-reinstall options * Show the upgrade and downgrade flags when getting releases for a device * Rename FwupdRelease:trust-flags to FwupdRelease:flags * fu-tool: Save device state to @LOCALSTATEDIR@/lib/fwupd/state.json on actions * modem-manager: implement support for qmi-pdc * Add a plugin to support ModemManager hardware * fu-tool: Don't let failing to find dbus prevent engine from starting * ata: Support delayed activation * dell-dock: Use activation when calling fwupdtool activate * Add a support for delayed activation * uefi: Fix the self tests when running on Fedora SilverBlue * Do not fail to start the daemon if tpm2_pcrlist hangs * po/make-images.sh: quote LOCALEDIR and PYTHON3 * meson: print stderr of python3 command instead of stdout * Revert "contrib/debian: Switch to debian unstable" * Add elogind support - Changes from version 1.2.5: * uefi: fix segfault in fwup_set_update_statuses * Show in Flathub correctly * debian: explicitly depend on shared-mime-info * superio: Implement detach() and attach() * superio: Correct the names of some constants and improve debugging support * dell-dock: Filter the last supported payloads of certain board 4 SKUs * circleci: Manage the lifecycle of the snap * Add support to run snap build in CircleCI * wacom-usb: Use the correct buffer format for the touch module * wacom-usb: Set the install duration for each device type * wacom-usb: Return with an error if there were too many retries * wacom-usb: Make updating less verbose * Convert all child instance IDs when converting the parent * uefi: Allow devices to create more complete fake UEFI devices * unifying: Fix regression when recovering from failed flash * Ensure libxmlb dir exists for LGTM.com * Add C build configuration for LGTM.com * Use G_BEGIN_DECLS correctly for internal headers * standalone-installer: Fix issue found by LGTM * Use '#pragma once' to avoid a lot of boilerplate * Force LGTM to see Python 3 * fwupd: Hide firmware-packager behind meson option` * fu-common-cab: Correct handling of CAB files w/ nested directories and older libgcab * Fix a regression in using the InstanceIDs for quirk matching * thunderbolt: Convert the instance IDs as we never open the device * udev: Manally call fu_device_setup() to convert the instance IDs * fu-tool: Correct a crash caused by calling fwupdtool update * fu-tool: Don't fail if dbus is unavailable * contrib/debian: Switch to debian unstable * wacom-usb: Record the block number when failing * wacom-usb: The touch address is big endian * wacom-usb: Accept a non-binary IHEX file for the touch update * wacom-usb: Only poll when the device status is 'busy' * wacom-usb: Only reboot the device when all composite devices have been updated * wacom-usb: Fix flashing failure with latest Intuos Pro tablet * dfu: Fill holes when reading SREC files * Add fwupd_guid_from_string() to drop dep on uuid * wacom-raw: Check the InstanceID rather than GUID * Defer the InstanceID->GUID hashing until after setup * ata: Check for USB enclosures as well * Do not use efivar just to print a mixed endian GUID * Add fu_device_add_instance_id() and prefer explicit conversion * Report the DeviceInstanceIDs to `fwupdmgr get-updates` * Export some of the GUID functionality * Allow a plugin to set _ANOTHER_WRITE_REQUIRED to run more than one plugin * nvme: Add an extra check for Dell plugins to avoid false positives * ata: Add support for detecting Dell GUIDs * Fix the self tests when using glib2 >=2.59.0 * Add support to call composite prepare and cleanup using fwupdtool * uefi: Disable -Wno-address-of-packed-member * uefi: Don't unconditionally enable Werror for the EFI binary * Disable -Wno-address-of-packed-member - Changes from version 1.2.4: * Remove the autogenerated headers in the gettext files * ata: Default to the non-activation 0xE subcommand * fastboot: Use a much longer timeout as the removal delay * fu-progressbar: be more quiet when running non-interactive * fu-tool: Show UpdateMessage if applicable for install command * dfu: Simplify the SREC parser to avoid a crash with an invalid file * wacom-raw: Use the correct error codes when the panel is not supported * wacom-usb: Add some more information to the README * fu-keyring-utils: Don't fail missing PKI directory when compiled with GPG/PKCS7 * dell: Check that the flash interface command is available * wacom-usb: Fix the plugin name to allow devices to be updated * fastboot: flash the partition after downloading the file * uefi: Add a quirk to use the legacy bootmgr description * ata: Mark all devices as needing a reboot * ata: Add a new plugin to upgrade firmware on ATA/ATAPI hardware * udev-device: Add a utility function for debugging * udev-device: Set the firmware revision automatically * udev-device: Set the serial number automatically * udev-device: Fall back to non-database model and vendor values * udev-device: Fix critical warning if the device has no parent * dell-dock: Add support for a passive flow * Add support for an `UpdateMessage` and display it in tools * fu-tool: Port the `get-updates` command over * When using `directory` remote type automatically generate metadata * libfwupd: Add support for new remote type "directory" * Ensure cabinet archives always have a container checksum * Add support for a per-release source and details URL * When generating a CAB Silo use the prefix "components" * uefi: Add a trivial debugging statement to debug a UX capsule failure * uefi: Use fwup_new0() to allocate the updates table array * nitrokey: Correct Nitrokey Storage invalid firmware version read * dell-dock: Add support for flashing Thunderbolt over I2C * wacom-raw: Add a plugin to update Wacom embedded EMR and AES panels * fu-util/fu-tool: sync up reboot and shutdown behavior * dfu: Ignore the SUB ASCII value * dfu: Fix the parser to support extended segment addresses * dfu: Support ihex files with leading comments don't show an error * uefi: Correct a boot order creation bug (Fixes: gh#hughsie/fwupd#956) * uefi: Remove all variable length arrays * uefi: Fix a logic bug in fwup_search_file() * uefi: Use _cleanup_free in one more place * uefi: Do not pass required attrs to fwup_delete_variable() * uefi: Delete the old Linux-Firmware-Updater boot entry * uefi: Use the GNU-EFI BOOL type * Check if plugin changed after the device attaches or detaches * uefi: Refactor and simplify the EFI loader * Show a console warning if loading an out-of-tree plugin * UEFI: Do the UX checksum calculation in fwupd * wacom-usb: Add two more Intuos tablets * nvme: Add the needs-shutdown quirk to Phison NVMe drives * Add _NEEDS_SHUTDOWN flag for devices * Use GCC __cleanup__ features in the EFI loader * nvme: Add flag to support manually aligning the firmware to the FWUG value * nvme: Support FGUID to get the SKU GUID * nvme: Support FWUG to get the write block size * nvme: Add trivial comment to clarify address bitshifting * uefi: Do not check the BGRT status before uploading a UX capsule * dfu: Fix flashing various Jabra devices * upower: Add support for checking battery percentage * nvme: Check the return code of the admin passthru ioctl * fu-tool: Add support for an 'update' command to fwupdtool * dell-dock: Set minimum board to board 4 * dell-dock: Workaround a manufacturing bug for board level 4 * dell-dock: Wait longer for re-enumeration on TBT SKU * superio: Support IT89xx devices * fu-main: remove incompatible locale error message * Add a new plugin checklist (Fixes: gh#hughsie/fwupd#899) - Dropped obsolete patch: fwupd-bsc1130056-change-esp-os-name.patch (upstream PR: gh#hughsie/fwupd#1119 - Fixed fwupd-bsc1130056-change-shim-path.patch so that it works with the new files - Cleaned up changelog- Stop shipping polkit rules, as we have the distro specific setup in polkit-default-privs (boo#1125428).- Add fwupd-bsc1130056-change-esp-os-name.patch to change the OS directory in ESP (bsc#1130056) - Add fwupd-bsc1130056-change-shim-path.patch to set the default shim binary for openSUSE/SLE (bsc#1130056) - Link fwupd*.efi.signed to fwupd*.efi as requested by fwupd (bsc#1129466)- fwupd.spec: fix shell syntax error in %postun section (boo#1120363).- Update to version 1.2.3: * Correctly migrate the history database - Changes from version 1.2.2: * Log an error if started with an incompatible locale * Fix building with -Wl,-z,defs * ebitdo: Fix the reported version number if the daemon locale is not C.UTF-8 * Add Dell TB18DC to the known devices list * Allow replacing the last byte in the image when using 'dfu-tool replace-data' * Check the device checksum as well as the content checksum during verify * Submit the device firmware checksum and update protocol in the submitted report * Include the device checksum and update protocol in the historydb * uefi: Add the PCR0 value as the device checksum for system firmware * Add new API to get the release protocol from the metadata * Allow plugins to define support for a 'well-known' protocol * uefi: When adding headers set the header size to 4k * uefi: Append the header on capsules without headers from Linux * flashrom: Ensure the quirks database is set on the new object * uefi: Do not add devices with invalid GUIDs * Do not allow a GUID of zero * Add shared functionality for reading and writing with O_NONBLOCK * Only run attach and detach if the device is in the wrong mode * Sanitize the version if the version format has been specified * wacom-usb: Remove the DTH generation hardware as it will not work with fwupd * thunderbolt: Remove a superfluous boundary condition when verifying update * Add a plugin to update hardware that supports fastboot * Fix a regression when doing GetReleases on unsupported hardware * dfu: Require a specific USB class and subclass for DFU mode * Correctly parse format the version numbers correctly using old metadata * amt: Fix a crash if AMT returns an empty response * Check plugins set error on failure * contrib: Add a simple python3 client * installed-tests: Adjust to actually use a remote for installed tests * Add more standard USB identifier GUIDs * wacomhid: Rename to wacom-usb * Provide a way for plugins to decompress a custom archive to ram - Changes from version 1.2.1: * Remove DaemonVersionFormat=quad * Shut down the daemon after 2h of inactivity * Create a silo index to speed up GUID queries * Fix flashing the 8bitdo SF30 * Speed up fwupd startup by loading less thunderbolt firmware * Query the XbSilo when calling fu_plugin_check_supported() * Guess the version format when it is not provided * Fix a use-after-free when using valgrind and --immediate-exit * Add per-release install duration values * Fix showing the custom remote agreements * Be more explicit setting the update state * Include the os-release information in the release metadata - Changes from version 1.2.0: * ebitdo: remove SF30/SN30 pro device ids * dell-dock: Drop delayed MST callback routine * synapticsmst: Adjust EVB board handling * synapticsmst: Remove the content checking of firmware * synapticsmst: Access Board ID through memory instead In firmware images HDCP 2.2 will be enabled by default,so access to flash region will fail.` * contrib: Adjust flatpak build for moving to flathub * dell-dock: Prefer to flash VMM5331 via I2C instead of DP aux * Use HTTPS_PROXY if set * firmware-packager: Make it clearer to use * Sort the firmware sack by component priority * flatpak: Update gnu-efi to latest version * amt: Set the full device version including the BuildNum * fwupdmgr/fwupdtool: Move monitor command to fwupdtool * fwupdmgr/fwupdtool: Move firmware builder from fwupdmgr to fwupdtool * Add version format quirks for several Lenovo machines * uefi: Set the quirks on created devices * dell_dock: Use correct offset for finding version of MST * dell-dock: Add missing unlock call for MST via dell_dock plugin * Support the Intel ME version format * Port from libappstream-glib to libxmlb * Bump requirement to meson 0.46.0 * fu-main: Catch SIGTERM while update is in progress * fu-tool: Stop any running daemon over dbus before loading engine * meson: Bump dependency to 0.44 and adjust sysconfdir handling * dell-dock: If marketing name is invalid don't fail initialization * Readme Updated: Added KDE Discover as one more graphical front-end available for fwupd. * dell-dock: Correct a situation that error wasn't propagating * Don't segfault if a plugin returns FALSE from UpdateFunc with no error set * dell-dock: Use different debug strings for each device type * dell-dock: Don't use the VLA feature in the new dock * Add a plugin for an upcoming Dell USB-C dock * contrib: Add information on how to use debugging scripts * Allow setting the version format from a quirk entry * Don't use AppStream-glib for string helpers * Don't use AppStream-glib for version helpers * Don't use AppStream-glib for the GUID helpers * fu-device: Ensure that parent ID is created before creating quirked children * Update all sub-devices for a composite update * Stop showing the current release during updates in fwupdmgr * uefi: Move the TPM unlocking functionality from the Dell to UEFI plugin * Run the Dell plugin initialization after the UEFI plugin * thunderbolt-power: Fix possible linker problem * Allow firmware files to depend on versions from other devices * fu-debug: Redirect all debugging output to stderr instead of stdout * synapticsmst: Adjust panamera ESM update routine for some reported issues * fu-engine: Optionally wait for replug before updating a device * fu-device-list: Use delayed device removal when removing the tree * thunderbolt: Use replugging from the daemon * Add support for devices to show an estimated flash time * Marked some CL options for translation * ci: Run clang static analysis for Ubuntu build rather than just clang compiler * nvme: Initialize the buffer before reading the contents * contrib: Add a standalone installer creation script * rts54hid: Add support for Realtek USB devices using vendor HID commands * fu-engine: Don't show devices pending a reboot in GetUpgrades * Add FuMutex helper to make various parts of the daemon thread-safe * rts54hub: Add support for Realtek USB devices using vendor HUB commands * uefi: Check the amount of free space on the ESP * fu-tool: Import debugging options from fu-debug like fu-main * superio: Set the physical and logical IDs - Add pkgconfig(xmlb) BuildRequires: New dependency.- Add pesign-obs-integration to BuildRequires and add fwupd*.efi to BRP_PESIGN_FILES to get it signed - Add LC_IMAGES and use efivar only if %{with efi_fw_update} + Also update the version requirement of efivar - Disable Redfish and NVME plugins if %{without efi_fw_update} since those two plugins require efivar - Remove fwup from BuildRequires since fwupdate is already merged into fwupd.- Use gnu-efi only if %{with efi_fw_update}, always use pkgconfig(efivar) - Fix file list- Amend %post and %postun to install/uninstall fwupd*.efi to the EFI system partition + Also add shim to Requires for fwupdx64.efi - Mark fwupdate as obsolete + fwupdate has been merged into fwupd since fwupd 1.1.0.- fwupd is require for thunderbolt firmware update in SLE15-SP1(fate#322681)- Update to version 1.1.2: + New Features: - Add a new device flag "ignore-validation" that will override checks - Add a new plugin to enumerate EC firmware - Add a new plugin to update NVMe hardware - Add a plugin for updating using the flashrom command line tool - Allow the device list to take care of waiting for the device replug - Allow updating just one specific device from the command line - Allow upgrades using a self-signed fwupd.efi binary - Download firmware if the user specifies a URI - Include serial number in daemon device output when trusted - Notify all plugins of device removals through a new vfunc - Use boltd force power API if available + Bugfixes: - Add an install hook for classic snap - Allow forcing installation even if no AC power is applied - Allow using --force to ignore version_lowest - Always use the same HardwareIDs as Windows - Check the device state before assuming a fake DFU runtime - Copy over parent GUIDs from other plugin donors - Detect location of python3 interpreter - Do not add udev devices after a small delay - Don't fail to run if compiled without GPG/PKCS7 - Fix a segfault in fwupdtool caused by cleanup of USB plugins - Implement the systemd recommendations for offline updates - Improve performance when reading keys from the quirk database - Remove children of devices when the parent is removed - Rewrite synapticsmst to use modern error handling - Rewrite the unifying plugin to use the new daemon-provided functionality - Show a time estimate on the progressbar after an update has started- Use noun phrase for summary. Trim request for comments from description.- Update to version 1.1.1: + New Features: - Add support for the Synaptics Panamera hardware - Add validation for Alpine and Titan Ridge - Improve the Redfish plugin to actually work with real hardware + Bugfixes: - Allow different plugins to add the same device - Allow flashing unifying devices in recovery mode - Allow running synapticsmst on non-Dell hardware - Check the ESP for sanity at at startup - Do not hold hidraw devices open forever - Don't override _FORTIFY_SOURCE when building the EFI binary - Don't show passwords in fwupdmgr - Fix a potential segfault in smbios data parsing - Fix encoding the GUID into the capsule EFI variable - Fix various bugs when reading the thunderbolt version number - Reboot synapticsmst devices at the end of flash cycle - Show status messages when the daemon is initializing - Show the correct title when updating devices - Show the reasons that plugins are not run on the CLI - Use localedir in po/make-images- Run %udev_rules_update in post as package install udev rules- Update to version 1.1.0: (FATE#326702) + New Features: - Add a initial Redfish support - Add a tool to mimic the original fwupdate CLI interface - Allow devices to assign a plugin from the quirk subsystem - Change the quirk file structure to be more efficient - Merge fwupdate functionality into fwupd - Run a plugin vfunc before and after all the composite devices are updated - Support more Wacom tablets + Bugfixes: - Add release information for locked devices - Allow building with older meson - Detect the EFI system partition location at runtime - Do not use 8bitdo bootloader commands after a successful flash - Enable accesing downloaded files in flatpak and snap - Fix a potential buffer overflow when applying a DFU patch - Fix downgrading older releases to devices - Fix flashing devices that require a manual replug - Fix several small memory leaks in various places - Fix the retrieval of Redfish version - Fix unifying failure to detach when using a slow host controller - Set the Wacom device status when erasing and writing firmware - Show errors in the CLI if unable to access directory - Use the parent device name for Wacom sub-modules - Removed enable_pkcs7_when_testing_only.patch- Update to version 1.0.8: + New Features (including version 1.0.7): - Add an plugin to update some future Wacom tablets - Add 'fwupdmgr get-topology' to show logical device tree - Add support for creating a flatpak - Add support for creating a snap - Add support for Motorola S-record files - Add the Linux Foundation public GPG keys for firmware and metadata - Show a translated warning when the server is limiting downloads - Add enable-remote and disable-remote commands to fwupdmgr - Add fu_plugin_add_compile_version() for libraries to use - Allow requiring specific versions of libraries for firmware updates - If no remotes are enabled try to enable the LVFS - Show a warning with interactive prompt when enabling a remote + Bugfixes (including version 1.0.7): - Add a firmware diagnostic tool called fwupdtool - Adjust all licensing to LGPL 2.1+ - Allow installing more than one firmware using 'fwupdmgr install' - Allow specifying hwids with OR relationships - Do not call fu_plugin_init() on blacklisted plugins - Do not require libcolorhug to build - Fix a crash in libfwupd where no device ID is set - Fix a potential DoS in libdfu by limiting holes to 1MiB - Fix a segfault that sometimes occurs during cleanup of USB plugins - Fix Hardware-ID{0,1,2,12} compatibility with Microsoft - Hide devices that aren't updatable by default in fwupdmgr - Search all UEFI GUIDs when matching hardware - Stop matching Nintendo Switch Pro in the 8bitdo plugin - Check that EFI system partition is mounted before update - Disable synapticsmst remote control on failure - Don't recoldplug thunderbolt to fix a flashing failure - Fix SQL error when running 'fwupdmgr clear-offline' - Improve the update report message - Only enumerate Dell Docks if the type is known - Only run certtool if a new enough gnutls is present - Prevent a client crash if the daemon somehow sends invalid data - Reboot after scheduling using logind not systemd - Use the right encoding for the label in make-images - Added/backported enable_pkcs7_when_testing_only.patch: + needed to disable pkcs7 test during build (can be removed for fwupd >= 1.0.9)- Update hasbang in installed files from /usr/bin/env python3 to /usr/bin/python3.- Update url - Small packaging cleanup with spec-cleaner- Update to version 1.0.6: + New Features: - Add bash completion for fwupdmgr. - Add support for newest Thunderbolt chips. - Allow all functions that take device arguments to be prompted. - Allow devices to use the runtime version when in bootloader mode. - Allow overriding ESP mount point via conf file. - Delete any old fwupdate capsules and efivars when launching fwupd. - Generate Vala bindings. + Bugfixes: - Allow ctrl-d out of the prompt for devices. - Allow to create package out of provided binary. - Correct handling of unknown Thunderbolt devices. - Correctly detect new remotes that are manually copied. - Fix a crash related to when passing device to downgrade in CLI. - Fix running the self tests when no fwupd is installed. - Fix Unifying signature writing and parsing for Texas bootloader. - Only send success and failure reports to the server. - Use a CNAME to redirect to the correct CDN for metadata. - Use a longer timeout when powering back the Thunderbolt device.- Ensure library package has a dependency on main package, otherwise it won't be usable.- Update to version 1.0.5: + New Features: - Offer to reboot when processing an offline update. - Report the efivar, libsmbios and fwupdate library versions. - Report Thunderbolt safe mode and SecureBoot status. - Show the user a URL when they report a known problem. - Support split cabinet archives as produced by Windows Update. + Bugfixes: - Be more careful deleting and modifying device history. - Clarify which devices don't have upgrades. - Ensure the Thunderbolt version is xx.yy. - Fix a daemon warning when using fwupdmgr get-results. - Fix crasher with MST flashing. - Fix DFU detach with newer releases of libusb. - Include the device VID and PID when generating the device-id. - Set the RemoteId when using GetDetails. - Stop matching 8bitdo DS4 controller VID/PID. - Use help2man for dfu-tool and drop docbook dependencies. - Use ngettext for any strings with plurals. - Use the default value if ArchiveSizeMax is unspecified.- Update to version 1.0.4: + New Features: - Add D-Bus methods to get and modify the history information. - Allow the user to share firmware update success or failure. - Ask the user to refresh metadata when it is very old. - Store firmware update success and failure to a local database. + Bugfixes: - Add a device name for locked UEFI devices. - Allow each plugin to opt-in to the recoldplug action. - Fix firmware downloading using gnome-software. - Fix UX capsule reference to the one specified in efivar. - Never add two devices to the daemon with the same ID. - Rescan supported flags when refreshing metadata. - Add pkgconfig(json-glib-1.0) BuildRequires: new dependency.- Update to version 1.0.3: + New Features: - Add a new plugin to add support for CSR "Driverless DFU". - Add initial SF30/SN30 Pro support. - Support AppStream metadata with relative URLs. + Bugfixes: - Add more metadata to the user-agent string. - Block owned Dell TPM updates. - Choose the correct component from provides matches using requirements. - Do not try to parse huge compressed archive files. - Fix a double-free bug in the Udev code. - Handle Thunderbolt "native" mode. - Use the new functionality in libgcab >= 1.0 to avoid writing temp files.- Unbreak compilation on non-x86, upstream renamed options to disable plugins.- Update to version 1.0.2: + Add a plugin for the Nitrokey Storage device + Add support for the original AVR DFU protocol + Allow different plugins to claim the same device + Allow quirks to set common USB properties + Move a common plugin functionality out to a new shared object + Optionally delay the device removal for better replugging + Set environment variables to allow easy per-plugin debugging + Use a SHA1 hash for the internal DeviceID + Add quirk for AT32UC3B1256 as used in the RubberDucky + Disable the dell plugin if libsmbios fails + Don't register for USB UDev events to later ignore them + Fix a possible buffer overflow when debugging ebitdo devices + Fix critical warning when more than one remote fails to load + Fix DFU attaching AVR32 devices like the XMEGA + Ignore useless Thunderbolt device types + Refactor ColorHug into a much more modern plugin + Release the Steelseries interface if getting the version failed + Remove autoconf-isms from the meson configure options + Show a nicer error message if the requirement fails + Sort the output of GetUpgrades correctly - Changes from version 1.0.1: + Add support for HWID requirements + Add support for programming various AVR32 and XMEGA parts using DFU + Add the various DFU quirks for the Jabra Speak devices + Allow specifying the output file type for 'dfu-tool read' + Move the database of supported devices out into runtime loaded files + Support the IHEX record type 0x05 + Use help2man to generate the man page at build time + Use the new quirk infrastructure for version numbers + Catch invalid Dell dock component requests + Correctly output Intel HEX files with > 16bit offset addresses + Do not try to verify the element write if upload is unsupported + Fix a double-unref when updating any 8Bitdo device + Fix crash when enumerating with Dell dock connected but with no UEFI + Fix uploading large firmware files over DFU + Format the BCD USB revision numbers correctly + Guess the DFU transfer size if it is not specified + Include the reset timeout as wValue to fix some DFU bootloaders + Make the error message clearer when sans fonts are missing + Support devices with truncated DFU interface data + Use the correct remote-specified username and passord when using fwupdmgr + Use the correct wDetachTimeOut when writing DFU firmware + Verify devices with legacy VIDs are actually 8Bitdo controllers - Add help2man as BuildRequires.- Fix dependencies and build options for non-x86 architectures. At least FW updates for USB are arch independent, and EFI FW updates can also be applied on Aarch64.- Update to version 1.0.0: * Add the plugin documentation to the main gtk-doc * Add a waiting-for-auth daemon state * Add fwupd_remote_get_checksum() to use in client programs * Generate the LD script from the GObject Introspection data * Prevent fwupd from mounting filesystems * uefi: Do not use system-specific infomation for PCI devices * uefi: Support uploading the firmware splash image * dell: only set coldplug delay when we know we need it * dell: only run SMI to toggle host MST GPIO on systems with host MST * dell: add functionality to blacklist HW with problems * dell: only run on intended chassis * thunderbolt-power: always run after thunderbolt plugin * Allow plugins to depend on each other * Add support for SMBIOSv3 * dell: prefer to use hwids to get DMI keys and DE table * debian: remove /etc/fwupd.conf on upgrade * unifying: Use fu_plugin_check_supported() * Add fu_plugin_check_supported() * unifying: Use a device whitelist to avoid breaking devices * Fix various printing issues with the progressbar * dell: Fix a trivial whitespace issue * Do not fail to load the daemon if cached metadata is invalid * Do not store the newest release as part of the FuDevice object * Add a method to return a list of upgrades for a specific device * Move the downgrade calculation to the daemon * Make FuDevice derive from FwupdDevice rather than FwupdResult * Add a command 'clear-offline' to fwupdmgr * Merge releases where multiple remotes provide the same firmware * Remove the UniqueID property * uefi: Do not set the release version * udev: Do not match USB devices, even with a GUID set * Use the intel-wmi-thunderbolt kernel module to force power * dell: drop thunderbolt force power code * unifying: Add hardcoded summaries for peripheral kinds * Create CODE_OF_CONDUCT.md * Ensure more devices set the device summary * Add an 'Summary' property to each device * Add a human-readable title for each remote * unifying: Disable if the kernel has no CONFIG_HIDRAW support * Move deprecated symbols to a new header * Introduce an s390x cross compile target to CI * Add ModifyRemote as an easy way to enable and disable remotes like the LVFS * Do not auto-open all USB devices at startup * dfu: Use FuDeviceLocker * unifying: Use FuDeviceLocker * colorhug: Use FuDeviceLocker * ebitdo: Use FuDeviceLocker * altos: Use FuDeviceLocker * steelseries: Use FuDeviceLocker * usb: Use FuDeviceLocker * Add FuDeviceLocker to simplify device open/close lifecycles * dfu: Remove DEVO support * dfu: Remove the now-unused symtab support * Remove the ELF support from libdfu and move the code to the altos plugin * Use -Werror when building in Travis CI * Do not install the libdfu helper library * Parse the SMBIOS DMI table directly * usb: Disable the fallback USB plugin * Test for missing language translations at build time * Fix the libdfu self test failure on s390 and ppc64- Update to version 0.9.8: * Add a command 'clear-offline' to fwupdmgr * Do not fail to load the daemon if cached metadata is invalid * Fix a crash when using fu_plugin_device_add_delay() * Fix the libdfu self test failure on s390 and ppc64 * Format the BCD USB revision numbers correctly * Never fallback to an offline update from client code * Prevent fwupd from mounting filesystems * dfu: Allow flashing when the target does not specify an alt-name * dfu: Do not try to verify the element write if upload is unsupported * dfu: Fix uploading large firmware files * dfu: Include the reset timeout as wValue to fix some hardware * dfu: Set the vendor ID to the runtime USB VID * dfu: Use 0x0101 as an alias for 0x0110 * thunderbolt: move test for mock environment (gh#hughsie/fwupd#280) * udev: Do not match USB devices, even with a GUID set * uefi: Do not set the release version * unifying: Disable if the kernel has no CONFIG_HIDRAW support- Update to version 0.9.7: + 10 months worth of bugfixing, integrating more vendor specific Firmware update paths.- Update to version 0.8.1: + Delete duplicate translations (gh#hughsie/fwupd#89). + Do not hardcode docbook2man path. + Fix fwupdmgr timeout with missing pending database. + Fix compiler warnings. + Fix a crash when enumerating devices on a Dell WLD15. + dell: don't initialize libsmbios on unsupported systems. + Do not fail to start on Dell hardware. + Adjust systemd confinement restrictions. + Do not dlclose modules when running under valgrind. + Really remove the NoNewPrivileges systemd confinement. + Release fwupd 0.8.1.- Update to version 0.8.0: + Show a different error when checking for updates while on + battery power (gh#hughsie/fwupd#68). + Clarify the test in --help and man page related to offline + (gh#hughsie/fwupd#69). + libdfu: Use a heuristic for the start address if the firmware + has no DfuSe footer. + dell: Don't return the address of a stack variable. + dell: Fix a possibly-impossible-to-hit buffer overrun. + close USB devices before error returns (gh#hughsie/fwupd#73). + Make libelf support optional. + Always make sure we're getting a C99 compiler. + Fix redeclaration of polkit autocleanup functions. + Uncomment SystemdService parameter in the dbus service file + (gh#hughsie/fwupd#74). + Make all providers and plugins share a GUsbContext. + Unexport libebitdo. + Move the plugins into plugin-specific directories. + Convert the providers to plugins to simplify code and for + future features. + Add support for Logitech Unifying devices. + Add a set of vfuncs that are run before and after a device + update. + Return the pending UEFI update when not on AC power. + Move the UPower functionality to a plugin. + Fix udev plugin loading. + fix dfu plugin loading. + Disable PrivateNetwork on systemd service. + Use more restrictive settings when running under systemd. + dell: add a new method for forcing a controller to flash mode. + Add VerifyUpdate to update the device checksums server-side. + Move the Option ROM parsing to the Udev plugin. + Move the device add delay to shared code. + Add initial skeleton for Intel Thunderbolt support. + unifying: Use the actual bootloader VID/PIDs when in firmware + mode. + Allow the metadata to match a version of fwupd and the existing + fw version. + Add fwupd_result_get_device_version_bootloader(). + Fix the appstream-glib version guards. + dell: Add coldplug methods to let other plugins turn on + TBT/GPIO. + libdfu: Don't read data from some DfuSe targets. + Add the ability to run a prepare->exec->cleanup on coldplug. + Allow plugins to request that all plugins re-coldplug. + thunderbolt: Detecting new devices and add an actual device to + the daemon. + Add support for flashing the ChaosKey. + thunderbolt: add some guards around empty arrays. + dell: Adjust the coldplug preparation and cleanup sequence. + dell: Fix possible linker problem. + Revert "thunderbolt: add some guards around empty arrays". + Add fu_plugin_set_coldplug_delay() to allow hardware to + initialize if required. + altos: Add error checking when using termios. + ebitdo: Subclass FuDevice like the altos plugin. + altos: Set the flags in the init_real so they work for the + cmdline tool. + unifying: Subclass FuDevice like the altos plugin. + Include all debug messages when run with --verbose. + dell: introduce a standalone (noinst) tool to force mode + flashes. + Introduce plugin for Synaptics MST hubs. + synapticsmst: Add cascade support. + Only register the D-Bus service when all devices have been + added. + synapticsmst: Refactor away the global state. + synapticsmst: fix cascade support in the plugin. + Updates for thunderbolt plugin. + thunderbolt: Add special handling for safe mode on Dell systems + (gh#hughsie/fwupd#84). + synapticsmst: Iterate all nodes rather than hardcoding to 3. + synapticsmst: build GUID using dock type. + Add a new function fu_dell_supported to fu-dell-common. + synapticsmst: add a test suite. + synapticsmst: Fix up some trivial whitespace issues. + Fix a refcounting issue in the udev plugin. - Add rpmlintrc untill security review is resolved- Update to version 0.7.5: + Clean up PO files + Verify devices support updating in mode they are called. + Fix an assert when unlocking the dummy ESRT device + Don't create the UEFI dummy device if the unlock will happen on + next boot + dell: Match on TB16 as well + Fix a -fstack-protector-strong crash when uploading firmware + Enable the stack protection in local builds + dell: If running in test suite, don't try to get product ID + from sysfs + libfdfu: Show a warning when getting the alt-name failed + dfu: Fix listing devices using the ST reference bootloader + Show the nicely formatted target name for DfuSe devices + libdfu: Fix two possible critical warnings for corrupt USB + descriptors + libdfu: Correctly offset addresses when one zone has multiple + sectors + libdfu: Do not do GetStatus on dfuse upload + libdfu: Fix uploading from DfuSe devices + libdfu: Use the device offset when writing DfuSe firmware + libdfu: Add DfuAction enumerated value to represent a device + action + libdfu: Use an animated progress bar when performing DFU + operations + libdfu: Do not do a zero-byte download when in DfuSe mode + libdfu: Fix verification of written DfuSe firmware + libdfu: Ensure the device is open before claiming the interface + libdfu: Ensure the mode is set correctly when faking a runtime + libdfu: Re-get the quirks when the DfuDevice gets a new + GUsbDevice + libdfu: Add quirks for HydraBus as it does not have a DFU + runtime + libdfu: Match the device booloader or runtime VID and PID when + checking firmware + Add a 'replace-data' command to dfu-tool + string + libdfu: Add dfu_sector_get_zone() to get the continuous memory + zone number + libdfu: Wait for DNBUSY to be cleared when checking the DfuSe + status + libdfu: Correctly erase DfuSe devices + Enable hardening flags on more binaries + libdfu: Correctly set the element address when uploading from + DfuSe devices - Add pkgconfig(gmodule-2.0) BuildRequires: Align with what + configure checks for. - Add pkgconfig(libsmbios_c) BuildRequires: Support dell bios. + Unfortunatly, until we have fwup packaged and enabled, this will + not work. - Add disabled pkgconfig(libtbtfwu): For future thunderbolt + support.- Update to version 0.7.4: + Add a fallback for older appstream-glib releases + Write the ELF files with the correct section type + Fix libfwupd self tests when a host-provided fwupd is not + available + Add dfu_firmware_add_symbol() + Add the Altos symbol table to the DfuFirmware + Use the symtab to set the VID/PID from Altos IHEX firmware + images + Show the human-readable version in the 'dfu-tool dump' output + Allow specifying the argument to 'dfu-tool set-release' in + major.minor format. + sections + Support writing the IHEX symbol table + call + Load the symbol table from ELF firmware + Load the Altos USB descriptor from ELF files + Add DFU_CIPHER_KIND_RSA + Fix a possible crash when uploading firmware files using libdfu- Update to version 0.7.3: + build: Fix gtk-doc build when srcdir != builddir + In get-details output, display the blob filename + Ensure the update ID is set when getting local firmware details + Use a private gnupg key store + Add support for installing against multiple devices from a CAB + file + Use the correct firmware blob when installing a composite + device update + in get-details output, display update_name rather than Unknown + Device + statements + Don't make failures critical while checking versions or locked + state + Show a more detailed error when installing firmware on the + wildcard + Add Dell TPM and TB15/WD15 support via new Dell provider. + file + Allow blacklisting devices by their GUID + header file + Add XPS 9250 to Dell TPM modeswitch blacklist + Only display flashes left in results output when it gets low. + Add a small library for talking with 0bitdo hardware + Add another compile warning and fix up any build failures + Embed fwupd version in generated libfwupd and libdfu + documentation + Update fwupdmgr manpage for new commands and arguments + build: Fix gtk-doc build when srcdir != builddir + online not offline + Get the firmware version correctly from 0Bitdo gamepads + Switch to the Amazon S3 CDN for firmware metadata + Fix writing 8Bitdo device firmware + be updated + Show the vendor flashing instructions when installing + Split out the DFU file formats to separate files + Add fwupd_result_remove_device_flag() + Add FU_DEVICE_FLAG_NEEDS_BOOTLOADER + get-updates output + Allow providers to export percentage completion + Add fwupd_client_get_status() + Handle the 8Bitdo bootloader in a better way + Show a progress notification when installing firmware + Add fwupd_result_get_unique_id() + Use the SHA1 hash of the local file data as the component + origin + Use the correct define prefix for FwupdDeviceFlags + libdfu: Fix hang when parsing corrupt IHEX files + Add a set-target-size command to dfu-tool + Support the 'DEVO' cipher kind in libdfu + Add a set-address command to dfu-util + Disable the Dell specific code by default + Conditionally enable all providers based upon what's installed + Add a summary of providers that are enabled from configure + Do not use the deprecated GNOME_COMPILE_WARNINGS + Ignore devices that do not add at least one GUID + Do not attempt to add DFU devices not in runtime mode + Save the unique ID in the pending database + libdfu: Add initial ELF reading and writing support + Add dfu_firmware_format_from_string() + Normalize the DfuFirmwareFormat enums- Update to version 0.7.2: + Allow devices to have multiple assigned GUIDs + Only return updatable devices from GetDevices() + Add fu_device_get_alternate() + Allow metainfo files to match only specific revisions of + devices + Re-read flags for a device after a provider's unlock routine is + done + Test for a locked device when trying to install firmware update + Enforce allowing providers to take away flash abilities + Support returning multiple GUIDs from GetDetails + Add a GetDetailsLocal() method to eventually replace + GetDetails() + break + libdfu: Add DfuVersion enumerated values + libdfu: Show the DFU protocol version in 'dfu-tool list' + Only claim the DFU interface when required- Update to version 0.7.1: + Fix libdfu CRC check for big endian architectures + Add dfu_image_get_element_default() + Fix libdfu CRC check for big endian architectures + Fix big endian issues when reading and writing DFU and DfuSe + files + Remove non-interactive pinentry setting from fu-keyring + Set the system's DMI product name as the DisplayName for UEFI + Re-order output of get-devices to be easier to read + Make the device display name nicer + update version + Return all update descriptions newer than the installed version + Add summary and name field for Rival SteelSeries + Fix a critical warning when restarting the daemon + Add a 'supported' flag to the FuDevice + Add fwupd_client_connect() + Add a 'monitor' debugging command for fwupdmgr + Add device-added, device-removed and device-changed signals + Match the AppStream metadata after a device has been adedd + Re-match devices when the AppStream metadata is updated + Show 'Unknow Device' in fwupdmgr when a device name is not set + Set the device description when parsing local firmware files + Add support for a new device field "Flashes Left". + src/Makefile.am: reshuffle so enableable bits are only + referenced when on + Add support for a --force flag to override provider warnings- Update to version 0.7.0: + Use g_usb_context_wait_for_replug() + Run vendor plugins as required + Add a plugin for SteelSeries hardware + Add fwupd_device_flag_to_string() + Return the device flags when getting firmware details + Show device flags in 'fwupdmgr get-devices' + Add fwupd_trust_flag_to_string() + Export FwupdUpdateState in libfwupd + Export FwupdUpdateFlags in libfwupd + Add FwupdResult to libfwupd + Add a self test framework for libfwupd + Add FwupdClient to libfwupd + Use FwupdClient from libfwupd in fwupdmgr + Use libfwupd inside the daemon + Emit a FwupdClient::changed when the daemon emits this signal + Rename some of the new libfwupd API to align with the D-Bus + names + libdfu: Fix up some NULL/FALSE confusion + libfwup: Fix up some NULL/FALSE confusion + FwupdClient + Allow other checksum kinds in FwupdResult + Allow SHA-256 hashes when verifying + Show the checksum kind in the fwupdmgr output + Add Alienware to the version quirk table + Do not use /tmp for downloaded files + Add fwupd_result_has_device_flag() + Do not return updates that require AC when on battery + Connect to UPower at startup + Test that GPG key import actually was successful (or didn't + change a key already in the keyring) + Use g_auto() in FuKeyring + Return errors of the correct type when using libfwupd + Allow overridding the location of the pending database for + test suite + Allow overriding the location of the provider offline files for + test suite + Validate that the dbus system bus is available before running + libfwupd tests + Update README.md for changes that have happened in the project + Add some basic explanation of how to use fwupd with various + frontends + Split out the libdfu-devel package + Revert "Allow overridding the location of the pending database + for test suite" + Revert "Allow overriding the location of the provider offline + files for test suite" + Allow the test suite to run in %check + Generate gtk-doc documentation for libfwupd- Update to version 0.6.3: + Require AC power before scheduling some types of firmware + update + Install the hardcoded firmware AppStream file + Correct the BCD version number for DFU 1.1 + Add an unlock method for devices + Add ESRT enable method into UEFI provider. + Only read PCI OptionROM firmware when devices are manually + unlocked + Do not use deprecated API from libappstream-glib + Ignore the DFU runtime on the DW1820A + Export the attribute and quirk values in libdfu + Show ignored DFU devices in dfu-util, but not in fwupd + Allow defining update vfuncs with no runtime support + Revert "Allow defining update vfuncs with no runtime support" + Add a simple plugin infrastructure- Update to version 0.6.2: + Add 'Created' and 'Modified' properties on managed devices + Fix get-results for UEFI provider. + Support vendor-specific UEFI version encodings + Move quirks directly into a single table and file.- Update to version 0.6.1: + Only dump the profiling data when run with --verbose + Always persist ColorHug devices after replug + Do not misdetect different ColorHug devices- Update to version 0.6.0: + Add support for updating USB devices with DFU + libdfu: Add support for DfuSe firmware + libdfu: Generate gtk-doc documentation + libdfu: Don't rely on specific hardware to be present + libdfu: Move the VID:PID checks from the tool to DfuDevice + libdfu: Use a custom error domain + Use the same device identification string format as Microsoft + libdfu: Fix crash when setting a target size + libdfu: Allow setting the alternate settings in DfuSe firmware + libdfu: Add a merge command to dfu-tool + libdfu: Allow choosing a different alt-setting when downloading + libdfu: Fix a crash when setting a NULL image name + libdfu: Correctly implement auto-boot in dfu_device_download() + libdfu: Check for extra args to dfu-tool convert + libdfu: Call the progress callback when doing detach + Ignore the DFU device detach:attach when verifying + libdfu: Require a --force flag to flash wildcard firmware + Use new API available in fwup 0.5 + libdfu: Make the element address 32 bits in size + libdfu: Support the ST-specific bitCanAccelerate + libdfu: Only do a Detach notification if we're actually doing to do it + libdfu: Use the progress bar for all uploads and downloads + libdfu: Improve the output of 'dfu-util list' + libdfu: Support download and upload to ST DfuSe devices + libdfu: Fix multi-interface devices like the Neo Freerunner + libdfu: Add a pkgconfig file + libdfu: Use signals to propagate device state + libdfu: Add a context object to handle device hotplug + libdfu: Add an example showing GObject Introspection + libdfu: Do not ref DfuDevice in DfuTarget so the auto-close + logic works + Close DFU devices as soon as possible after the transfer has completed + Emit the changed signal after doing an update + Rescan the DFU device after replug to get the new version + libdfu: Add dfu_context_get_device_by_platform_id() + libdfu: Add dfu_device_get_runtime_release() + libdfu: Add dfu_device_get_display_name() + libdfu: Fix self tests after recent API change + Split out the DFU provider as a new file + libdfu: Copy the platform ID and invalidate the GUsbDevice when removed + libdfu: Accept multiple spaces after the DfuSe sector name + libdfu: Verify the GUsbDevice is set before using it + libdfu: Remove the weak pointer when destroying the DfuTarget + libdfu: Fix dfu_device_wait_for_replug() so it can work with a DfuContext + Export the AppStream ID when returning device results + Rescan the DFU device after firmware has been updated + libdfu: Handle cancellation with ctrl+c in dfu-tool + libdfu: Add a quirk to support DFU runtime-less devices + libdfu: Add an explicit 'attach' method + libdfu: Add dfu_firmware_get_image_by_name() + libdfu: Make reading and writing to targets easier to + understand + Fix compile with --disable-shared + libdfu: Display all the files shown with 'dfu-tool dump' + libdfu: Fix a few crashers found using afl + libdfu: Fix another bug discovered by the fuzzer + libdfu: Add commands to encrypt and decrypt firmware images + libdfu: Show better device errors + libdfu: Add DfuCipher which is a property on a target and a + firmware file + libdfu: Add support for the draft 'DFU Metadata Table + Specification' + libdfu: Only enumerate the DfuContext when required + libdfu: Fix several reported crashes in the inhex32 import code + Release fwupd 0.6.0- Update to version 0.5.4: + Fix compile error against fwupdate git due to dropped + functions. + Use strerror() when printing errors from libfwupdate + Use new API available in fwup 0.5 + Release fwupd 0.5.4- Update to version 0.5.3: + Avoid seeking when reading the file magic during refresh + Do not assume that the compressed XML data will be NUL + terminated + debugging + Use the correct user agent string for fwupdmgr + Release fwupd 0.5.3- Update to version 0.5.2: + Ensure D-Bus remote errors are registered at fwupdmgr startup + Show the dotted-decimal representation of the UEFI version + number + require appstream-glib 0.5.1 + not found + When the version is from the 'FW' extension do not cache the + device + Support cabinet archives files with more than one firmware + Add the update description to the GetDetails results + Add profiling data to debug slow startup times + Fix verify-update to produce components with the correct + provide values + Clear the in-memory firmware store only after parsing a valid + XML file + Release fwupd 0.5.2- Update to version 0.5.1: + Fix the error message when no devices can be updated + offline update: Use glib api for for reading symlinks + Release fwupd 0.5.1- Update to version 0.5.0: + Do not merge the existing firmware metadata with the submitted + files + Raise the dep on GLib to support and use g_autoptr() + Do not reboot if racing with the PackageKit offline update + mechanism + Release fwupd 0.5.0- Update to version 0.1.6: + Install fwupd and fwsignd into /usr/lib/$(triplet)/fwupd + instead. + Use the new secure metadata URI + Update the offline update service to invoke right command + Don't apply firmware if something else is processing the + offline update + Remove fwsignd, we have the LVFS now + Depend on appstream-glib >= 0.5.0 + Add application metadata when getting the updates list + Simplify the version properties on devices to avoid complexity + and bugs + Release fwupd 0.1.6- Update to version 0.1.5: + Allow fwupd to be autostarted by systemd + Sign the test binary with the correct key + Do not pre-convert the update description from AppStream XML + Devices with option ROM are always internal + Prefer the GUID from the firmware than the device + Allow no arguments to 'fwupdmgr verify-update' and use sane + defaults + Add the ability to remove a vendor on the LVFS site + Fix validation of written firmware + Move the verification and metadata matching phase to the daemon + Add a simple config file to store the correct LVFS download URI + Make parsing the option ROM runtime optional + Add a Raspberry Pi firmware provider + Use the AppStream 0.9 firmware specification by default + Generate the ColorHug test files at runtime + Release fwupd 0.1.5- Update to version 0.1.4: + man/Makefile.am: Add --sgml to docbook2man invocation + Make statements about storing private keys stronger. + Provide a way for clients to add new firmware metadata to the + system cache + Fix fwupd-offline-update.service + Revert "man/Makefile.am: Add --sgml to docbook2man invocation" + Add a Udev firmware provider + Extract the version string from the ROM in PCI devices + Add a 'verify' command that verifies the cryptographic hash of + device firmware + Make the ROM parsing more robust and add self tests + Get the version number out from Intel VBIOS too + Provide a way to dump the option ROM using the command line + build: gusb is required even without colorhug + remove unused variables + Do not return NULL as a gboolean + Fix Intel VBIOS detection on Dell hardware + Do not use the subsystem information when constructing the fake + GUID + Actually parse the PCI option ROM + Accept multiple files at one time when using fwupdmgr dump-rom + verify run + Add a 'verify-update' command to fwupdmgr + Fix trivial bug when parsing firmware versions + Keep hitting the hardware until it gives us enough ROM + Make the version parsing more resilient to corrupt firmware + Fix the example .inf file to reflect reality + Fix ROM PPID searching to work for all ROMs + Move the LVFS website to the fwupd project + Add the ability to create detached signatures + Allow cab files to be saved + Add a simple signing server that operates on .cab files + Automatically download metadata using fwupdmgr if required + Don't call efibootmgr after fwupdate. + Associate the contact email address directly with the vendor + key + Use the actual LVFS GPG key + Allow running fwsignd as the non-root user + metadata + Do not merge existing LVFS metadata + Do not use the file hash when storing the LVFS submitted + firmwares + Move GetUpdates to the daemon + Change the DBus method for installing firmware to 'Install' + Allow installing an offline UEFI update without --offline + Add a 'fwupdmgr update' command to update all devices to latest + versions + 'update' command + Increase the size limit of firmware to 50Mb + Only sign files when the entire file has been copied + Fallback to offline install when calling the update argument. + Reload appstream data after refreshing. + Release fwupd 0.1.4- Update to version 0.1.3: + Coldplug the devices before acquiring the well known name + Add an UNKNOWN status so we can return meaningful enum values + Run the offline actions using systemd when required + Get the firmware version from the device descriptors + Added syntax highlighting + More markup + Support OpenHardware devices using the fwupd vendor extensions + Move boolean properties on the device to a set of flags + Release fwupd 0.1.3- Update to version 0.1.2: + More markup + Fixed typos and markup for executable + Add slovak translation + Add helper code to validate public key signatures + Decompress any firmware signatures in the .cab file + Verify firmware if a detached signature is present + Show the firmware trust status when doing GetDetails() + Only allow signed firmware to be upgraded without a password + Add some guidelines for vendors to README + Small grammar fix + Extract the .cat file alongside the firmware + Release fwupd 0.1.2- Update to version fwupd_0_1_1: + Do not crash when there are no devices to return + Add a 'get-updates' command to fwupdmgr + Add and document the offline-update lifecycle + Create runtime directories if they do not exist + Create a libfwupd shared library + Export the status as an enumerated value rather than a string + Release fwupd 0.1.1- Initial package.s390zp32 1620313034  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopq1.5.8-1.131.5.8-1.131.5.81.5.8 fwupd-1fwupd.hfwupdplugin.hlibfwupdfwupd-client-sync.hfwupd-client.hfwupd-common.hfwupd-deprecated.hfwupd-device.hfwupd-enums.hfwupd-error.hfwupd-plugin.hfwupd-release.hfwupd-remote.hfwupd-security-attr.hfwupd-version.hlibfwupdpluginfu-archive.hfu-bluez-device.hfu-cabinet.hfu-chunk.hfu-common-cab.hfu-common-guid.hfu-common-version.hfu-common.hfu-deprecated.hfu-device-locker.hfu-device-metadata.hfu-device.hfu-dfu-firmware.hfu-dfuse-firmware.hfu-efi-signature-list.hfu-efi-signature.hfu-efivar.hfu-firmware-common.hfu-firmware-image.hfu-firmware.hfu-fmap-firmware.hfu-hid-device.hfu-hwids.hfu-ihex-firmware.hfu-io-channel.hfu-plugin-vfuncs.hfu-plugin.hfu-quirks.hfu-security-attrs.hfu-smbios.hfu-srec-firmware.hfu-udev-device.hfu-usb-device.hfu-volume.hlibfwupd.solibfwupdplugin.sofwupd.pcfwupdplugin.pcFwupd-2.0.girFwupdPlugin-1.0.girfwupdannotation-glossary.htmlapi-index-full.htmlfwupd-FuArchive.htmlfwupd-FuDevice.htmlfwupd-FuDeviceLocker.htmlfwupd-FuDfuFirmware.htmlfwupd-FuFirmware.htmlfwupd-FuFirmwareImage.htmlfwupd-FuPlugin.htmlfwupd-FuUdevDevice.htmlfwupd-FuUsbDevice.htmlfwupd-FwupdClient.htmlfwupd-FwupdDevice.htmlfwupd-FwupdPlugin.htmlfwupd-FwupdRelease.htmlfwupd-FwupdRemote.htmlfwupd-fu-chunk.htmlfwupd-fu-common-cab.htmlfwupd-fu-common-guid.htmlfwupd-fu-common-version.htmlfwupd-fu-common.htmlfwupd-fu-device-metadata.htmlfwupd-fu-efi-signature-list.htmlfwupd-fu-efi-signature.htmlfwupd-fu-firmware-common.htmlfwupd-fu-hwids.htmlfwupd-fu-ihex-firmware.htmlfwupd-fu-io-channel.htmlfwupd-fu-mutex.htmlfwupd-fu-plugin-vfuncs.htmlfwupd-fu-quirks.htmlfwupd-fu-smbios.htmlfwupd-fu-srec-firmware.htmlfwupd-fwupd-client-sync.htmlfwupd-fwupd-enums.htmlfwupd-fwupd-error.htmlfwupd-fwupd-version.htmlfwupd.devhelp2home.pngindex.htmlintro.htmlleft-insensitive.pngleft.pnglibfwupd.htmlplugin-reference.htmlright-insensitive.pngright.pngstyle.csstutorial.htmlup-insensitive.pngup.pngfwupd.depsfwupd.vapifwupdplugin.depsfwupdplugin.vapi/usr/include//usr/include/fwupd-1//usr/include/fwupd-1/libfwupd//usr/include/fwupd-1/libfwupdplugin//usr/lib64//usr/lib64/pkgconfig//usr/share/gir-1.0//usr/share/gtk-doc/html//usr/share/gtk-doc/html/fwupd//usr/share/vala/vapi/-fmessage-length=0 -grecord-gcc-switches -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector-strong -funwind-tables -fasynchronous-unwind-tables -fstack-clash-protection -gobs://build.suse.de/SUSE:SLE-15-SP3:GA/standard/6a6b6901a6dfd913060eb5b34f62e61d-fwupdcpioxz5s390x-suse-linux    directoryC source, ASCII textC source, UTF-8 Unicode textpkgconfig fileXML 1.0 document, ASCII textHTML document, UTF-8 Unicode textHTML document, UTF-8 Unicode text, with very long linesXML 1.0 document, UTF-8 Unicode textPNG image data, 16 x 16, 8-bit/color RGBA, non-interlacedHTML document, ASCII textassembler source, ASCII textASCII textC++ source, ASCII textPRR R R RRRPRR R RR RRRRRRRR ,kmkvfutf-845c8d5ca8fcc729b15e927630fbed7f6b7f76609d6b6b264df4aeec7d37023ad? 7zXZ !t/P] crt:bLL {xvĖ԰-}A#V4 JЌw3̏__u qcT]T8*d6-TY)"sZOwe'f⒕vbkba#Ɋus4LdoW_Ҳfx=8HJ/IЬYH^Z=( zkZ L㘣!CPZx"AO0k-t)WG l&Ƀ TfT}Sh}yJ3uXj#; O@P}`q1nU"ݓ&zgrT tL-܀: $Cl70f6avGߛAF0pTӳyUȵwiGE_Q)crYo9,,gZ#ļV{W|+uUW3‰-# Ԏ8[} bHV Z>fUf6G,9X@tG1˨ LMX1qNHH %`K^ Ziq$3nTuD<ϙ<.?f;)fUJ~ʹM(gΥ>psG]*R~jd\8,Wn|MMi.ߥk I&fZam^Y2((36H)9һ2HE!!Wa%<PWy*e +FrxraG,B [ԏ~c2(7%V /  dS7j,p(ݫ>zO /EPo\K ReIqQXF}PDΨh!xbOcg{|6>o;"vφ h<>J 0bey{./1%CUܒTN1$&7xXЊbZXy{8WĦa<Ì _lsY_^çUn @6PYE:oyhKMWq8V>1IܵBPC.1?vOS)=w@VC@5 +SFBt ;8wu+:d.&wjc߅|vA} ̊4H6= 8<|t({aםނ1䢤3j[+z1>!T`UE.5gbkpϋ_7%ʝ=OKʜuܕ [oO?܁Ԣ7Y2k6Rk9N^bhY?Lpd:4 Efx2tu(Gj&ԣf:ʪhV]6fu7dh5|hŢRt304=0Wv}> ͒*Nb7Or/i_1/e[h'4?-7Qe8_)- e݊b=q ??'*š0 ~ nM&`)+&N - JiU96(k{br(2CPCgR?Fkk4U1/PxoLMdZ -9X!'' P]tkNCFUȦ>ה0R8^` IeFפjn2mWz&-g",v;aRHliHʦ1B>9. UZa/;!ITv7 "JD\ w*8ߖtJON?nu yfh&5b20+t:5KcfBaJq/QY'xc$0(ё"׌`i;+[ (+tOZ  +h%}{ [ܛRy(}CYN#>Mae%U5DY0gjx7 R4 nggT |fR #]HQk;Ykv́HF?%_1UMo߽1E|jNu&z?k"8BvR;fs&kbX.dzZNL7@8jcx_OT1$oZLK96fSsL:PX-L*@ ;# +,g;k=S1 MTR~XڊmBտ~JBG/QYC~L2x~*d,@W!}93^/:`r/rZB5uvFw kV%;4} ^ o#$OZάk 9aEzA4>Z柊; [fj'g%H"Vβ0Ԓ*(i`p0OY+wRl;l}Tgy%(K?e%+O0,b($ߝ A H)oHHKm_d|LHbHE4~;5#z1 tU Bp3\57UB$~Ř3#>l۞l`UoKt7cyJU/54"O헱s!e&m| T7>.&&qL\z8&_?>)н!,<"X#a6Ƞ4f ^2[U+8NvE^ݑFY Q!\9Ƌ> E`zB_ųL6Z=ּj|>-e)ԴImOxՉ5LuN#QAYm^pm%Ȳz'/l&m@+pl<̝cpjryh>]%WsF2Ծj[2fb.hoҒ\ޗ`Prj8Np@>m'.X$($qLuKS}!bTIcجg|.֦ſlnnɶ\)&O.'5SW'8ȑZ~W{DeX}C z fv!>@{2vo`qz=6tbO i7 k_T6%mQ&Skr]i{'a 6;6,Xlț!>"Np^q|M>H ce8%!-viif?[#Ε*e?]#0YوQtZB/* =L=$0vR-HntybKK|]P TSc:ƆAy+ln.RBbE+it 'fc sv~GJl02Z@9GgK=֌Z%]AIHɧeqԓc.ZLiQ65;(0"k}A"CTMlfE<½ez/sQ lPi:4)Blcݱ0{\W<&=[FㅺF 4]Y#=N2iի>fC ëֵ&|K2!MհUj;7V0!*^ Ggq]_ 8p-/k_"n,YXQZ-< ]2=~95'dBO6FOSd.n?*)m*vԎ45ȋP~y`F_3Y|hu\oC?Iz!0gLJ|3h+7ԥיٖxs P\UnJMDe^<xiAݷ-2°B[ v"ʖ^F/JC`gk<':oz7rRmd8dZi|pNi x&;՟m6eNU~,:-2Pcd-z z@^"A1*֊ȘC*7r18T"f.X3!:[tF'tf}]wvtm#,(14X{J9;>xl|iо B2:Im"\nrg*Ir>ݹ:#J ./Iځ6d C^:;0qao%Jk^꠾[ ?1=DQ!Vi 1p |-EO/ r/KIm,Y]3sJ=JEK3#yF=q ,]_ Md?LRԲ+oFtMpa/ic.d2Kgt^x td(S ]?4GVZ+ wr=GS3<`ɿF RcNeVplИR KCf,r"{v0r-^:G={~@tqAѥZ=K% zꗙzI;0ALIŤݙցSl4]]_o|iu:͠kmUyk#0gycdRɅ S6zs\G02y=\_'G~% #ylQӤ)Nz+D Ju Y*wM<=MzB3|4HY EXߢ 'Ѥ80׬V_7+N_DahW/u)JXHIR%/[R37lׅʈe0CRfN2Bz^[N)Dv_U9&«}6q,H+$-m^V IRaݳub;q =/zZ=H _hO'" E=6I{,:67B7š` {;HAK<|#OolV4F .ꛝ7%?QBcX#(=߅H>8qȿv-/:)q*]NWҟU Cni]qJ;+byw-,!gg͞eIJRLPv>V8'iLK?d Mw۟OPPaG`"hOBCήفudD5*=W;W(AN{QmeD'8fQ7.AkV2~C'b`Ag9FHvYY~4AIACZ,JAz-Q<uXKZ$5r̽8Vttbzcf00a)ܐPp8𡮆9a@0q\鵨ԪpadvBȫSOטs{G KQ*Hh53sJ؜ݶnoF>};ĈԌK]3Vx?v؂{GimL@]k-H^80_XJ\v" 뼚|zkOLxg܈K hݒ&d GIBBz2ߴNh/bB4g6Q!刌Z߈&|VU L }}mB%2^\ ?UJxԝpM,!~\KUt%8+厗Ȑwu,]#nHb?oAFrN OmlMviX3-SKQ\p &JKƲ>X"|*+ S 93}cMo>qg. tISr=iaW@OR^?#{YaKZݗ{[MenUU[&%;fJ* LiB36?OQJ;$VbL57t ;5  m2{T3K>|kiZFء{6 e?ȡI]dr+f1[Ӆ 3.w;n?yzEDB|M5>C5fϢn x

΢.!q㑿lLkx(9EyUTAqgp KZGkwZQ!WZN63 X̕˯|< GrmZ.9 nV*5J^w' cqiv21nр|AXZq! %_-` )cMmW(7sdɌ=rQse 0 7 Yl9qo@~A*L9]uWC9h$ty!T660<*E2}%ّR2+u7/6Co;=D.%a?7SR^p`,gK!ޫ7tb 0*y8x%&rWe'$mV;C3vo&nQrS~ek[r\nHO[.%b$5YĠ;c>IQO"|%~0ǙbOi~$@JoeK)LT{ـ,&pHs"9&]C0J>Ұ%%SN6є9mٛL590'DpW6]Vթ-9,#q{F7.y8d:HXe&[M߉gcoMWqsআ:{O"@Ѿ:grnܬ.)Mא}GVYX&'a:[M2Zn qth~.<ل9VW82y:~ek3 sn#9#RWq0Z4A;ظaSa+ tnA.Es\*&<^9y<]i_)!UufWX%Jufb-]=2+Q@jvim5&njWp!>΀d0[qμP Ke`g'W@' L؋wrBBBA$86z:iB%:0y(9 HplkkMCR>){ɳi"7hBŽ\/tӕ?LƯôns#ѲR]B.ELMC}L{mŘ u4 \ [ CսuL\aG&+UӰ!a ꒨rc_ B98zTqDU^Bx8 z/E [&ꑽ2_ݥ':TM;c3qcL)"M截V44}S95XV@w};TdX|,1$aDWzu^ !c\;b%+2MZ9%#G tj$ 8vetZA<o5b \ZH?WRnzS_yUrP· `f+z q]kG(ۇ\FtЉDdyxy.DNB9хѾ`*w削h $F5V_R˜puPCLj<3 7 XA4+!i0a<=e ~.uSqS!@r`Ӽo).<|cȞf8RJ縍SG k A4 pML%%wC$ׇ*il0L7OM )tAsK16f+,ɰ̴?Yr\VP]  A_3lBџJq8q'^1Y`jN})ӉCkJ#kZH@ [Td0{%f;RNHLa .!._]p!QhQ4DN$ȗ5ӾYksq2~(lɛ%U+[֟c}11{/ #-U{|ԃ|P } J/kĐb&~瑬N|¶b !+xu DD-E2wz.}֯Eex-G[+Y"iOĬ 1Bviӆ+]S#=j|tA‚cO$IՎ?|. O{\YٙFBSͻ\#Vd->=i7t6 Kgs1αlws`)pſ$w!uX DHDK>d܋~BkQ{vBI p\<Ņ ܍i=avDV*?Փm..u? @zDҴ8Vl3Ey9KvSâQ9RvL{\3]lׄ7?2 `X_JD4Ru>\Xn0A??R< sYv8Q8`Yʼ_U>ti~B%k2S{({a熅/Tox44d{WHZ5 <W̰DkKsqxs-@]<|-5OU< Vz4~7]LGڏHk h4Ɋ 9Rfy^d[u#/-L o2j~֗M̫mbC;c [:3.=)p,_c%T "{pjZRGgz- G(A[|4Hbګn O],Hzi#L5i1˛zm"Q&X_'~Tw!)(SW0z8muV ɠASˬ,f^({c&q춎3^lG;4aSpWDZԧ u/ қ=<^oT8͕WC'F5NSK^!Vֲ9>7⣿I۰+Ø~j7 fS"66 Zi"7ܜsIiY?A[O_)^AXVW?ƥ;ks+ǁ^{̽졺(}j&:_Tٲ0zVfucͧrCR;zÛ}IZ?S_(V0ZYy.?B#t7U!AzO'IDj|CCt?̓{ z̍ Q/6'euX<vR!=Mv9 n+CT8bbHF*9p>f:%uƣA.A ~r! 曃H^ \L3`Oď`1߶27/ k+gEaEEHDF s=˚qHOt1,bF8չc01lṘ >"RZ`j/01uta<B2VsɇUuo骪b@Aje]F識m(qA7M Bz3%w AI|HQ.&7BHh zt$ݖZsϡE.SGMޢW.!^k@*X!ef+lEaw F c>gzVхu;6q5;"Y0[ev)-úY9X*ej~~xe0EWɈZSJꏵv.Othd<SƝ$UaJ9uP.K˕pvc#Yݦ~Y2%*BFjm1 GrS>q7-;ȼ? qo3^)k&mkv#.gٙ_c)7zAй o v[º"ԍEL?w$WU'g~t%ZSO}N;*BY@7JKs W~ ݋vd l:g5a@(_x7 -,HUֆ;3YO;"^Kva5fg_ߤRSy~@t#:sWd9.xDY\GةL8 LrPQNGNVD|bdk^|UoҞ.{M;je]@xp5NpȀ~8+e3 +2sLjccbx!8$Qo>K$$̉+DTl{J ]L@Qϱ7lZL{jcw 1_q7)Gy4 MN:n~?}1m/< :-{#e8ugdjȏ+>+9?MTX f_A-ބDž_~5Zš(:͇^/=mJt.,%72Gpfs҆M|-DƚHl0f C[w8|_w ![NQC(Q="!4ujpP2Uʇ+=(^78k=-f gCgFF ?œb(t[w4ʈM/xPEz@(LG/Lcq.K#l#7C孧<h] Эd4r:WdqBd'&GSf'0Gû>3^.c vWC|[ryLoPU e'f~@mWG9a+M02*@u%O 9k%L^厱$PfLvCނ7;v:6vdd{`Cz#zE݂Ev%}>c*'y>Z@īn.=IzDDZZu`ڢwNFh>T().;twMꚄ$] rxxdx{ڌkE.Y $lH$44hv^mKɠms,K@ ֮`^[IJe$)%F8t*o%͵ƌJ>T$CǓL{dDNk?4,b,f 3 :КB]g$|~|Lɇ?Q>e R)y>Yg]O,aW,)$>ۧyB%W'àcZBrwZvVN5yl$;Ob̦Yb ȅ "g%#ɛOP6u毞yE רʒJYcH `F11fw+XptIeF)oJaМJڂ RqH&^4%žqX9[Gp@Yyx1f6\d.*skoJןk{>6d탬4 'b 1/ )yzX#>V20 qjYyd4;['a_NJHlNtOhL՘YAD(h E%Yh]f!~ۻiwg,78]R^nL%'*tK%7U;CX MR,%\Hoܔ"-w ʼnѡ!Eg⋃ʑ ;sfU mЭ*,hhY6 "R pNԟ+wmA] G@dLJkWne+<6hb!?zS ܈79b<"9XL8ӺFWFT*aI`k|6ۉ^^?s |.$A}(Paggt] /DtȾA2aU[w?<rszV Aͭ 7_>T~ygl; afOyZ(1Q}l2lL~ț> L!r"bO$ZG܋>-4 CU`ɍ頙̛7`Gyhu]gy&§N@6MR *IN эQcKj0lH ГYy87"Ԟ+U]oQ`BCobum&mgFA8 8w.0tsFc dVN"Xk? A,6 Ljr4WxeɤIGHHܷʕjϴY-#M ^i-H7A)W!<}7V2@a;''l $Rx0|tC0Zilw@$DERӍE~jhQC%SMzZb]>Q{Xzu5 Uqu ndmOA$js\ ,=][߯B"=g5L $+i-uquGlZh]`` (4Hl4ADVy]`19oDKSꚆxZʓMeEU4))uwgI8o+M~"Q (zJHVvQ6_gL^tbd$%)*X×϶8kbyxMX[\hkZ,OJN_>&Ag)XM2ڗ _0},ӗBDE%摭>cRiEL` kN>88 fF6yڀe$Ju) \|TG=/Bn,(tT %A')qg9N:q:s}$Uu(_}'uQsUo⩂{oTE"RQ;B8O5X#yw%K.'ji_PGc+ ĴYmg_<6@aHbS:$r /ra D܅1$a*g.Le}\ʼb pk"TqQsY0Qe9hSk1YS+ SL t=^6yu<$\F 0UQ?آ-;w񜌟d  M{ 8Qև}Ysn@L%=<0+p WKfA!3Vаqjyz Ge9C'Ccذ!Vj$؅*U0O#C,\\ܹz'OcN65ʉ|gy,o)L\VR#ἃ{">%odFUӟِz\zX%h qU8"*ؖdl:J[!Q- N\PG%KSJ_^Pt.j'-$Fd ̧9r5:x2GIT0HC-7u3 D>nAs#9+D80*$tWf%_t.C)Q;1|mI>0qT78pLHBA!Qތh%_!~jx9ܵ;EU_Cd|oH]&"vD>xYA9h!cgzV;l!L ߝdcYڈ|b ( hn[)׵'qt4ղ2g3)E1|6eGNT (`?(kvWgɄ9&wӒ]n D gus9I ^ѰDUq:yWeՆmhOep>o*U=d"}3BTo>{VdYEzE{h|^[c\!0W[ob:{=19xY1O ' ߌuTa>:! n*}6qdJMD28yg(Hm..Ү+o'M^uFRʁZuEv KjtRmO|l6[1$F0h3 cu`4I3㼖cpq9V?&7*p5|;5S&9^ şY¾cuсL|wei|z~8u 2X S:.d 8sDoLf9,i ہ!/p/0:t3q1.V7xQ>:+31c}yU1eaeVJ$̸đqfN捿Z1n|"Ȗ3 h-Y $TIexb2"ýH8T݇+⢂MVOzBnĞo>Jur;'&5X\->NO((?X9 Cv &p'ȜCƗZjc e//--2sIXեT&AH}Lh§c ^d HVx˪TcطaHffYE|.rt@z˰ (߂(TKUE?v;I^^k] ˄{ewכ47,bȔ7e;[p eJ"5ī+eh/Kbdy3V u+1ݪ'JTݞ('?vHx7Pd,psI~Gga1N{2=%cJQ%]JLXeb 获]M@bEFQ,lQyOboF^9g-H8wCP]#9"XYـb6UOlW&0|I=$JͲY4 ) h}ƔM 'SA'X,Fk5#TA@ȔMDsIS)J8wEEߋz6;C{tiM=M*g4[OSw{wEb35xtkGKz*$bwa1;޸ѹSɣ^I1-5 kA%{QdtyQٗTD~2I4sܠ[)mǟ{LT[0{7~Kj5!䃩#q > mBb~!D1)2pO5嶷e[xpVJbZ`vB* 5XW HtQ4g ~ TS>gtgpmf1 pqV$b_Pr6pF7:$E۷bA T&gǽ#?5+5Fzk$']fz9 5S*ʹ-2PCW? :Yle#3rg)^No;>FվkN{SaĨ2-WU?dz'S•CS ї}]W {^HZ/v)YWr<XLjSVwt9ד$:ў#٫ fd'\n y.UpAed?7HRp.?R'$B׎A |m%}:ܝ#BXVQ$FI ` m< l4 4hwt,Ff@'M4OրB`AugD֙""*G`FۨB*@MzGt,irxk;2j1oL7{3JgB܂М.ی0٠BAbM`.c@׿F.-p܈-CHUA6;\  `ތ6dX $EՈ\UB׷C$ EJ,ij^DULFy6Q|ohļXJlX 'i"+] /̉TGňF^'(I]{Hކ{圛kmY2A).Pj K*~\76pKN?}HQYAYl˶.3Zoa$u z]D#?ns ,:BvJz9޳my1I !D r=QBofYewnAKpAO;KE iyjvo~o#6^+rcǂW`s/`qgaPͭaft(]8 0b*_)mB e9fJxM8UZ:&WΦz^5DV>B}# j@glz%Wkқ" YS]>g"3Tg &"DR TEpwT4ŇIvGP\sd~֐Y(X~YZsv{%㱃2 rMlpV_= y5R}\nYz欼nX*#gN^ ѠFvqQVO14.3gm4̱OC2nJ,N1W6lğ`rlI|6_^2:* ͰcEO$aX/k)hCy# FC*?p~5j( \f*|ˆ!C;'&3iV*kbVߓQٚi!M ᶷ0ٞ, |Fi\u6oZv5.⳩"G >gpKrjƕRM:v$(V B-F"qCT t#&Q7-lyKț|%a3ݫ1Xܭ:% 'aM)@ iGz 0|wQIntXf[YbJ֒ڶJ/"؜G>7-pV핉#~H#Y3%Y;~]V \BwXӭ}~wҗ7p*luBLoHWx[KdBp5roj/DLˠ}04FՑ31 ;>[ڦ瀆鋏.鼣pDF(<>dq θ(֊UoC!zQoIT Tbp) q NN;)YGu嶿{,KHm ra|u~EvZӣJvHhx%ϠZ v {ƹP(?IM>e3$$M&Q.F=̽^Jq$µwրmK‡ȻCnS%mhLhNPڗf!]1+ebo2c&q@.uKX4H$2VS9@Q?)>渀ym%H+ Ge~a Gew,Jk|h&? H7~ⷻNM\C+֭:~U>cU%s.(C/|GNlPOSG$1~# :^#ur.#)n=x+uf$ܘ˭R}3t{pJ;#hI̛?Ě5pgFbh05N*,R=O|.jOs|URmS{1.@PB˭ R|T`e *hFQ/,nN9>/͕OX!JJ2)ܩ)oH#%{ޙ[EKܑD{[m8&R? &aJO첝Vu 1WHMblR [#ݝFp60$Xqoܣe_쏮bdʺ" AF'MJl4WX8<&f*';+ےg*kCgTe6?q>18_' 3N*lE0+t3? #=ZMe0V,2&;X` yQ) C9 =UcJ I9sWXiJs+Q]ܢm=|Пi~Ԃ%/VyLP|ʯC$_&^iړ׹jl@;8JJK͝[gh /^ L7N 4{H˅S{(ET bo-dμr7hKЏ97zo¬$6|<{WJe{8P }hkjJ|\Dq08L]x_{Qϑ=_fJějΊ % ʧ!/dˍSꮗ`sN}F4}7ʻhTa+ھSea>)$Ka7djI.z4w2q+mL'gD,3{hS[1eWU6L SJxHcšg5s-u#%ku|c{P;?b=/WіKFhR'ep'\(^]k{_3HΰN/}YXJkD˳*1SvoTpϒoWsmK̔.㋭"r/']U.JݖatѦ +C_lm+Yu5:VwݖCVQ'XcO^dFG c'S311o!f ݈c -:yV*nqBi1U.MqWl2ᔪD6DУ Qk͢{^W+k)14r*BDE? -vA@>Ԝ̙eeuQŤ=}͡5fduSH]#} s"E`z(Z SZ{VM!Ou>\+@y@^ R^I?W+ E"0[nn?9ʊ&i{:DMֿs;eWF=0{F({9.:%,}=^2Vop)AÒV'lYh_?֮kǴoz poylB}A{cbг${s]'z85E> JE_B:R(Ԗuj1zu D"/fzWQc26QMxky󨿭{3ƙz`Bޝ~TuEulJ/s2|Z$= CSy is Ey. /1,keP~ѕ{|ϲCf΢k1܈f2؁eGՃ"2^Rd YPnȏSҜ`'™`q_.׽]2:S. SvTw? Y >{#f>s|R2!!JE1ޛ {^J^I}3ا+UXE$?gp]DהÄ@k:,mil5zj0rǤ` Dq1|='yaR9X5% =gS`z%"A8q#Pl؊LR". WjJc~W 1J%’w+Dz? wT1wX$DP5h]dwNǖJ+XG@zK`_e\w/w =juUzy[ >^pggpK|ѢY,xJOL:BdJ[ihc.1xkgMQ<-ŭ 5uԌVh7Lt!)^.9*kӞ.RP!|WN][iIE NddCS*vl-Y ȉ21Y.R:C 0zYs޲'^.?nuM e"F\$:Z@ďȪ:kr\czg~if]R!XW0Kx8RG ")0L(4dZ?dWڞT䭘Jp$\!KW[R|)gbb 7VRfF"2MSrwW,# ڃuuiaْ6fyUAik]<'_6,E޹ =g]#9&x 5amv,sMF2p} 6~b<dBD@+؃b&ꡁ #b-4YmR6ۧ^>:I賰{b*$C70̠urzǖ=D# IV>G95z)FȠn<@(ۻw  ͈+ӽ3~4%<׽Q0.&6 }D/`SMSP3@֪#>Xpq?ɔh_^dP|e-Dr򱛢KptYe$bZf +Hy-:ͮ r`4V834, \.OLu'Ӝ$ |_FPgPͮWT~_e 2.eBGHR?'Qн=?5|TƮI݇"6ʕdZe-% $(]g @V4|*9Or?D@kq 2'6~KuT VdX۔fdkeK%IÁCn&HLSs J;H֩=jFud?'g138 \Γ tƶh:9Y^>N YKO? /ӦZHCUGkk6ON 0B(8"ؐr:jeWm>>dxGd֢f@:Pe"(BKJrXlo۶2Ҿ"b*|MRv{O13[aqE0{P^s|* ^zWbNvm9\&m>xGӄkC3ϖ7}_1Px2^6M esE[Qְ) mon{[VBWR뢙bPA8(tv0q;)z2L3BuighP.W_C},) ĄJ%_(dRIs֮&~җ*M2¢S jwkjwp#9|^/}@}^ZhVt=/}Rܸ `r>$o\Y' S+IN0$;LJ4;ؙ\.^&:n526T-}KF؆bPRg\,[d%Iˊ75]A&F\a:W,3À@Nwn WeT+Z%L3`|`ݩA쨉WFMϪIDvxԶeEfztbA뷍VT[ZcЛ$mw[ly\7O%LӣXw34؞c23,,l$3BV"b7I_ B<xxTFVlWmLMa'▉=197}32a1|Łs%ҜL1 _EafТL/*ٷN"ƝH'(PᦝWqЇ Cqe6v\t\4v=~u4Ӭ=*_lr9v W3OxUB+Oǀ5Q\7P_~dX׳+z9'#5a~I.3`ƛ+4L ږN?ͩ%=;VeR|䧋qU{ow*镉`~)4RAqgLbR1ư4c5;sϣTlrcx?ӅBcpѨ$^se/ ¼<ĬcT.#\vDa i]w''m^mt<BKBp`;??)+S{?B8O] A;<r}}y31C;yxp$<L->';֧]Z'QDqYMC)kDt >!<Wm޼LـIJ?,o4)oĮDԢs.eih#9'if>2e/k$o,Wˠ; Vaq;r2̺ʡ \gu@ke#~i>`dϿn"L @7$QV,;nI:nyn.ek3I/j)(v%,* &bBk`;9l'(q"ϻ'rɨUj $/ fv+Îh@^G6`K}nˌ?d9Sv6/m$vnnOԾ@ W c\3a.ɦΈA%fS.ƛv'fUI;FMpY˪'d[D :(*Z ]0p_a e]/?j'kì) |;]`B|e?>:>9?+ܤcl\6f'K><>2^_@O4nl)=,X4]p6x6Chj̋kG4⡄ 娹D}8kUөA"<ҲܬR ęP[& P0|Cr E֎ztvQDKxƶޕitSr\a vry.@ Zen3HSLuZlncmoxpɎc4{n8cI 5ѧ/xpS@c0(n}zMi*(—O?VQ[5jnrg $3A Q:Dr=z1c?5T*Ig (Ab%ryV̀TdשۑÖ1kP-l*ᤴ=@e.sknpnj έΪ)GuηGt5GZt'EI %Ky`'+BEaMm6XңzlI-u: HcoozGJμz\p}Df .%nҲ@U19zӊ.UGb/P(7Ys?mUk__\>apPGE]tO#1C_WS2ANw* 2$J2+wpF-4!s`7CXvwԿSڑ[}Iq7SNucV_4R!bC>Ȟqu̜(}ءA$Ck3R{C,^s 1e~&b'Yb 6g$,>>G|* (v5=X8ESymj! 'σt2Z8E9x=*لZ[t1 U„]ə]O96vbyt^ulGI%=?V5:w]4R)i^,+#.ͰۣqluAilu4`a-̈6Lzv{kl{2U)=i?/!<\uAQmH_ gਦlt%{>!QE/j"T9fuɸE^+6ˬ>xVcJ֛8M2{"uHb#։vD8K*Ol=_we}z&+eH9Gjx5v. bd:޹>x^@*Ԭ]gB!`"(Y"žؚrYVHj(E*Z725vE~-ј.T" `ߝa<|[gugΚm0!ۛ\1RA.V տWfV)cJ EgnDmnѤi|Mmp& U nuքǜ8){lĻ*{ɍo £gnEv{ zj  1x5\tf dYJ&099Ќ&&] x_/23;m_Uq#wwkAܐXANNH CM`6`s`BT]Xɜʥ * S[(?:?ZJ] >0Yo#6}s\pߤ=^D}`dyXӉ3ԓї R?$غyuM~魬rhao8:'i[Öxe> ǫ5_a2s?xˢsXu7!w|~* ʲ#VV[( r(M~/Y@MQ_ றMe?{N4ay̷s9L?,~}l ӥwxIP'ܔơ~!< r ^uнDBJ!_,Uy-q:T-0 ,N4Ck1ЧK955?9KQqn5U|J) 8?Q&~RJK R~l'- SѷKoQBRAbQ IgW/M2_Ѹ!]);Z:gEZ!% /LicL^[DŽ27F3BvF odZK~+"֮EzVIV_G#RL >rP4'iQX gw@'q)ޣgo7c6~Y ,5}2 ,+$EjC^wxT%v04 /s*RE- K$?_xs[%-+`:'u긾,wqefWeb8M(j}.. [h(+bATےF`HMCw~ U5YA&e{mM Fs3aU]Gy"Ts[%g!/Jq<8Ф(Y!eܝeAkUAe"uj_"ݧ~Ƃ5FdhyqSmr} rKZ;P*O;YЌ"n ZFݻ$)-4 0.b39'r>b֧Ghm+} 1HL&+WM665mQ-:.%v-e޿'p'w+{+y7&!iP].N" i*@@9&_4I#tJ+ ؞!N \5S,Tl)öomAl> zu69:TJL U)R-sӯ&sڽOc4:^7OBRWa0yD1hCM rP >e$`(xݎbzQ9`NBu8Y6(ezRv$ӁMLMsMFOU>hSJM>.u:@3ռ嗜T컛}0Pb3ڔyxZ ĨY.8e=<ѽcQx ܀Vg&{dfuSZ~@Lbc٧ (@I`EL\c~3-10h1R7 sEĀ6# IhowE?qw|ƳVT_7 L\ˏҲ=9- Y VYYBHWza6 5R292я &/m#9R 9߂e@TU>&sOgio @zJ4XAysB4 ]ËMPgC 6v#$A0Lȧ~L#L7?>)4 hPWyXozE9 ~X8|?V&ڈ[ME]``kɅjl'qlxׁo % tHlB" ;(L `SIkf]ha' *@! ,\M6̙me^`́@^h+Y8Kcx$zva\o2hõ'0nܱf~sav!50wV㡲!y]Ubalg iKcHG&LZ@c\ ֦;zʆW3W럗xߎ˿s J?ЍҦJ{O`urt^9H5QKИ.S`ښkˡjb CuB~{{9S)6Ld^*LGf]ScSՊ_7-F˓7-yl/,CqhH4ͧez/}u5ޚZp[۞(w>똅VtFmʏ4L3->+jتz]< OroW=Vk0"C_"\B_ӂr!?8r \˦M F<10`EFGmlr"I`zАB311SW""d v*'H@e}Yb83na#"MдOmrQ̩ `itM@}dwVIeHYD=Dl  6ARl&M z}?l/ 9fKMTVsZ+x\;Ύ'{WhYEtj{`5Ģ\yGZ^-Zz)BAg9m3EQMx MRU#f D_`t_s]ү9<><:6mzkh\P3p%zupJ@ls-ݩtyMor+kBG @U]6Q{ATWklIX?82[n*Z `F宰μDًJ0mtB$Q{̬-֯_yAwa6'Ep<~ &Z%6whZv['n{oаC 9fiHth*)*捤H''_ϝfvZ׮G5ߌ;b;!ɋjt+? t/ɕpQ1=M"'LkzqdxPqyX+n1"DIn$4yݑ,#m32 ?J&}]AִP zuDȜʯGSٳ)&hiSe\DJbN-ᭅw/"2ǭ4 d!i&M}fl"|יpNxX>()l};jp> C?3HO( ܻ%Zx. c ϜFi͂V[?3&8iee T&Hϣs3-4U(Yc _[#]ޣ=d2.+X\l\ wj͢|K2Eyp :mES usC6|lz.cH侹PR=EMUM [)9 Wttl]wiP +Lڗ#P$Սrpz1d#TOnMӑl%j^ycKgcvU{ w.Q:~Ӿ mP vGq}X">V&&u+wˆ<- ]qUS]EѬ5feɩB&䍾R0^*E$Eqߢ">3! g!q-FL @OpVh͹XW%=<0r lu ڲ#cC]/FsCHzr!Me͛k0w9MϦ\#ښTkxݕ#9xxҤӺJY˃;|~&OӲ"?7P jb9GDwQȼbN0D P;qiĽ4_4wgz!ͦw2 Dm|aSػhN_'|L]IaPC$̗֛ijg#FpЖv 'nt/a_IYɘ/2Fzj @$pql*8o5ƫjY4cB`HPL1?),ׄWfP=.&<#,Y?pOTFD\5]G1cNNKÐݷpT1J\yd l` H,=TD)Lr)wA6%6ٰt<,DrR;=3q+xhaD숉yhKy[7,%H̵ӆSxwQ{ 4CT4ҪEPϥ|+V=a$p#R f׀TH1`( ElT~O{SHc'+8 ӭ$7V-Zwpg #{_ks{0PEZ!TM!4F/fC7&_5mkt[d\.)iɆ/bF1Rٰ)̈했݅ --C"8/-+<+z6NtvfauLJFZB+/Sp}}G#"+tNSJ(X|I]}M!voӾgpX3z\ ~1rxO ̮{sA0P=jKFfS6:,NA4c~33~+2k}#W Jљ 獽LEEc'ؚjL` ƕ1UQi &?':,;J?&3)X χO9;锌Dg-űFpvs tR3h:6^ojjȥT l?F38"sz|B;θhM?6?0FWJH{87sPSr)!^ |}ͭ~D3&, oNo'oŸh K擆Qa_L@k|ec]`VʦC;RnwS#ܺ3_3Zncd؉8x'!j/ylDShXT ԏGm}`0o^6H=&϶.vLv*{s[:~~>#J.#Cϙt.蟪 %ݐek;%]#BfY[cwi|k9U1'G.@[W@PEsxY"ϕ6r*ThJ2i+%+i; shmőw]y$WCK|T0lzxGj0{~]OL9`< g}.Ė0$7^اZD 9}kcӘ'5/L> D/AJsК2?!Ĝ-IuԶ7?Dt]]}몳]sôZ\Ɋ'AAP[rגƒËZ2T%F4l!IڒGi뒯&f1#_ ex!2HUDv.1'(?!;ZE+::Žf3Tr.ٕvh`7_ (AnMTW3X c~b[y^|&d`]sB>_|*j3,&]1>[~y٦&!jnMi+ŵ݅SVe x!r4 W& .f4s =$D!S<)JW@(d*$e߷jP=\\tih*SgG f*(zI rT n [aMN"};ҥjFT2Rw{:WXw?545Rw;Z7ԕ_-QA cՎmEUHj}ϷPx~~싷գȱ~HsOjI0F,%&鳃E  9T@֗7[JVeFD̈́jS/EP@ŷb2ƁoLFvH ϰ!t`lpOͿ__|W/@ss?$t8Fμ_6o( 4M`gɞ)KP&߰EYAs||(`qwBTkqQXb,T\Sc=~]h zJxʫH߃pN: 7:Ҭ\wZ3:|>o9' K.L3|o70T=§-@s-݄|:l!`3$ 7?޻XS9@v#uF~i{&eMe׷-lμ+?oeYnEU9 22j4U3%=QT] 46ɪ0X` ƧvG6'azP?X!mWeRcX2 ՓT3)f ?ASaX,ZW.!ʡ= LFg$F$0?wȿ炊OkJ 1K,M[AQ]cө7̫6w=8QK..F^IKR:;8E]6F`0dQ1-)Uu4N봗J&-ŸHY O ιOfNZ R@ŵNP@-e @vuM%g!IP2"!N"6U֝ðj4C"kL^(' ]*l\H [8qdO a(v涤rW*խ ma\g&F> 7hvir:'f>O $jjh ɀ"1lVq5>N-b82ǜػSkkp{RB4Ӌò 4-aUw9J%5]o*>=(`ׄY{ލ&?5_ B±BsaJ}R I]eF;-Ck"K57T&Xά/f87zcؕ |uv-#'"}~\ Fh| ᮕy-\?2{W4ߞV F }Bf}(K|#gj,rB8U잰,tk㺬cK; AD_Lw]ockstfDJvVZo?8-ȘQVuaAk<U1 碨M^Ǭ rV!Eu_Fy˙ 0Iþx!N^MXsjT4=YHf$ol(Am'gYyQpπnSʽ܍9YUVU K r'a;^ G7J*_ ? 12ӏ| FйY!kp'vHhs!f8WI B0RWB_Ts:RT!x;2&XGcpKV[hJeCE,] ]d7͖"^tnӦhT us8T9d66 utj%ƾS7}WQk8$rS02[“^R6<ҭuܖMv5e=EMG[ork3\~T=5=?Ɩ$!v ֱi֣)|{"K^/ %oj2a=$׃{O{S>.Edfk3Jz3v6(GF$o^fw/. lr(TZcS­!բq(*$&n.gC:Ne|̯8;q nj:k-"Q_rt,w@dbDy#" 8I+I3wgv?wg-e'q[,$-f6>jWkr|O /t k#ofk9N_r̹cEDZ4-zk-w Sli'g%h$"Z$IǪ/8\F, Oh#sdU2 .c-\[|p~2;0sXzaˠe."a12ĝ>ہ*b >O[޼deTdXgPiBی6Un1y.UEB#x͵$} IioRZ~G+ċʥG3yk.`$53>'τl%]_ɚ1Qf_<';!npÎh%萛GߣʷvtVs_\ዃtUn6!TNd+*;;C/n>DAJOrzsY|Z{ E}pGLd2hJ8e\<!kmud , vo$WT00Y ~7|Rq#*1<}=.r-yzå0D:.(8F&? ]PG%ɽӛUUğ^W ~W;_}WUPx:M s!q6e7JF15FB*0[m^~p|hݫOBGFel@ Z|g o(r=SkHyjg~ e0gk40ݱOYȂܒjw;79)-1 vWx">}\v|BLc{?O#: y .W4%W, [+]!D[orr<3J +gb -a;1Rs[hEz X1JEU{3C{B0ޞdßg=uD{X_EM6 1_0t<኱AA [h5^)1#FdBxMωX5ZE~j_zNg7[zxE85Hǩ!TBެJiS(2aV=~);#;2I;އK^B̕[a#"x'P?q!؎£!xoc QR/y}bC'Q-IJ$gCmP3M2>oPoa9knā K\u`&Zfi/_d}qIe1ߠ|F$/P\F)S_kE*\+3 KSe<4㡥U灤 fxu!ޭ# DwOyOA pk21ic``bKa) q'fz+Hᡭ)blͯ@yMh:5:<`f*IU=J<{Vv`7&P1'$UsOre̼)I=  ζ\iJR :5tPvX{R4o {vӑ?Pde <”} A=Phq}F&YS;yt' 'H.CfPt}ʋ jS##S4BQ*iCIca1/Rh۵5D&:y-J+ Xhf$guښ%37#$c]fLy>tdH2=vEPQOEKX#3HţtߞEuK0aK*k!- t=+)4˚R:~oX/^01^fI&g1v+-AB|Ssv|␄-tfv `jؠٜI2r,c;@rwӘ[0tŌ uiF XP!?HsB:>. {}--qVKRW'q*a,ϲ, &Q>ˑZRTAUXm ̝ EťE8|&Ń@ZR>#Vթ<3䝼^H7w4 ͷm&-6͐EgkD .Fa"_Ubm?v/0g//|<f08t?kzAg4=)1șG07W&_?Ha77{ZQNL?;EDF̜#_>șQֿ r=v}?b$Dfwvha69Aே;1O4r B S^ݬ~ymvv {HBߣ 78t! 7syl7uˀu|$ &PzyhKx ݦg幓u2c?ٗY[eVFV256^lmY/IOrľ*wiD1kE8`ȁ^1 u]|aڸdyȖ*iӎi6e\^GQ3̂TIa]./϶+UZ5l_Z 絳Ѯ;xK,:s3lVl_س)1$ shIv!1|V!gfQNܑh8*fh1xj X4h@y+JKoIbۖǨC~Ћbß߇ ב4K>H-| w+C>sY+l*?Gu@3֌3u, e XIZEa|wj՟/%Z=f`O=ih DuvU :b1(r"cZV-i0s-lj3g4R[cd$v&Vp  +BxKt 9*!O.՘5pD6y3pO)-"=)JSf9Ǣ=4('F]]pQ7aHtFrbZ1؆VPl`:yϿ氕8aRzROeHղl-dBǖtQc6#vbQC9wG,rRbDǰ!Y;Yަ=uĀsK.3ry6R&cAR/Ahw-d!yfn~'1ؗȘ9}-blA@O#R%!Tl5\7_g{g7[lY=I߯f.o> LT|3uARC7`2},aؐyD]GB- := Siom9m}]OA|WќсSᕲ&qmQk%N]]<;Q7X @Y|b3x Ok[p2ZysWٽg76P Z_җOk}@\*60ey3k{͆>!Z`@(쫥K\l9N~4hT[oCgkm|޵s̞2ɞDZ3p$ ̅nۧ? 8mU?B[Tj~'F^󖍽<8Lױ3 D2ⰻ*%@x2"LR@!ۊ dxUۓRZɒT uv:2n-<@XǼpHrM6db{Ht}x>R * 4_8|opzRr"-gx4({zj '*b,&$a7~^ _~ azWu1~S!4W>Q4foX?ǔ:ywAz3mo%shmX{ee.5SK2h%?jdaajݮD@UnZ lj/g/iDTds1[ P Pa%GXP+;p:n m:E:2> {#/^G:fjRZp71#l( H9r1x~XcV͐ iMDaHD*^-e7ܴ#yY؃(;D2̽w>K{TcCw3U@f ["@}&+Ńg߬}e&jYDʸGN%ai6*;M´S50`׬Z ~: (xݎ@6:DO*()+cML=tjf6Cu4}^3nGen}69w4 H8(1+(Z9. x#Z_KU[{okLkϰ+!Ň9(gfэw'Tl. RzO!1] `̽dwy +aWBَ5yWi5ZFzHDdxkVs~F,iZLn'kaV -`\5c8& Fy^=nUj[z/ǺZgqm{Q؎eOznO$7G=yWX}/=J.Ю8?ˊs2<|xwGvsL)ey՜/w.Y.5S"IڠQZv͞>sôsܬmzׅaq3C]!K:םH=H;5?qdʋ#/Ge&*:^Ki%ã,R pQ[a6;_ZY$4Mo"wѶ}cBG`_5{W0CFWS|ԀXs;rO@xx)^#%zl!YC7gN1l6@/G.b$a+NBaS<J>:ƍVP2H@-g>L{ϜwAz1'0;@b JpB)؟Ft/44qo:ʎ b'RxDlJj磥8amd En&brrGuM ~vi5*Nh3{ vS4V6׹Xksm]-$y3RΤId/q۩45a]_5Em~ ?멛;o#f? "s7+V=3g%S|'g>e"ҬJUG`i$ak1l80l @( a : v)c1rW(cCkU" G 鷯C}x$J-jZ'.fu~/żIp> 9HĨv*>yOf|cxWu黐Ȥ[ETF%唊VsTW+g^)':7]xkm[}Z Z!f;;- oݍ;8{f)} |IҐA,ͩź1 vߍ6{|to @Q,kdlɸ8 x;h?8A+fRUU%YX`+:#RoFa 嵫!gC{bZ;$.8!d[RujJfg|w9v)v[j9\robYA१]m0bWc\g3VRmUk-I3WDy{M- &b&-S-,%/zl)?{'/Rv"m49{4xg*|qursR=@!^y`.` ߘqE5Fe`P[qc4vb^ay no:٣d} z0XPj}GkJ껎%t?Ӊᦨb9VdYٻ1ʋ2td.|l&[l(g~YI`W8MɻSX"-ɟ}a%xLF0gu1d"-)jļgIрchFh\59B{4J>Y%[ E"_"j2Sp }>6^_YR%;-`/W2'HZ‘5>N v Z**< "x *UVL,tZ%KڇZ9Vi]6Q׈pT^[9Ap~0`x)[eZۭ*Wfƕ9ۉN8v/Td# 1[B냖>]PÄ^r8fBb5-8x$y^*1%'G5#J frg;>WUm=E*Ov.\sVKq_AHI=p gT+qUͺ!I 䢝ΒjK,=-`5EC׏ KKiEo*>82MVjARPVz`*"%2CIEk| wO@]N-v6|6Z|T{e+UNʬȃ'ۉ:J KZҙo\RYw ߽/ߖbCio9pTI;d71lY>z _ Kԧz3EBA ݝ6>O-tOxjxAv%Y"Z-T䨚/,l/A;DWW@Z&>sUä^4#t^p3BGOq!`u=RqmtfWOG0ˆןNN4H?oP+( PNT; &ѶmáZj{QnM\Q VPPF&%] 4~+[9lp0w|cA-QA"}ؤ lIkBMa*7MV _$>xF쯝k Zom[+8E5*ST}@)i/?? rW< [YtE h[h%ǩr e4Ϋ|HshM`SkMXYXw+72ku{4@sKz,_fYe҂|8Si{/vk\U`lU󊦯w%i蝎gls>X!.ʟ漐ēzCG'R=<+¡ , 9["0N lagZ"H|FM2Ą1 )IJg] AdXoD1f:hLՏd݂3Kjy1 1 ϲ)@kVvzm{|fc\|1wb/um4q\s<^}B\m[h (hpq1yUyxꚟMP ̡1Ez̹Z HoJwգ<+؋c.jF{<|n-ٱ=mIO˜@Oa} |>ʪ5:ۋm'WAXM?phs0G]m0K$lBIX92LQ&A)BK "p,>(w#8+y=uH=H(Q&,g߽hKX|P嬑0ILrϯZ.P|.[h}#^㈓ ]kfK{-K:k9ǣ1й3.ՀM:nՉSV]5A!p rfG)rLF mZf7/kC\k'e2z~) 7".zTϸթ5JTqP]4& mc xNŪGxVg|{ Dj -qj2WŅD?:Zp^di؎}a n 4/ÿWt$}Ad"֯ZjGd3.j(1( /q {/*"sL΅~?ίt0oiS.5q #P&qcaIbރzHɃRO$0;liG[}vNӦ^GP'"䟢$@^Sgyن4k-cԌF#}쯎y4J8FBHIk0n|L7w35G9X Y\(4z;T:i ( ~e*p4EB%s:T~whX-_j 4hZJjraØ gSNdJWB 6L&.%]yiV~>Q ;5OyFA~2%R͞чo4CLg<n#jr. w/9mT?{CM, qĜ{^,qqGJ#20.EE1w1 aRSTf$rf -pgFܷ|szdc_tW?ͬFG8O̡X}Ac!z#+ 8j6IS %N>]/=эB3) qsqr𧁎lRHئރ;xD, qq[ږh`oQ;j4ØF+6yj!R3i 7!q t1)*'>֖ Ϧ X4PKVu6e:z-4IrMNv~#}y|z6߽򾬪OZ q>݋At1 gMl-!lL{ )j-AUynX L~i[5傣HlMnJ5e!: = 6W("ǫYGgޮB.R^$wGWg%eJQ}" j* cVa^/Q~# fBkڢσٍ>mwU%nCy6\0p|C}mm6NdYz) ȞU}*-P,s$(/wIfk%NtlvK6?,_qNC_-@o~oZ iW(g`hs-QCI`-Hcw@EnHk"k)h#}'v4/èH'\{ >KGڼ:S+amuqT:lجNG zuBi8? _%1|A0;B"O{U? `='aiu0B_d]:f @Nı\!g0wi"`ipi#'7~Hpݣ֗j mJ 1DL>Ҿs&%8liIIzJV<Л )bV?jCsM̡X^*}m#uRS=<4RmǴJjg@wm$K:Z52`+MJ^"g4,a 8>WUW!jif9FXmBxP({uo$T )z"B\Dg/bGe%ݬjXP0g$2TZ|`Uus~FVUCE|5wUTi/HHpF(Α|5"3ΩDӫjC12(=}hIЀEOџXu˦jnB eLڹh9}&ڬy4U|Md.yB%Ts}ZntB\b f kgPZF!;POg(45]aūCHfѲp ~ Ӿu v1^)Vaf5g$!+qrU8e4dH@cݤ7>LJt$6Yv*@VS+[7͇O wDLuz^LH? lZs:xY߰~!KR$~w$څHAE gl9r$, v (ӽd\9cҎôJnT)m l`>OeYK4yZÀCIzЛuVbeHy(#&u[Lx2B@BCI(3啹ʮ_ "0@+!4b# n a8._~ZB k["NARl`ˇ],|T- ow)H٩蔱 Nʹ:ɼݘTvg`#k,c 9F20j;Tn,Y_y 2`z.s,&M?kAZm0Ki< js&,5cf-b henˣh*=C)Ec6z 3sZKod?.[.eSBJ5*B{ԍfӦ1ߧ~<^c?\s(fhQU 4(=FP3:uh+cLu^s8} Fv݈`.K"p,Nl^3% Ƕ0g8?Tr+{/ O@Yziz#<фq}.bU¥ZAcML>z`[MK~evUj5@jthf$t} t[^KS;OInʌ?gWFLb] / ݽM^ 0WA2s^l&А)y'sc1k2$zM2Ɉ]-Xfg2˜3 &g%sXEaRA J"1PyLa,p&?|c J5܇u+ gdہ7uB~>7;')ôg jt}|ct`'SBI &bȗ`d{H^J<=53Cid,v"7|+CgXXdelr zWAw}gX6'1Q "VKrI؈@Y|p`7';g0i3^Oz଒j'`+w/Tzw&_xeCC`O0d8ٿ> dzWg3Nq~RL8iu]0vOscOYAS*Oqv?Mϙ1b4Nj,c|qF6hF򤉅NqoX8K|sj&ܪ `MVaI~JNX[P&Q|`Ժ,c,BRsYzX%`*[ϙ7|# =K44z T=M64p]~(yd98j8:OzO̅+5msܥ7PUT,D`ErAK,zCvDտ( eݴ:s 57/6l/̳chL'g*mL,q&; <_"SGEwu!@5yJ_] uxN#U5|тMKtV,QZ|]yH}ӠxxE|%Qҷ]1G⌺qr(Ws Ew_Iv~{*0#5h/cLnm׎h!6Fb^]\P|`",[4<4nDRVk}3f=G-~LCrasMmc| f6oǞU+6Yyހm^dT0*BxKG8)nAAҢTcAĴBX\V]Mc"qQqYwK<(ȍ"u ”ơ.Ullb;CI,OJQ_fnXXʦ`mKI[>e(AvMn=salV5ǁO&U9K1"KiOy[SꐆҳMǃL]5\gdAnrK(0?䄠@ע֍y8j:\V6,~إ帟l`lX|jT&p2M"PfηےP U-ˋn3*u5QҸ~3"Prlj@ ar`Fk`E%i9'r,c1A{lXܳ SF^ߨ LxF8(}ϸ3"~,o rLx5k.jsfNIi:ZZf% /,3 +.@G2U+H|rmV?T{ǧa=jS7]O.ŬT} \tlQMaC$6\?z5ɑ4}Q蕹PNw-(Ryuuߪ8忹 72 kOFltpMvĮ6vp5ġ{p]42NV(g8C2u@䈀ow"lX_wv7E6߃ _ÈYA5/|B/=miӇ的XBVo* 1W޽v!W5_nrzfy(}Xp°ϹO-K^ArU9f1cd0i62Ui`$BʐnGgBZ۩3 ~1`) 5XjTCsE-Ik5;3+;ڧRݸM&:F` \RoHQ oa.rm>KWd$=4J^t*:&W$K g۰>ᝥJr45> t* ^,L]ac P?m!Sc$/-vBJ!WarY:'Ub_TT.3[6 \ӮN! pm1+7Y\pԐ$ZiCD>2}@hkנUBnΦ/oκ]棱kD:צa9ͤ ?_uU(8_WT𛀜^b %h=*B/ xqA-<*3X^gCǀbG=k_LEl?bXh]i% 8Cg7^@C-}$zUS]ȄUnBOXIh(ɖ\AKl*ruyΡhIt662ț όHwjT^@,gr̶&[ b VD1N梏֥fcySHԹkRm6NHbf=ÃLqOJX'%$v$-qz.E#+}?UcJt%50O⑕=lDQNA7Ci{!L#ET^P:R*;޿ /E5#WGUkgRo$[_Gd6!㯚܄p (seVeR[:UpT*IEKI5m/ǿ[ jI#C]T0DYi bx!XղyC%=^¨jUK@pk "꬀<ӋT.FǝU 10HX?Vj<ыw}]n/ˬ|[`ю(efӗSa݃ݚdYFʪ~2.5Nɥ fAk !&t|ćCBqA# mjQp;GLV8Ю7WձL݁w4SݵU 65swkl(d EaJ:hkGR,.fP 2 VNT<4Y]{O:ygsʐ=tc\T0ғR#}Y?9~댎nRㆸ~xw#s1Iڟ_mA:UvX#!0WJ&ٗf RCX|jhJ Vn,PE,~X Z:?@PZJcCSlPf =m J!QۥkLyxseF*BPNF(WUd xGhV^v>%QӐZ]Jxu'k"%5' F;TIyLq‰NMP?V=R gzvĶڿ/jjP)LFLc\(VsX7.p9_SFE" 7vYt`P[,2sftDJ21sQ^yg}E鰰g4 q(XvNN3,t5e4[t@uy%Ib[CAqerpJuP v;Hf ڗQ"J1[fgE_yE>[-^|AQ_UxvzRZ鎥, Bl#X#uTqm &Y%Mpy#C=3,-%"%Y=(!coRKdZ BX C4,“k(G E'Kddin#QK;.Κοn<&k/桚fx/< hF.K2{WI^.f9]bmQ^U eY%,'.h2sXQsWح!>qZ.:Bё@ 0S͋bJJ=r t/ GiWx9Ņ?G=KLܽ;Σ^i mR=[fڵZT8-\hLÛ }8s,$LJ k7CD6x#a$V}iU 8o gpZ*4p$KͲ.`+iOh?rC^ B@C2G'qǡ szW {eP7!7FweGԤ~eiQfWDIe %@ޫb"əDf,"`nzQgߣ5RjŨGܨ[W\}<; vf j80/L!-yT$S~K_(E@zp&_v(QZ45x^i1ia, sC>am˯P$*`W/ACA8"ZWq/6q.!$r?Kdcl G!T"G[N~Mv8meE`jh/0ano٢MeD71vOrT= pTbc%*W}gUe/a= xC/>N[7]BQKe]m0o"|\g_:# ]5T]6y#BGcΩp"dnhpRޖO wN#EKua?1۲ؽoh0 Ar `x PD wXγ~Zæu@r2kz c00K tNcLs1RrI%]]?/4Ĥ}Ab`[ḧ́#e>[`RLJ–{Tik },mi_svr[ 1+3!sT-ܹP#%Ԕ rLk5nI+jCFX1fG%YԶ~u"IÆP蜈zZca0S55,ўens5ޣj=KҜ`A]Gg5!GK>N +R2/>m)uiYnjNfITNnENnE} 2fŶ'C"jNd5'̎e_'\,yw Owp:yRث)?yUGϋ_ n\w!6Zb۷Wd]Bw:,N uAP{愅[m]>S!ɮ ȍXJR7g\P>*4YA8Y,}9NkhD!1ċUEoJ:z "?P]6=!\P<ADVUk>o;~|n#3ٰ4P:HE*uFH3 Lgnؠ"gQBm%݉(#` saHx߲TH9G< A3!$bd VRR|SHSǦ̣_]àđ::/PVrN5uQv63D-Bܷ/4E G T-V<>Zo#W 闤?O3~ ".#^ =- \X0>`vCZ 'b.X*.nΠ?,e ď4[~? pU")a0u+)zO%h\e *d)W'`$ Zݳc2zW&3Jamlh Ҷlv^߷=vM."Z#&g2Lժ rp lZHmCɳBy5fzkWj[ [EO>=CG:!%`(|!`^+@mgJ$ٗȶ' @$}9.CcCAUm'~ m- .a3[vj؀LVeZ,?%2.}WVj4CS\s U8m-\e@{ Th6hXX|>THŏq9wt3+:Bic=J|W׉!4,vމi>bnGl(S0\gd†|jJTz. Q&#!+IAe(C `@W:O*QȏroZi)kqu9b7wxq($<ܿ=[]Зf1,F` cgT8 4-%X<&!CҸX h0|y7E뀂;QFqvʙ$IFstfڂKmp d~l x l֛OnT/{t,lk\]kAS4{t-OS999ӒX^6\ Ho?wߤ >'gCC)#f~fUr ?f6ՊIqdb}8# XzD,E 8UA*g=!FlaKbxv}_*D66M>Fy54^ yҵ)rּP/11\ᨬKK?3d.XG~@(#o<ɵdc7OU XQyQy8ۡUpvַkmL gN[AmoDkuߓe0"r~ol2x wV&n pUT*ox 3PeGgf!Ɣ2x~~ -)wΘ\Ֆ'>8 {&l6IKE(xi$s>?E{;2=.d: mjEtf-] ␝S*XܶQ63 ʮx;bA}SCoΧ)ATDC!{jĔwC=^&Spz'CكZGծPfa{%%UhKtUt1D(ė#B 0.&LP5m()߬Ωf6E1J) w˼o  1OYiSK$<+r#ZȄJAintVvlM/Wev-Dc[ Vk'|itoPLB,PS0sbNA9-0IdY(, l #:V̯XSY+z;Ac:&y8gT[ w pZ =1*$5) {B8>A4W5t=A}e4Xd9Z `=^XǦ52]i=ژ'bz()@E{D ZdFR73]L,+O( Xgxe]]iVףo>ty0tXǜ%?=e'J-in"ًt=)vW@e(;ʸƑFhkZPuR#qEnr1[jǢZSA <|uzd !kuӎܠojqvMl KnDKg)CXO03l)|&”CH!Dĭ]׽'B۩o.3)xB`y Ȗ8r1`jcJ8oHGZBb*AC}c;ȼnZU5 ߣ7t)0p=yb+jKI|;qxժ.v <}I*721A@U,_Zѭ6YQ #jh?R2gE+9_LFB,BJMZIo }wd#r]D|"[s,P)n׹n(.e5u)CL=(\ h^1böj,]MO Hr=?\j^2,G2omoI'[7jӗO6ƉVIbd$>ZǂM`lĖoƴA ׍]jGgJy.QᣎG=N?凳3Kl]i S ` G^$}*o>hYILuv-/mƯw2YV\D*zdh=Ʊ߀wCXlG ^é/Xh3>tt :/$JL7X9`WnB~b( ú%Y%_ӟQ$t8:gT**W+LZɓ-se^9;KXdGkga h&NG )Tbp?]$i5 ZPIGT;|:BK:=JcI,^Ed;Bg{.?H|Sh SVm xE еW{Y:8Sk'SF'SӼ7$-@Q"ʊWTиYy n-ٍ]dmRD$ҐL 0 AMT}Kk-׾7X{]wcNR644/[Y'30Ӭ['\mSpJ/J _TKY owoo4poc\m{[,n~B;XOw*T -=JUc$O*|zIyO`73@:k@)p) 9 -h)MkBw Xi,:y hfv G{VఀteMFx|2k&NɃ Ϸu(9-KJƜ[KTZ6OըB+xv U;>8̀2(8 :h^ V_`q쟺@Չ6:zI;s.}ߨ+8ި:bi? WŤR.d]>C^1 FHqFWüoq>|L-[G},SV *YG :-րg v,.fTwCep$D6R_ 9C*X̅.Fu![s1]"8a޾^SڂK˵3#yCmIAګ8#cMhalec7!-r"=JOC] I2meą])># ب"u*_.IE#-3_'22+E$p-zleQ"6Cłw7vk` (~ldCӤ^g! m^Met*3ԣ5c? c'丶7.0܋Ey)!I}hV;۠1`d2|ZXApEY962Ŭ'V ,8oqtkDXb5H> c/Jp 0*5fqV+ah5t>;SxE-p)Zx7FՄztODxNgNM_THB[96 yzJ'cܛUT-~A5H4n5/3⡝5!qvL魼ws$ ]p/o$8Q4MI^vF+_QӭRWe]Q:G@M(5{ Ԗy -]kn}w$.3H 80I'#ƕ8=K| 5% 9T,k5MR Z5*m|ecUh\|{0~TJEhq=LCukNx*K) 0UV^vZvHȒOh@2Ku>:}9:.}܋|^m7爵(<Q5RuFUjݢ^)^)oyks.O].+b55.uھ5Et1 ջM>>>q ?5"ER>tҊW((6 @];;ScW :+gYc2/NcxKh#[  )5ZT%sU-#=7E?O򩟟e3tT{: ٣F;"3h^!Ȧ-<nH#Q_e5vX֩dB5K,o J~&Tbq7+B&ՙI(xk;v9"3"^o{h4d^!7^ |B|02 FŶƯ]A!%Zxv֪Jb7 #`͒ODKo9 ;eHI r\|2ޗ!(F> e$,BAgFBq W,|m(LUxt)M aŌJPJʫ5M7Ҹ Ȋm`?_dJ6+j.gR([:GIPvҀpyqP)f%K*}ۍ__&?8s=ئ7\Yz*ٕ G KՏKH8& 4;- ڱhX!Ob(̷-Ȏ xM{l!VMcAiIu!WRW,T#獤\)03A10V:`c' I=4Tnrr?:}LCҵs_]Ffiٔ+ aƁx{ؒ( *k(!!33]|HLIw>?MW[F`jŒ`XuXzT0 IZ+iVag/Gg1!~>Dk '}1, iZd"?_JWnD3xY8g*wQoy@fi:K8ئ9{ptX4Wۋe6bā[S-LDmpNHB%%|Th~W c&HFJ aZDdHv7aq*/Nb$um#sYܨ@pԑ >-E)_@3| X_s@12M|ˆ5jzvl 0~`/m ժZJPxI=%Bn/ϭ{{蛋n1qOl6) vʬgѪ31nw)R;iR d5XTmW OV$}, h̋G7md+օ*ܾX.Z 6H‹o-݇F+EF(ꓽ^o>7`A[>W8˩[G-qP,㣮#$ MWhUȢ :H{bi86Dհ<tCNδ bD_:܀$9 ^ 3f`}t (R Foh.ӱؗ^$w듟ـ3~P[i1.cw F y9*&7 2i^s&HC tuW h#Mkf#xlq;F2`yǘOf|>Q0KBTՑLUrs^?IFMc_!I8gUԉT.8?+|bZ9z"(ƹlY /P&%K!ĂCpqQ=buU3ԷGӏŧ)?mok;vsKjVzz/M6 [N/xi+7+V!HPUq&Lf\i=,Jے]'̩>mi- ʜ iCR{Z:nѳ44FLɲdQ;Djtgq_dkQHf+-ҍ1l4TwLD=BMT =Q, RWkQ3Pp!J{lR]] a7\iIU$޺础XVWM>k`ˎ W3S-<ڱƢk!cœE]l -&1.,{Vm(t>O+QYd`{Q6c c&DڦBf>U*/â]\}$yY=ԏYR)$1|EnV#.YY\%>iXh7OzE6wt H~s0k@"t{ R9w\>KR@ -JZu0_+\}a ):#zE*Pht /aI%16*.t2ܟ*e'/prH-TR8;juEmTA&Hhr:-]Nr| Ƕg$*'}T!!& ;0~A|=7Ȇ$LkqgAGkݲ6JzA@V9*T{pѐpp4JpδJZ2^ zXBGty4Le?BzY .T*kvYP& *z0ѵ'\2O~")z U)dCnIpZAPjb_`C6& 9ڹ >Vt{ؗxKјŅ'P/e KuW"nQL[/.,0k]>R>kO2 ZL![݄5rVcުcD]Ͳ(yxCŇ|>Z[娇ivW>"Mg~VF١͢8O VD//yZϢ}t N@΂'u+P޲kV/xdvj_b h6:k!V{9tS K~(x(GTP{< \EC2L2w 6f~~ &3-:zN&mCKAcRqX>L؋Tխ22.H),;2I=E|ŶXm?Hjn+, y0ֽJM&bRiq iPY,`A|=?glƯ+:S:eN sN l@: bҸ*#hWv;"4^+Xi yS=̳ C7X`7i/'ARBcsThƚ| 1$P&~T M8IzzV[.NK)enrD"(L#*GKO"Coʻ]nNDlӾxB0=O^qzo 6u~Rh "%PQ­$tC7ZyNtlzAjr&q<Æfv܄eo6~vY^A5Ǹ/uХaޠ'Ȥ8BUN'] GF>K7!D/X}` w.4辱=Umen-Ʋ@@O-M*"G9^Gi/=0o T \p 5ܭuE4y}Ÿ&A|pB)X`Ot.>\XgM6z+EM'N+.)&a1;ߒu)\cqaͩb-E2ފ*)!ꂸ{r^߼#$!3K\k! ,o;Ǐj@;"OaqEtI錒ͩS4fn_jqQrTl:f1[Mn!|Oz,/.ѲT;(=f,DRRML"PG*j>xb'\P+fR1,CS*ڡhoX-:4ᾈVدAaV3&14+wJhhz "= q,Y-Ad*UӟlݛDBf.fIr9pcLErKcBūDq^Q b]QluFcy.k'mܤdaq=*}[=A<6o7 +,R޴f’E@Km#JjxNucqY3$/ɑV!F̒|.sUd0&"ۤ{g$:[V\;l%s!{=]jL4lNG zCbXvX&ϫg_Qو4pn2QurMko8KFɵe3X5ݝS_@8"IxjLrI mO^K(Ƞԩz#j` jmk% _'9zOkBf=>Xz Qe ɟQ KiJ|  };TShXX6xsc1]7%sЗWo G>Өmˤ ݦҍSP41*d[B žBV}Ў.ƙ=BCvq Mmh}U;w+,A.YsD᭎K@TY>t k6}_Ԯ]ITc72 x+edդċ0xDe'V%W+ .` "uX/ Vc÷#P V[d)tkZG4L2`P+I4=)8\="5T: +r" 4yΖ 奂ODGEƧ6@z]=6Mz k,BGU!E!bx0gV +Y1fU:!6/6m偍}PXc 6,@5*6'(đH& fOJf0XXṴ8–ͷߘ[s=v/c3jdbv =߭>6{&zB҃(bL'`Q@e4[԰/Jי> qI]UI{5ު/\w$>5ǡhKkҟ BTzGNj+Yj{Fn,e .I/_>L=&5u{+kgыz DF R7unDz润H N$:2M}Nڛ$_ _mN>җ' ~У*_s›CcT1P R`Ʌu>9X+o #x?엔h({~HϞRS7EL~\Oi/@7}[ aE {T׳K갞e'Vq߀}Wԩi- qxqu׈)MbKSSDl]ʍD =;9+j$EnXٚvZ94ӂjݶsR3v7j^ rnփF k3=M&h=mTaM/KX5bRtڕ)R<A " g ד1Vt@Vsw{m krx,eSM\!R\/V6.67=Yn?XƗT,EVmcr6 ֝l4 /{v 6iwUW^:w-~KMgGKY{a5$? /.a:j:Y-yilSA[9}Kpi6=>Шbc?8o9^ AN veZ?;ǽMXC)>q.Q_?4ADNrzC{uQ5ݳE|,FbtkM_? 8=PDx8j6D"ՙL>Io[[W7E1t4xݼ/T'mp+E,@9T_e Zu坤79pR3oo3p_yK3#u8}µΗ<8v( ogԘ~1#^7iOjU6WbT?JpGq&g;Ovz (8(x>al5G}n []Q%Gh;(;1{I_OPIg:ː|JEڛ}7!aRsJc']TCEgU@7Knu*_O۾;jV (F~dlQK 371oT(o.>*d~Z9↪'w6&t|5$|0zWI*g{2T6޴ƭеs~9> +Ϸ&hx:;ٷW l/NXlV׳.k@:vW<3H:S H17G]uJuDc[ Q^wʠ)/%Բڋ!GPz{ބ#z4V٬ )EϮ(B#\j]!eKh[xg5cpnp"F18גTDٳ;/cT~r\W l7cGPqƺQB0,+[ʃ'eW*z7B'Ѩ(J8Nh6}KIqXx:9aZv'MB@" fg"zкWLzEG\勅bOV`A=պ>a7x~\%_xB#9&7E)"*3mފ8wa$b-Sc=e QhualIG!9q.y1$qU\džcU1/y>͆,wwl#08:ʣBR{PP ^2~l'!]LbZUL˦)s&5݊!;+q053╇XYЕb5hJzv :jVa50Y;(14|ۃm Fz=|}:3LPAg(_$MfRo"do<,ׂL ܽސF=;۩l_Mړs< U=N2DQ_nUR- &Wz6t]2%pԚ?M"X+dyX'y1jɤGԀȀJA jC/ y ƭZ-79'>)F (pt\/hb=-w:lhҜ]%Bk@ېSPӊ?F{-E/:+I^c!˜nn5/PSܣdxE!&xus+4yG$B Cesny"n6 nta3dq)X.:( dntq1ݣ B` 7~Ԉ3.ؕn,HQJr>8P3̵|pՋr"H+%P8x-C?J;O#Z5=f2#23j&iUvL[I)`v<=K۷6 ;_s50TL˺m?(J'(erPшs ;\Oʰ‘%JD*'xyDEe)r%kRk͘هdCҨ7&Od鯇LۈM '"BQ(6O㔹Є)sO)ɽj+p.&q`IZ`BF&ŗ纠He{ ȘzpnF-l_)(աwBH|4e,v̕B1&'[oAHÔ%ΎFFbd]vK @p1`+bAяBjDVD¸Y?oD2s,"D$R W#}Adn`5 #6nު%m: 5R2d>g 5;ouTE"4ݰ̞.=$G2A # 4όLTx%7f3R{Z^S.euՒ H? J]۩0b{G9%Bkv[#vlo8Q z*{q2TxHrjKo02^ Xnz^ cR2ϥH8hE=slx,g# MUzB[hSwסA`'weQ!>(iA -sth|2Qu$< L3y|@<T-LWʃH7Zl Lnj5^ EqpLOK}݋Lbl}fhʞSNMjizRjGbynrւGs/5й[ j[qy˝F73}[ՐƸT=w+Vx*~43CEdӣLn&@)ts+QG13wܚ3ɇ\e[ ߕA`%ͦ};8Twz)JYN~oxLI̸]WFSo^p;- bM f,7l a<|IX@ ])߂ԛhzYlGɉ@V cJhBIP.)͋R :0hM~+|nx+mUrp 4=bHty{ScwtSQj|\il45=?jecC|_Y,ٞQ}wIW}`D 7 MSjS')Z#kL#YO:&FKws:>)O+A2dLNN)xE wNaDJLJUS:KITiʯ;RnyIՄwt"IIl ѳ|h>!dE2q0tP]JF6eȓ+z)7aCg@5>.>XO-)v.YjԽ kNC& g ͽtx&F6bHĖQpQl|$BNVR.^i3-h $&pQ=;,2p ]eP{|j p^&se< karpd!vEpjۀUϞ+#Bq!vȓogqEMo_׌>0">>~x;3/D{"k&›J+IuPd?Ǖ'0%]Aa wivh[||Di}\ KA{8mhX;)1m6۵,`L8]59vQm=5orÖkyWZG)YE[(NPE>in[ 0-rO6Քt$IS]5_}"uȦy|rGf@?J󛇿s(,۹T( n;5تxe?[s#8lX iZ֮dzɷ&l-kHje}wHx`0w*ܑuS|LY(mͼ x@;{16j9ఎ8vI04Gh hI˗8m0-|V;$PKW>#TM]fʼn6iT߃!ȡjHMaS@B;eoOs\hP8̕EȈ㔈 &!u:еP"L{CqqfG +(rcX}e.`kKbq5_i:A$Că3dEjO6o,J@Eӿ덩K7O{/)Az٩MٶoTW1a4Vy|aoRu|?\4bQ1JdO!/n\?Nܤk}P-ՋQ5,WaeYX 92 j\8g)ܫ|:T2bzst9Rw#rGBGmz$YY45oѴ߻{tl4m :۪ 9;3C{$/4B3}`$ xZ~Hikߧ(ov})rz9lCV$g> 6Ws3"]e!T>Ҭ·ăb7s{V.Nt&؍ɱ2X!BLɦ;'4!i׭i"}l80ofIHKߕ(jNs=;oe2$ [5;uJ1n(A| + iVFo(."pG/%A!vJ:j<ĿKҁS {`"t%@q `fޭ~<#<<K21󎁉$Cx3/+IӢb {aO5U2@, ퟸnG2yWĦC;O2XZ02K|Ra<:COE$ՔkҗP(oa8˦ ^g;J.GM4aאqmҔ--Jw|W'0: PA==v-~޲L 07(, tMG{>y9Yؤ&fv] C;wGN\QlcOf]Z~E 3*,s" SOÇ|2pP%D ?}{'e_v UV>ջbJaπ:dMmZhrB2M@Jأ %mDSyd4H}Xs”ISYCg q6eׂV4B^?Gcl>Hfs#^gM_ M~d!2<>2+u!퓰7%(BNY#҅!is`0n_Isf"GDx_*Y[q莹'&Dw~l~ VcES-Z7(;S琹W@:Ԏ@нK#4l̊ެ)DNrw@c!t<whY4|v5J3@ٶz,7Qċ`p4t-;k-dJb/UdF,ݤZ Vb~v M ~VxxU᛫;+8{\K2R`xob܇ţ20?[kiA6Ziz1[sZ]칟(j B'4Ӓ 9vA!g!P/"Y) Y I R%,kGE 4B∤[~e+fXiR)(F{N8"` "5㯷)2]{iԍ2K?#M6K)aR:vnf>ի IɁ6fG݂i{)Iwa%@C=Iq&43u)Wœq6 Jk,L J~nQ0L2Py, IB|pBf=PK0Qj9 #W%E3HH%FJVs+7KW?eN5mYnfH e`re4hIT_LnA9#d,fR#`d)գ A3CC>h:{uw kS"Tp}'$Xoj΋)R,̶eiDD[X{1uEPاL n1::{)A7S`M <_\P#QMM*LgY홰*b[s?~47?ۃR&BP;FFm, |iFᎺJ%=d!kֵ0 bJs*SQȎWe/@!]5H`!4TyI,YsUsQgX AT7) A:ڎ(kɱ<[]iGtsUa1^rDW]q2"%1j1WEm_d'\^TfK=LBr ͅҔώol65<#ts @:;uʑ@4&(yeVV9Ip!mYiiNQyF⏀GC7? (*\HJWQĸVS%ף_n=ɶY.oj4HޟvZ':]nW u#Ubdb[p'Q d;k5 øfG=, &)~5*7嫴EѫS0@&82ǰ5:AZ7&Xj $odzM5VF٩8?H݈aߩuZ&Wf.Di1Е*3>!&q0a*4بҿ/ aV ztGס`CQntl6|[|I,9> |ghPpO)9¼\LoO^+Ps~rpJmؿ2ſ'C(L&hNFU+a~, bN0%PюBA-Nˎ14`gis["5Vwوq7V ;͹XmXcqbOR4f59!@zj[Jam)j]I,~037o'i!莭"wz%OxG9~PS}-EsLG`SbV-AyvF |oL\M<awB`DS[)S)l@(M*4$hCDjd7f Ut {ZEcIgKLKl *t)U5z{^Ío*T sዉ֥"Xm:.M'6@ PDܱݟ] J~^=R*(Vl4MJ}TY'$ۛlC׃ !GVEDJE&1o(zEw6ch~H @+D}`eIVc,wKh-< F朝>[ k& a_Զ6pA"&>=$=2~TT݇U}Xrp~E{3EGDL[Tk- u`rRsXy_J[>c]t$!ەM^ve`ܨJa$Sdܤ=V[A /w~s}HfuM$k[Qſۚrw4wR9;]+_[鬨̥q[4_;%_ww_b:|CضH*08IJ'έ jѵ-91ug(euq<<;`BS8w( <{vbA?3_s VC$YIB6] _7R|jj~y0VϐJ`9Ei[4ID;bd/Z8,|4eڂ-MySN[Jy%[ fcW?#jcv9wLIJ`8۸`AgսX|e(2"Z:}B4S~^!}ZfZxECDVqԴ'j$KeU66wֆl1Pp1 jn+Lz&k]ե%? i6D" Y WFoD.~~{3HWr %:"QınTc_CvyD<s zJy ^70t%'讖! ,,k LT%yu"$rβ׏"pb<6C I 3O1{#ô6Aa:%\`ؐ*Т7u 5ӹݦ.tuI~#|Edzٴ{5]Ȁ+a RQV;/4(jkhHTn)ũv qJ*x m_936W@z%齎Q<.o~Μ4}$P7`q &L1rp Te?\z?T^6=QxE[<1.2hkГc{+~EUK'o{F9/@O5.lrbSRXeo:{r4%792:-Q5ΖºV[Zm톂\JÖ&"܄8!z/g7_m?Mr7sQ~:P'%tBKI*xx%;F|RSu_eM 6vq"eP/Lgd Ep ټ=rnK.u!I֓d)6+] jɗ&cm^D[;9'V$9:>qݘ(l+)WXK2}6nn/н"ϥܻHw) 4]jKmm(r~#(X:izY?6ž cneiU΁:. [}CP7;,o==W%tYfߔO_ R w^UQY<1X:Q{F {rw<t5 w%f(ւ&MA;|&ab_OC!ptmxY,d @p!Y{n-~ $0Fl{U} - $(޸{\ pW#K\ǹ@G:zh~_Rſ4mRP~)V?!aނSdD=JiR.kâl f/o/q Ɋod)YXl}zrWT8)gI/` wUrz DSjm#b{+Zv/ û'R8YNn[` *"= Ȉ5? RΈ Y&CRX[IpȓVT(\$\Giwvƌѹ968{7n}7o}Aۿ0pAT0R @=縡Xs&qX[g&aKPbHCt>]@?4\ M35_++fn?PQU6TPM8L{դ <~u2M{bIKk7O\q ]ȧ*94 @GY.< z`j,e*oU#gŘ:{x%Aj!?;H»AV$&)*&c6?պ xl,'V]ncW{>g/5|cPT.~ ߸&d'EWP$3=.RAZ:pE^ID.Q6!!M/Wsh >ֲ`WWPN[ة8UU[A:'S- 8Rlt\OxQr+v7O놌Kn Q|aR-2aR J;yuf; |9>q/PFP?8u^mUarSfs0~躹!.<$); Hݷ7塎u~jcQSi>n^ wEEݴQ%ڸNV!ZvC#(gJ]btŒgP9ZGݸԡq|i\tC+SeA;pQJ`#S&")~-ކY!ͩȥdƊH2duS_*uYSϢd6=jhG>cWn/fcfuO'IyP.y h`d{owƣMfqrP;hd2[]9Mt4?s@ggWœw W-N*Y0ʅ3b)\CIk9#B.k͹|`FU_:]R_uXT&IYFXlܬ׌X ѭXŊL:1&bK]$MAA* =v]l͖ lТ Bz𔽭bP/Ɖ^ / >(q[}V&í)\ŝ~ }c_WLH¨bОIӴTQ 2w$k$JA4Lf ̀5YZ 3a MGHKnL4Mv&lO:T . gOʀ:g.Eܶocyc5m-K2H1g*9GYcE@ؘ2 a;q +k̖%=Q'_[qlDTq-<;f/20`_.z@V M#rfäp ^'7PzlQaߍ&;UNQÈ-Zxt#!":򶂪Ef+{ca#*Kx%a{lg!8tт^ ֖E(~ H,0?μjif"e!!r3/J,y)ҿ;\!k ?~[10Uk7GXӇu!VWBG'Cuf~H .D^!f'"EHU! =?}'^ /wv ޿Mz0+'`B6muGlsF^9bo裥-NUy[*v`SPmnA!W(W LǙq !~ι\ l+pjNz/VܟeTQy쟲K5"uwj GMѧ$#4\N ,69ӫ_jʃ)li;)p :ߞ YL<~"|Sf?fN {% mdh*yq[uv0r.T"i7)wRyQNrg>ۃ~ \֣IRA# *f_M ;}.#}4D:#+Fٻ06 u;OsqmAކa 'y_g,h?IQb)wsߍtVnnw"<2_:C8F6kJUnUN!V d,2ocpjcsxL~ЀaD0̵Xz`_VfQ#б$5%ⰽ־">ucf ۿDw#^9@^bq4lCwZhV㘦yuVN?N6rsʊ?cg R7m;'?4kc_#&/x[ aihZ ᪼tIO1[@w;!=(e4s1I)+R낓cjl&J=DrGӐsߔ{čv]8NCܣ3-pkfŦ~lyd8=gPj,`=<`5ʗCڡV<%m,o3f>QUo^R7h95h=J!s0`% (m2/P|m 7hXweי@?O;G]~v-弆 *C'&؊R|W^.V}*S vp=1w7m6^G#pʆ`˟ .`2r bt_[/2aĉ0%|.t+ukgEQ:c+<r,6CbaMB(nv%; "i:g)ϋ?Yak9~{_iF]EE; l;?ꖼ{;^>v<.ٯ+bCSlCWKdi]e|g/:8Uh {\ut* z?^,W_ԀH0ZCqyuF&p߃ Al)mwa,@ x)pOlbS156F5ֱZOa_ԫa=ys>&4?kgU-(w]9*Tuw]Iܝi3581M!,<ݬe /%=P&{mᰵpOaS66E,(luqCQgnQ!8$#DFGs-p6T=;A ;F"0mSV#&r;*+AS_=P"sbF┢2,C8 wd9I2 $vX9DkL#;88EEZsa?&4pw20Oz߃"棂|!UГ{*bW0NQWCVwx$"F%NuS!2 -#3#`P{Fe+eY&.! cz$VAs|sُlt<8M-`'E!M59J=9gBpkjgnjQQ[Hf+ڬbe 'Qt`/[b#T$)p>/{4v҆`AAS!DDj'D g,;h$#pW&>Ͼh>Սifx3eU%lʗ0j KV΢=7:•!g,8H#mgُ ?=BOvk Hv2!NLS揚'y !55g<o%mg#%(LO5RClh\d0-& ^yE_6G5A!ZSdeO9ڷاOU^ǔ둦o,,bt *] Nx9-] 'H^IOl<'2F&q+IѿQ$dԧ t}ibr QZ{wtdȏ:.SZW)'n$VMkY+!f߃@ҋ-J_9S糉@E~=dMi݃"ebU?fM"Ւt#vBgXwй>Ϝ. D:QR`¹-o KFgo{uYB7 TSs+à n| IkC\x~$")Gܣ' ɍOSL&tLQ=3=9sS8D0@ /ؠw\BoDew!=&üEE%. ғk[2f ;l``wGnPL5ΚdݓR&IJg7`oʉu׶dWԡoV`8ުi36nנ^E'H~6:&F唊kWG(ޔ=-;8BCjl\q䁖|@<4s뎂$ RW*Ӕ6e5Q~jsu)ƿkdd)Ҥ0L_{*v,G$bs\U;bXy6 Izl8;z*pnUK]vϦI^saR5쥗GU􅳅FLt|FísuIB&H|,jуڠB 9rz+ְƜU2G)x͙ȷnAwq8@ahE^V`G{U&r,}0[>֮P>Ļ_AoN0,ˀms#XYl$$$wJ4eNB:\a{bhe$9Щ=pn!C$= e`OJP9܄g\Hcô;c(!:Ik&KO L4bHfV ynDhk'ʹ侟z Ff501Crx~%Omh}*٬ůYD&%|Z~^[8>3e\TTbԳs9 Ny5&}rj:!ǩEbbĞTYp")=rR]VWb3`A<%u\Llb>lK@&I{{A,߾8Q0..YXn~^S0]UEg8[~iF/SFsׂ] rĪNp\'X& x}~Tqf}XjQpcM;C=8u_tygSAәH刈YמKQy_iB+K^f[ i0k$uwX"iLxCGih<ުĽM?||__nTPlܧvm K?Z>[y(aRVU>Kg* qczEC!cDw1ZHF1G4T7:~i5$x%+.!(&PcLe}Up`ȉG7h_;s>?.S=Hy &>٦ mpxq[8!f56J°rRhv$&G˧|F_'e;^'MgV@CoB`ņok`&j␱ΜSvMm@RGߟr ֵAU{-9M򞄓AȣZH]0z[{I8eUJW9ԧ nHzҧ+ZUMx[sU.96j#Ƌ1t6\C KrOU U{o],jz͜UUihB~t<$MÄILTj){Ş'D>c)Ior/D qQh-.~9d>ΕSż͓1>blf5nAM15䘭nk3208~|Cl^s֜á&+Jr0$ՃC$xm5\# E7r7<+TKHɘ}92j!6'~EPA[ơq[\17/u"> l)iH^$A6bLvsO3Gn?Ә$χ/[Ct+!].ν' G[RHCRmo{FGƉ4˄@Zt$q"z߃b__ҽ%d!iYUe_Sfo h=.gY||lēM"9ڿoo[)]Y s@w3 HUɡNr*Y?<Rp ـP৆[m ./&%#܉_},U  <=-θIX1؎(&Rd|WX%=0ۈR;hjԄ^˜@?p$R ZтF:[jJeڌZZ>{ۇfJ &X8Q3 cv61;IlsIpNK ۍעxl׀qiI@جL4ҵt;mYj7fTb;g/Ӷ<"۹Nt,H(aÏH^Lx=זWn&ƊУ@ PfuBjz"DUviA44FeU)/UcvGh |vA0R?y$@ysB= e:F;T8AgPK//Ilo}T0-MsVxbbq'XrUxmƇ>?)=SM| %˨ڎ.s]G g!Ĕ#,:dɑTw.nm 0֐Ƹx`I2TE SeyɅ7яI&&_~7=VonQ<5|#u$7xVea<ÃΙA]X1nL|[aE#[kX3 2O@F_PU *\CZWhGC``Rv&kC͑h2 ~_^kiL՞ټejB Dr+ *Җ[@>\$دTaZ<-r{FHXUFc.) XW/_$̷E|S ) ?kr0aFhk^$7*0S4Uwc,QfjAi |++41ט^7r/zPu"/7i^u0=&^x;,uYkib}3Tz-y 1``0BƬ^Yy-~+SؿK.4̮ =X#)~k"o~P)JdQ87~c}0?+4]HS $5k>/`YW *KбRЇ7rcS(R-`)@y[4k:X~ ۸"ȇ4] v1/y<= 7hdh-+.L^搘YkG1nQLhvu$\Dp ؊Bmc33 w.y߀rig>pZ|6` p1+'er|̋֩ $ EAwgO/*|WyT"W3fdMՇo#'U8b6DC+1qGi,#hA8!VVKH_(/1yS33]F+W܂Sq&wܨ(SϣCi[ͷ%q/qg Ȫ3~MVDUV054oo궎|zzB{dh) ꬩ(P3l ]b16)^5"@.҃SہSyNhNZ1nG++enq.\N4ph壏%zX-g訮 .K#ጛ N=ߟoZL]i E_Ud-"-QnoҶ/]$ae\;H81* s|ԴMY^h ;45"_ Eq/篤dr*1r՚u#F <jR3~ Cp}|ZŏK2% wHgiuG v弿8L]bl763C QT<͝홌%=i% !~&3Nܷ)=[2l?;o{!G@ٿ2 GXsWm1B[ªN)Br.Tޜdyk@Eݰw \IBQpjɟ>ʇVKe:u0>ڒnE踞 ~a[ 3pzN,U$-jNvf n#29O9WUD^alGB~ q(t!glϸ S﨤JTjQ+'vSܽՒ}%@,'ŮAI  ea&DcrY\қ"2@K k_Jc, .Jk'~}\['fHuɆc7YS#.D `qݏlj2#(#La}1(ZWYFq 0&yTo.!)*ABAM4MCI cɎ`KSg~۾U;‹2] NcmӶRDfa 5B@apz}#9n^=ýS jJچ΅֧"V.%Hu~{֡Ŋɼ*b_hs9;DP-$w^LLeEȽP/sH R) ;$~şɖ MP;~Q0k\*hٟW`">evz;ڲR=HJQKeC zפ`|GJy[5 E^"KEA i?m_̹8HLX_+ž5 |W.MWE6 5-?M1ag=+7|MY8$%BR_a pb> XO`_64$=9v5$A}]",[P0zW* Wn }zg!TjŤOܦG:PO(OUa(}d%D62KF)S)W$j _NCzݮ1oҵq8,Y]"(3~h2FYBs3u,\ h6ȇ ]lFd`jB6/:LehKuuWyv9̗  .qn$vCE a_[9Š;=JMZq}6B9ݪ(jd4X~Q$c(t8P=6`W¸`G ?5{ ˴kՃNUez9h !ϹlxؾrFkGEKfx֫RH⸐? w{HG1I7 'OZP"+@W % uY‰½ b:B.WIJm"}s"_V|N"Ѯ^^ffxLho}S|l'5Ua\ |%t Ft"nMMDTp!v#<96dnbr@V;A)8"80M nif:o[” fCִMe !`Sy{Bة#:N.+Lja+\Q26P_kO%"gȋij Ce^SO sYsTp4]\&Sh݂yyu[H/':lʏ|§^E#Dإ~P̖ջ ,ZiƟߍ9u B|e pZ|gWz 5Hy%)b?"Wg'SĄ~ CJQ!.{h5A1Rm:{Xd}gjxC)zZt*v96 '_n'\%mO3U<ڲPΐ(ԨWh}WCKm24DZ^FDØg,^O,N"Q,[ڇYqdY `z8BdGdvq sURwZC i3ES{*␝>|ZdxA*B ޵PZlwh" R2aWvG,%lj9vY߬TG-)&xƊerJf9 @m)5[7p<@,9I(60xS9L!jUS *NyߢRVG?.h.6kݰ ;5/Kk\t>;#P_0Ǵ"]^HɅ ,,{G⎍F &9)/n(pK-]i̝}QײgDiI~†[$[m.Ți0q^EqmTcH~[R.YQosts2/SHB/`9ªj2Q;Ӕz؇,n3X]߆١5GqYKawV񼰪i|xOSE#F4J Lv(<8\fq<@_cFG>r58M)i$O7c)KcӁ@6o}tiqew0P㷧>eZh##Nu3˧|6 T_旾쒲,Sͯuk&T3e߯ q"gk'o>;gQ]~5dgY .3@ʓFޙ&8vѱ n6A9~ iFblƯV5J*_H"㛂FI5zm(0.B5b |uT"2=yOEa<0؂8*{e| Ki>0@TuA7>?z?R$11"{)`M%B@X s eYcrhT >dOJ"/Gl[M p}ykVx-R„g*vm+gZ=![pe\^d,4E+B)Tȥ*|.r~&L~k]r›##hv}bT$mϕȣW)M[bFO5pGF?4Q*bR9vBTr] B Q(|ѹHK > Y&I^z6:nwgJA+DޞEf p6Ĝ?{֮ mRS@3Tܱ%3 \!;nDKY_eKrM<9[9 ڈ*; ,C/͖!6Xz+.%P*Pdw~t2x mK~~?MW\eQe3w Y3q?,ǔ:{xpp%YoxXO4U q>n*o4[%:&J*:KIxw#tfɒs%!rm8 Ѓ\`PMAGr.r1W.n 7f|&byc^kv_oFk=M^C» Q& 6c.HU`bcVMZYA/oʇrQ3lqQ_>ƢZ.|D<"݈EVmiGxWjl@U3p2Ml dr?3 rX|.k};^+.yzg"vǃu%TYs4B'RA Ȗpgw,r̡3^'k:DCSfnY%Ig "M k- Zyk 48ݱk羯5vZ&l~D'pIQL5c怇vmWؑC98dڑ{5#a|N}SU~Jr8OҜQzl*P8C.%fZ$p* DL?5/%YCVo$x[E#bmLy{Xw.㩊!H襵2rpen]"% 8t p;z]ژ>9ZO%,0` C+f5tq79]ĺ芷V}הy8K[弱PZ tL;8<0W ߏ!I*/]"ӐPԅ4Am`D#&0+(awfoXlPq-DzbbTODN؏؍|`ҷP;pd g;' >Ł#Q,Y&Z埋=/E6@Ҧ媺 sbh G(=%;=4wKz3'd+KI}=Iz9;WI@s8|s!W.\g\Qj!Xm6Ρn4apmYv_oQ}s H"$mU9kųKI0',,"BgNb}я—+L%V:ɠ¥{Tm?cʟ3p`VSv¾}cz\kcsX3Kskp(/Kвrhj^,QCi#GӅ;jkԪ|B7G/CZ y `T3@PصmR9 iGP[f#b%Q_`|d7h %_+ւ0CplO,j.|Uw:KVg 5]c-(ׁiTCohN @-BP%<*lY!} 1€pkҌ%۹\&;L4弘s0z)LyNӶ9!S|WMG|.'0 rDt&"|IC)#3Ec-ueEch00-[b]:cQzÍ !(qːz4g GPw<$Lj*3G^:{]xc+!g럿m:%s K5I6XΖ!+]zq؛j9 X}_f3w,p:r('{ϿD)/6ʸU06(fQ\/SqW|~;HƱoPF!% )UW [ER ݾnhO3.L>46Ua-\Ϧ^ |X`z匪wT*IƗHLZ\X6#fJi*qgDVee 0œ?팰|p:*n7b]hRx\N.ǐ8Nv6O;nk8sy">=6%ZC,TŽ Y^ ciGcN}EنDp.Ijz)ΰb9'T$o>,F y'.7#s n?Y9e,g9#s򊜮ӔH%T6BH 8?~Dbi(fd>%@`Hh`skt#1QNMۈ\Bl S?NZ~ SWlKHuO1ݺg[D[}<-rX[ET+C `Stgd`QVwԒU/ X O_ӿᷲ|F4P?1ws% 0vСsvuC@6փ8ϙܷAbרPթ_kYs w7 {lC1T"Ֆ3FQ9sAP0>o涛~UJg 8m Ĕ)TbWi8`ɚgce ߗsÞu|H^-=VKc'"˿:oƒOBg3-̐棅x?TVO&F:e 0CyU7{G!cX,r㌨, `OZ;>c8f48'2;<7Ϙ`~{voyB-Eb6NDcz;ƷoJx֠H:xa|rB] ڴ?q5Y]7n(Lf9s܄Fl HnEIvsD h*VDm_]m< 2'?+xvԐPH Bú94628q-+$tEl10p9uƘC14x`FTSb؀ _}RR,i.4$HR__D PKrs;".T m>N\)/-(ZRYa]@%KSWx%`Sz:OIRLK"f?f|)YFZQQzkx]{+@ K$8kiHy0C(Ff,g .٧'y%jWl v m]^c!,c_ЍEIcj*C?kXav[٘<L (~ٗTa*j {T 4H⥾~HNӚ768ihM 6:ܰ5 f*1?sS~6@up|ӈUF!ָg!۾ \gni[_ߞПkCt(2 Ō|^2٩4}^G N3k0Wd [{,AFi%_dմĮ_^$h9;## FO Sԙ?jt7Q W xX:brr x\#ͳP}&&67xwQA (TKm<?(O:vxꡔn)95@OX +X `qkg]2Ա9moLwe۰"(]tRLe ̾ç TjA 2@lgn,N렻A3PB\QoϦd=Je8>7Vxd=F) :00gӁ˗ŠoMGsQ,#"?ܠD7e:Ro3TA F`.XwK$={NWDcG}ja,*mͦ6-^!6`DL:4 _$F<|aG@օJ q뭟ճY5Jћ۩zj8 \Z2fnJUNq s*@M{.^BB{rhQa+:poih.Wny34.l3#YxrƶVe?5B \lnEffݾ Ĵgf)2=t?W9k(xe*b} ?Vy;Iҝ{T7=$6G q]4M "s^w^\wEѫu~AH(yg i8adCe|,Hݵ_HUhNp$zy<")dX`a+|j2_^tO,)Q^(JEǨ~G >]Qr QLU&6X|~EKk-;>X-‘5Yfwީ.B6D-C}{f"{ d=|85!%H;د^u%h}Gdo$÷y 97kt#71]OkFox\Œ q ;EJܴqJ*m5Fصp.#[5;*ި{MRkQi"?\>1~D y=0e=& $]*ş/[q \/Sr)w ZǪVWQ]+?@zN%[?c?z|ǂK/eB/jf'.4ؑ؀ @$RYbG(;TdU.6/"7P-"Rg.z BƂ,Ʌ^4y9M !'K hBGc%A}Q@GLRl>Ŝ齖^gQ7JudW--#(|#RWY㾦 \DeA&_p5jX%~3A2rIs4,/:nߌ"Vkق"8X "@6鯐ZÐKF 9<K% gdAxVM]&<ܜIOC ͭ^<(K2 yxWo1j$+QASS/'X+qKj^}0y>v4U>sEÌԷNE Q ݝPY9qi"q&Az ? \ɑJ^tmd%|"! d)Ӟ y5Z2fe;vÅo-sA%.̡̝ף41ջooCh7tk#j?[JV6V-^F9("$ONӂ2z/|sHN( Yom@pmu<ݵ%L9x`Ѻg֐.y_jcg!pp'8 6EZ?m܉ɢMt d[ώaR3\7'.mHhu0[ bXD%-LcHsvl:7n }ڴ['0*z?杽 UNXEM*0|M~38yt/duKϱ֦+N;ሉ<%[ZHd!_QR1}n Aa3a N?Zl=#©HWNS<.n@oc3Ӊ+un~$%dSAM@+'~&rWۼgW=E`HxBI}I-rFgִ{֝$`b܏$_? DZMؒS)D @7E A/ŀ, $y &&S D#BR䛲#'aqN{z;Cv,MjwV˯¾y~ą9̺Hp&X9Â+*&1%֠P97~]-{DqrUUMg~@s`ho.b0W%B;0:&f5|];u ۊYRX EOCqṞ}$Hz}/~Uq:a1u0sa\s2H01l ֋"{ J)NmgA*`]^E/3vUκl?S| 쏀#4!P7! ,̌>G܆Yx-J(~`^Lk65:D<7bv1_sSi}#ME!q>p茿ZTIVu^Ue`fUmDjGz6=/R] d_KC8Ǭ|R +l]|^M )r*M_ ~ gL9BhOMȔί~/b!'5-כcΏG?Ͼ+mX-}f/l}s"H`b3WVT]K-d-}>qRIe}`hxHp~0u5\Q?3cx+`/Ms$} Vl" k ֳ8+lGNjv!ZOF"R|-9%K |hݐxw@_w6a=ʞhn_H)U2kos]Rwm7q*K/>#XmxC6tB#nk{9stg.KDBֺ!(&[[/1F!GS_BҬY0@"ko?_PJVI7v G.5d-A9TsX590@G"@#HLơ>1F= gLc0o0;4w,6J ~,7Uw:#^-Q%zSEQJ"9)y"@EŰ .U}~ kg]N5Iq(9]'g` $k_'3{hHIVUƚlSHqsUvJxLaf:RB#ꅧGrpN nw;WO0#45zȸ΄֣#H߳Ӕa è#qQLQ }^`;j)Y^1]plymdfwF` Ǔ$<4%'LZ[| HFM =Qa~Ә9!\F6LH&H:02}O?CTnY>n$ ,h9MH뢷t nd_HM :SM#e8lwFZ-4%%e[k}Ω!8==\4M4[!ϥB孳}׵;VNGFm|$>o1= KLVkc tv8/|7H:㓂o@7; mXr @it^4u|gVfiGP1E!vup3@^'9K ے]+&u+9w v%ƐB  .3Jy)9{G-$tk*=vEgPZ ,=/]_P%$mZ3F3j:r}%NYD⩷yŪQgcanjFC _z{eDT.1(g|/he av|uh/HU> :XÙ(!Ԉ}.}{(Ͻ{wHN^_$ZCxc 5uf~Jq֘ea'sXBƓD|`fRT}ziyks OعYnݝKz!08c2  Er9Xh ʥm|=-((an8pw׉ YZP`J T|}A";)mBt "NjfzO2L-Г"םID]؟bGN4mʺQ&.aUPLԙ]ȏ}2tat2KUkrUs=UZβ`N$^.I;iz{q* f=C_ԡ۶Enmc*}Akog֙JT mAP'!N *|A/ X_!RR;<'!SOw.}j5@?o %mѤ }YB@CRtS=>ԋjWcކ]˙Ov.\&EDbj2$*H-*KNUѸ6yqovy+3K¢)FKD40Iܶm@:%TE#fiizG8(Fo*?$+]Y{H[` ޠy PIMNAoGzUdcL } -#wfPHQhVwj wMNf< 1WSk\F%cnЛq D6|sY " d #4` |CaFp @^ZįMDg U C#\]ڿzglࡩWZn LrI"/ Iҿ:j"FhК&Z֦zek;u)7uob#Q-v21CoYAE7T3}2B+|Ls-Iٝz]:pq$QjKcV%5^ŧ&]bOڽ { ;CRANt[rfsG-R➓X!Yz%ԪkxGhN*h4> :yGb'igY4-RHCc*@~[uqaMCu2k2J.Jt45̗B;sF?ƴ ebQЧ0ύHWc"\ [N'ʄl/z93!rYդ/?L=[C=PÉ+;]d!F8]'nv"Y7?9cW)(-Wlg(w6RA!&]f?\Kgjʲc\se 5!isjH&v>%74`Te(:[B'; ׹_T# (K\0G8MB< P`v9d[݊jJ@Ь[AQu''[IJKz vJgG}Ǵ`~m< OzAJQv}W@u{^%Cɘv:g^Sɰ] Y=2%Zհg<CTd,f%"/7ʷmNS|vuy{-*aht][ՙWCDa 8MZ!Ջ-#û`m%/5$}d %e /c5ꄐ焥T8͍Rʏݼ{dq|"(ݿiT0#A5,N̫ծd|sG >пdgN`ٰ[IV̸>`{;."ˊdEbcW{ ~Θ<,~&dH~LﱱSk/q()XeZWˮxPPd"`|Q ю0fn8|8ֆ#yTe lFTS]/~T͖_h\w (ąi)'$cl5 j[W?d7]2ěuI7@hI4h!ox;gm /#)@:ScP 蹨B)0GSLuYF(OX~89Nr[zP9'8` TIIZ|qʂB.vv؀,]nud1Ei)Y& "~Wyh{*/㬹 XLUQXT.}Y8݅0Thd! EUR3;N kf(MO+]MfyB&B%{9jN_0şڅ5Vk~/^7/ɅF6~kQVA'ӒlFk껥~_Z'^O`[ n[)k AsQN䤍yc+ !#z}uݙ6PHwPx0kp^u^\n/cFp4;bpĠ֎l _Қ݅1% "r.{ީl;/GiL&t,ime7gfe01"СrgWK8˵޶BNhgd<[ړ׋zTDoW jlzn/Þc/s͉6PLⵝe^X(g,U9SՍriҼsląwԧh'gl5*csW_wZVFZ, ׻! K1}9yӨH7ugi&W)\/ۂ4̐˧g-ALl=l0 {i,/ *)C D<87޼P5F@yCp*A=.\-{%ݍ$YMoOY%ޝ./׌Dra[9zyp1%Sq_ЁY)$刾t 9mj,C7R m0k0 * |g'qe v?ঢ3Gg%-Ud+_O3%ڇw#Eg3-CWl 9bE[B Q< Բ L*DzL]P(t/*,X甙"zMBXppAhJ1A@K7+/,9g| FAzXu}F `(R>Pߍ8ncJQY-0 *˂K:Zuem{%<=N8LpYmAU ifO:xRb wY&ܣn;m#K,534-5dsZT /LڈP=c_Jew$G~nS(OVO*]|pOb714@C,CM !hA` 㩖Ԯ!@@oK2R. 9*뻵JI LL"D T'l-\&E$RZL yUCQ*xk/Q mwLxPm>9fd|DI'2M }P<u~ߠ@# 5fbA;e?d2H>l~"ne!f\Djjz@u,ޡ-#Knz*`ViHD@TccN&KB`y)GV#Mt_g_ቭģƴRYǴϪҤ,m.RW񫸘vjR0Mm[ΥBqG0yZ^cǍHLM3=1͇*I@g67MIr^}PzowpC 藑Am~F(4i憑>FP "bkٖ(X*r"o<;`:+vO=TԎ3?kn+XBVml*(n+(d&Aq.}ݍ ^0MJaU,~Qn5HӠWYEXψoh wOrfUgǿҮ7P1}ʝh"feYNjDn]_/=yE$o~ 7WܞO(ԒU2lv('ey*!$ CACj yO-J.kP'Ϗ$ Llg--^-3QC?(My+hƑ?F]D|7Y1*Kzg~OOcUFg1y  Bn{L&!HXbVlz!kjWqYiƈ>G!JxkAX-'b[@Mԫr7>c8'ͻv çVZE!y(.FA%zsF {{?Q;`7%'dˤmPtM=`n7 "%uk|Zuoz$QP~]#!>d؁[*Q7Ó`A+X0.m͎?bG o(h[#,C0+Z^Wc_=@qq-vH=pR]լG+i3/?s_>0B5R7|"yބf,1ښ1$2u6yl)jCl쐪M%5 iz8[dd4CČ^M6\"^zN`~V3>@ϸ;tPl=Si p>7jZy5~{F 90ꦌ8ϻ^p^s ͣ[cf%_+f y xMU] my OwY.v6cF]aݤM={vs 4C#(X]!k 3Kﴒ3cjӹ)+La ҋ8qg["w;.Naण[ȏJ.#rA (f)\:W[&DR@`&w+r^ٔinpwmW=UyJ܅i cb+):,_-rVP#X?I2~OqXl UwiAJQYm Tv3ɣ^ bƊ YϤ'3coX>ut'hKHgR oqfs1Qǭ&vYTh&M{bOgVA> K^ 2jrj#-~$,;]tv'_ #.\]]CZC1K{E(SakM G`8h&x%qEpΤٍ+f{O|W;h1L9D]c<)8"!$j!g D {UOE*oޏzU w؏2^,Q>*䌔 L}f(l>czH@(3lZWE'(z:fa@c)0֔N]KQl' Y!Ix Y ,J%N+#D))n8HRϊyo("#cS*b]֙ykXȜ-2wWaw7PMMH,&D#PmK}]\`,y,nmvYíAs1k~`&]"aRt&"t;2ICJ!cK2KFҦ#M[b(/ ]S.V 70!~ ӊqfVts[sUB'T.^-]Bi w.o TLlDqUG2ݓ %OBH N %2NT/ތ <P 7)낭sa;!4˶W.HW(25 |c=cNpU1hꭑUJD7i\MhF_4B3a|N)Y{Evpjjk?"BĘLAbN%6:ū;`sk\vjX=Vެ-WΜ76Z@}?`x* ngu6>S!iR)k[X?39UZ;0fاI~҈lZ:M3SʀoZm5G4j" aܩS4%p⫲=ʤNvV >G$,"a<_D q݀Tu}$RZ'72\nBļ l[)Id|f.ߦc$mZG$eT#_ϳ˗dsl=6.ڕR eX=gƩ1BJAw<څO w{pd3Ȁi2rmH2uQ.z8ËpoQ' 5 ƚnflBC3qS ,2*7a)HYd)Oo%<;Mb0IgheQtcej>K$ Cx>dK4|De!Ի)d=!/w6;z }C&޹T>VktwJ?r<ϗ -PT9E`Շ!߰ ߯g}lsS+>5ʹq/V;UEf/ls;1mB|A<}}e %1!E 狎j mS-"+YZh]LN(*{F_|,p?Ĵ_\]Q|D]dz!"k9p+#HIloZLlLX{cfw{S9|`[V\+D\]BJߦm<2)QI_h׊GXCzC M|߶*5?afIx bd̖WLd1~I?rѴ(@xT> wS?*noQh[ `itN5[ٜ˯ }-f^^szi}̗\f0Ę s_픤k/(fY{h9SR+.>јP[Lɐofz i.#\'ᛱLǻaex"aC̠מQYyHu"v?t>"f]W72Iљ:,Bu3C( C4G1wXUk4fwrvAk ÿ;z#=)VPe9I&(YJ5 ͰL:BrT^ަK%d*?E8ٕ { X .X:qd[ѰJ}ȗV8m(|C3QbdTWe\B)խӃYmzu:xy9/렵@[y Pn0%`|vbꁕ=/< S4_;3(4Gs-=Y NleVeKQPn<ʋAPd"f4$ rԁ=s*,hV&6)׎Oȥ P4؋'Œ:R$JVaY+= Yٛ8' :y 7gTo!ZO*u\3NCo-|3<7U`q,vzJ~^k)=5׫\?cz0Llp.0+SPd2^dT5Ԗt_Wmk#-`4?j͓w.Eoa3c7dJshuB5Y#!N2&.^E|~k7вcez'P>OO3ó^Ub)+L8+Vw1\~"vM\]ǀv, U;Z7dE|GMsd^qbzp/.}.=.j m_$<18qNݞa0VE Ɣepň?^mzV> E7gs~(zJω*o0E!m,H|҃;ƅ? 0FC 'EA)~z.cv UUL:g)n;_q%RdbڂH.kAfDy Lf8] sbJ|՟-5uR)M-4+g46#pJ$RU,iMC[c{V2R \mxIװZRfr8".%8A`?"7[ILjaklmq+lAz sGT uАf Z3av*<C+9!չ[EMlKeRa"K-FǹX$4Φ% &6'W1A\8}ƘBgP5* SN,}I2,ܯ%/\j>f2JrC]lnua=hv&Om%sO @,.uyyޱ@ AT>ecVџ7l?S͏wp%*zĖT v$BWzA(ЦG遜vGա`5d%i5x H9eDa3ؗ_ fٿ8e&E26Ɗ)Ki]dyL+jV6 fG> xǪ?(v?pHLąݣ_iWq+L5nOxdٞӳ`#]b?iU f$|Ӟ ^*<pb8rrH14*nˤrfgq x_n*cLva ǔvx*]5c][~MX߀hIe1\,A қ ryu#m6T ,ms;$zR%褣3ǡMd`7sd6g.痤SN*iG䣦4v< rSo$%jjrVW BH[anMe#sSR\~{ozˌ'_,LƈtlM?LʩJT8]pcwx[`3z{6/tT|̆Q!T˟[3UoH3@5P1tf9U@J`OZ5f5^b8H^4~PGC2\" Z(C'5\.DEG] v Al}C "38O)Ck5ٸԹܚ/p[V51y$\1OĊ"?T_Y"NPA?UIszRM廚Wh5.YPPG'8rQQi# >s@F"À,PӶݭ FS~d_PzdW\jͿl?I^SE{*N ؆& )jp>u4]ܵÑTGLъN5uVxAftOlBLĒs: R)Jup6t* C6_d{7湺8'"% Q4QS;(Su"j/ 8FQohGuaI'(ަBÎ}`rR휆,HܐB7R, FC(@CE3!XtL[%{-BML:o.Ҡߥ;6'D>J9ŗ;yĤ/l!oLdmnɯPS#"r]tɛ >4AM=7ӟ8P]s#I YMF%(ؾKl6k(YBAa6N54 v_xa1Tp3nW?갺T es&vW4r=uc^v?-N} SɇRC_ʧˊ Zr >»iIJbbJ5o/%tCg@ OZFA)q;Zt,,2[0БqLQpэ wQWXvAB'j-}b۰y&RŅNY.fcO8i1%d07kdL`qGߧDel g`Vuhu@KqMxgE&%aDRG'֙'b4֛7чjI#$f.92s <L\W °?~&-NJjQ<+TϿj>sFc G'kYJ&;Ff7Za<#i32(}A!7Řx, ewx |0cƣNfx=7@ H_ cJ$2΄j}m%&o(roM hzW޺ /U'=j~EIMے1+[_ҝ6;+4pp݄B7CV7Iߙ*S4nEק,4Y~(oS϶L1*B}4-4O Pq5˓*ۥy>.is#^$a}u T4Ǻ BeԨg@6hHJ&xC>0pN|iRv^;|=Pp>}4_k'LI+>ưs7x|PI87Hٱ׬i SApNoH)0VMsEtBRPVgtȾ*P\tאmRP 8-.`4Vx3! "v,rpXuwQG^{^ 3ktyFZ.<WI[?4dzD|)T=ڞkPxJI3ʊKJG65hfxoov2'F"萄+:0FLC dB4\82zvÅ~r)#$3QI;M>FQnC=- s8[\ΗvHt~r}1Cіvh0rط[DG=)SwZ{!W . = ~M l- 158ovyvXMƝKBcMW*`0hքh5йOn4b V˾~,gpʽR!Ep_q'7gDq*eŠk؃n>os+`2C_]m!MAoUd\{2Dz;2 o =x<^-٤s2i $-v 4<~cor4-u*>;Ex{AcM`vs)JlyQ`>gio+btGgsMvm:^FLT?" CڟTuG7#6E\/+`*h?%DPcώPRW}*F5zp\`I [ ȩ[.'0^.@s IY+Y'9dEE^\a٥22ZF#xZX "[nYer0vګ#,}A9]e-3NIK7#|i١8طIDƒi\F/7S' pj//snL\3W h;p+vA0&vo!ȅQ: Yv4*t,]NO!a61 fEU$S#!.߻UY%oI$ח թC:ddwX8}NPR,Spt>^='jn otu 5X6|OEr F ?Fo 彽rMd)[u)@q*ƟQ|OB=ٝkX*7q }̥luKȭ¯I_ Jwη@1T.Z;5,tqyeh@K0 \v/"GˁP/Ko|uVÂ*%n7 ccmFqWH6QxbCy *6km8tE9k3'e͚훽/|hkB)>Ly׮y oJ.N1odtA:Vi|tU8WCi`oQx +iu`:JK˦ 1-@ it} kkS%hOV!QU 7xkaMi9z5YX!bN"e%и2ª7s~qK|%-O$/7N&|HV) H_+YGIr@MgYF0WPDR_# @mq'4NnvR!Q֓ܨ_M P(HFXp[eRR"#c4.U/P9H<Sm/Ania҅ YyHlnxƴ@?P 6zyl>*~o(2 2] ŏ{D$(XݫwH۶xPbBR X4DÝK@*sx_aN:\Uq2Wrz7aO>W:j {2N ՅufT1.7M 8KJ>r ~nw1'[*v`=`0-50e"gMckK\9|}ri6ɥr046  ^r* -ag2ڀ{чӌS{ЃrL'D̙WatzZۋi[ >hn?`C$jk%X-b`C6v[)B}iNˮf^Sb<;.c̥kP㆕woN" oRr@ԧum T)I/`0KҲtu^~Bl@s![^R0<*t.3jv:W~l\[b\K2MFfK1[Wb &QfWERqm EF-zyؑEM[6Kk)/ 뱍V.4U}ە? XlRPJkltugJp+DC9'§0> B|◵Jw"L$~c'5`|ϻ/ f{9X^@(=:T +C64\7O'"|w[~c& e&ahM seBe.Ϩ~(OG@}w#7L=Mņ #)s}'GtY232_Ƣ`32?ݱAX & Æ+RX.] ZN..g,v^O~MeǡOKq#OFq&iQ"^V x< LhIo!cy«z$l#v!<D}OQ7C] +O /P:_AlRe |ܪoH܂E t`c҄`uG6{ ?Y~C.N=\E/ IN'ɣ3,1ߟ@0Gpe?AE5yd(֛aA޺r L)R-L渴`pKq\fPh [w-pQ{14n{MVQrkƦ!! ;`)2CO_|gJ8g$ur!R{)vܔē(bdx.L  J'@]o%(h\p3!% T,ymg]+~H?Aif"S{k[dz.b"Iefl(oOg!%'b_'6 Xg{<rdƆBIk`3 S+v⠹i$|=9\ShCfw`흳SD' @h2֑Uk`[<͌ H`"-2ԸH}j%z^ yB RR!G6o/cIz]&N}cbᐎCf$Y#5Gu5_UsHrb)aaAbhޣa65ʪۋV(:Jҁҩe p5-rez_3ޏvb8a_g%hs[A#-i1I;a_ {s{ g;2U GȱN{= k6@L.\hdi3Dٻ@m-q6#Luf(pNu(gaͰ!ߡi  nD1f] =OCu$S\FN`,`Vp^hWJ?8f&y$LA1$t2WY䰑n}1n Ga0;RxE(/Nϋf]vذ Om,|ĴYǨgtb/9x92maҐv?f71&!5>~0żb9>rw- XDyUp\ӳ#CX8`- ++iaukG34H}ܶ`M{ C,''cc} Lo?c݊V gcf&lйy%V6djt| _๴eR.(a/p@2!ɜq-'4~$E. vYyupDM,D$ofM-e"6A˘eyg} ,x-E`@fDD,)24vq; 0!^B;@a-x(ڐcD.c@زؽ9=HBl_d_ԗ>emUir}<=VZŇӍzE=gaKB=F)UOy*1o'4Ɍh(utF,Dž3 ~߀4 hf _)&^6 `;g-N!9"ik{B[L3a3l;_F04R.5q0 $*؋"d.11ݚ<"l/.w WcG,¢_(<6\~|lY{8aAbwfRbl@*6pʓvw{jb̓ 7Cv ]}3vKVPя-qqTPu&:)=d0{y hلN'Kt뺴ιp V=Z.tM1[u/y#-<ت2R3OyO%̗\ssx|r7K:g-E^̎<I6Qm'.hYe "U+ㄆϯYlN{JM 3![,\׮2S(C 9IӸI]Okk09L+/`&2|KiXn )v:A~䲓a7ꋐWJS.IG;"WvWF&kizlFݫ,;?Գ=< {3 ?d́Y>,2zXz>j$`eCȀP"H@;9-<o< ZCyۆ:Ǐ*ga,'s69mYN~6\֩w'|at35*KEm/߼zOx睹taXNJ8ԟO4zB>P 4 =y˳~N?!#@ƓSG,4 #0%z)jan#[RAfP:7 zB"2IB`>@h-&7 7}ŠOcuMǶf ?݃P}f<%ty^`HX$,^A maKr p;p]W-lG׹ (=n鉣"3s Hv~[բ=7[1JC%1"=.ʀ_An4E=.;BRi~Oɧw1+= S9 +TY0 l~YCzTHcˉ[C _MYF[ڪ@3#[T?y<ʅS(2^>t.d@Q ]2^]ZL5+\mړ=N?Kfz냊>J.IxUjl\l&/uOCg?D>> !=c=߯ζ|9DYäLK#g`PoO8N#bl Jmy3[ewF)S@ZOɃW3|jFV uPuQ> "T@oJso_|dE)ͭм/\mJ _zc7y]I)o 5:0eM{f_xGꍦ$gf=RakRa++d7 2b^|;a:@(f]1H E?|RQ40PO6WR-Ѵ`lCHX!08!LjDlK)=8AVZv^.QiX$ * 3Sg&;}IxVS3teVG} +lm$v!! ,yR*9ϗ>6`N^ҫhE#aݘf9(^]4K{$7FمPREǤbSR qc)@%'(697sn0MݼԂS ԗbയKBm|QQի<ž}=&_p$uȞ`m_cS5íM0 m'e,6Z)>`-x{?{QtQKƘU0Otvdp.TC"7(*l,z`ȱ0bfʁTRu0FE58c%,ߣw%yk\|O wCSM`k Ne$Qv3âzӒF`-$OJ,\[Dҷ,Ѵ_Պ$TA<0͂'kh(ĠY%wtHNА# 5 ?lט_R$a8 .Uu2t5ww2}wbq9$CnP^ѥ r'Wh'ٙ!baw}-`jȜ]bV`̚-MPvhriu>+"lbߡ5gn].N(6*{QnGPHgXmrH*6c^i+))rE {T/*^&3JcG3U$YvW0P&!g pX|`ɮJoPv/MT C'XE晌~NgFK#1P;$a2V"pVƎmZh2(%e^㎛*cjZ0HQ cGzFQjKf$ 97ZRKB6#"~}[ƬUI[I34@qqp齕4bmb3Qb{SxT8T'Q@y?Rn; *Zz5\Y,>Gp$I̧mz Ad -b,mɈo/ɫEۨuP7xbMuRUUk{#E0n9rHAi)쥞jA(𗏙0.ֵ<_FQKԄ::ʟB k &Em}:X AGjQ=0! ̟+=ۄۛs5fi{v0Lo@tJc JtN2OHacmf^{ 3!KfYśX([FsgW4]>ލh[h7UțjN< VHUmnm>^-0.9DA|2fK:3 Ɓ-f[.Udڳp6J\^LF{~wk< V: }*8 {(f$(!Ԫ%ЃR͋Ii .nK.OeSK%/pi=;Q_X+اOG~|&5h@Rj_O :6_Xl,1E^kQH#X[~8[Ƞ c+ajK)b ^&TZQ32 | 3]\bB ÔIB n2GZ:(p@t]\^|B،Й7I@x_qE띤n.0;n_(6S蠠 ?'\}YŅs 7 e\NJ8Cso:O3K)d%޼8$`H!o[I[Wu 94?` .B =fCD ƒ1B|nPkG +ipxFk5|O@FuO'ZЯx eOM. h)vlŁHwlØa5&M?Y!<"fP.l5da\~{xɠlZ&3s͔:i*&SahWJke;= }"gX xt=McY)Ǣ9`jr(x ׾=28`$ڻʌu3e5Oė}9OuΎ'C )](zJ6x~GV5R3 XJ000~1Fic+s$\G&"0ݷ5SsĖu8wz^$tؔwJ K 龧J\y^&_ ޾0,^Gy={^Dlq.NZȖUS H)AM3*P7o˳X:9\2~v4AAOg|`dz-H~[t"g='6ukȨ}aC \>Xf|gUmZ4vѽoC*pe1 b nQeU1JqMlKٴTy>sDrD%h,r%R :lИz3W6Yx1ŘUJfbrՋ/ *Mߔ@pa~DPy(:2W^E S >A} ~o0&dOK4Hչ AK,!8fF0) :ͮq֜:m+?Z0:;y,Sg^8ik QPߋfgG.é >B+JeڶXXK(Q\oOֿr~h|ƾ|>w^ɛE̦;h=5CbzjS~T^[U2lm wnRͳ/vKd, d&L0kf$JArfRvw [u ^x-DH4Vl0:*bXS`t*]͌ N,>SI)s /~Ph3!iHMA<=o &Zó%\cEƯ)B"CdS[9R?6>s&~J~'Es1'׺ Md*(RAըN1I2w>8yO18u@ߪ̛I!XڨSEHP?q&fnL jOrHCW@#3;|i zoj&O$+K{6]!LU@ NA+>|˩ܹ #4n۳δEZbQr/dgi3M(xxC{48!frh@T$ɂ x@?)mq @&rO}DGVUZU:Wk ۉaaGR0[c@ag0g aܵd1Y1T1~''9o7ٟ”JZٳ ФJr q3 ,HKϰKVj+l"Q/䟆qB͋yL,+_[L?Xof C 5:1> N483xH.rVI[]8#HgLH-W` KBoѩ}+1SZ{Atj\U:UĶ*#30DJ~F0Oˏf8O{U@񋌲DN_0`X/gזߣ0Kot vDOX!)XԶ:=X/_mbG&h9U(q1U @Bs)as jqb1 OG@tHAQظyh?j?(gE+bVy7?5 s:*cRǞQٞ"MSΟA?Z:C_d\|ǿ WQ `>oYg:i$!ݺ[AXb)z5ͯzyaobX&"s!T?0@q r] +:i9q|C*)*nOv./h<3IRD*t-EI}"GdhO8As3U1 RuPq=91J+Q-*|`3R<;E0 ]W~#A%hp{%X:DX#lVAzuS$5Yw6 gU; <6z|E ˸^]"w{;j2d}s5h ~xbQ]UE\%$B紑@OLo$:˹Q´ 㦞.I'dh$y}"쓏j82YqB :HtX榁v#lՁdf8| a"«qK6o a5aMҿpe 1gI5[/nW dC"&UAM=J~;aXֈAyR+}6/0%ʏ]qm-_ VY軉 ns⧗=]F ̄͊҅1^Ýq %%RC,ȭdW4ܹHB/n!@f? }|n5=}~8fa?[7Sub4Ɵ֖7KfXr;U<rEWrç{41z^F6c"(8d&*!wcu ~eU=\<ЉW?ZȠSƱDea:$eF_ݗok]M|pU׿-|\ %H;??J Xvjyۈ\LziFI$c-"}Xa Ky*nZ~i[4.2[Kۅp sF ⣈Փ1b,ӗ[V[H?>qJj 423qd٦-Um|S1&C,'Osϊ1H򁊉>>JE Z?o9MSUKA󫟠 pI{rY;'Fvuz1TgjvUSmÐ흶wHv\@+2Xˌ%Z$ J۔eQI^-;!=302W/)dUHo\݄aBk#LA lF9l.jPT0{e -#i?"LSPtb><76?b9ptf*) BW!3=`R,Evb~Ds}P)u;窆sgex"e3/_āV5ז!B25"?9kG޼~(Pʿu$|#Ržu1Zu2ՠ65+Rjg!lz40_ܰ'ɇÑ䜢W5S$+:K MS)3#5\§g d"Uaqag/?C^bHN J:EN1| -p]@ +q[݊$ev-;6iskS*Y++W?IHgZ4e g-*E?KP^yC]g5ぇ@nivэho1XڵAF#Y]#kW+c) ْ s;yrg{XdךρnJHFw8EBl^s%lV3WSXlXO'#^@/JQ3{E:[7_" m ^-ƅ离cB^=y":ƛn^;z&݃lPe(K@7)OSlhCZX)rž׋p0vqzXu`)Slgx0X}J G0G'߆yl %D 條Iڱy\ =DෳAh|{z3=xB&s'Fne ]ykO.kڙ66<}t}dMeIZ-(l P\`EprWoiLR1N3F|@/YI)eJtX+̗P6w PR?=(ɒRX ?x6y#H4U7KAi[Iܑ3Ӟ ^bWf~1=u]|.ƒEoDZ2m'#~9_QqmN휆;<,`Ln٦( aٜ9M/;9XG >*O _0);!Кq^Ga^Jq8Iw7˘Δf!|=^?:AzDX+*%礇o%)&YsGo| gX9mbQbD#g+m â`m&퍣A􉭃} iM wo[2aqq:[9.씘7k<>țOlSzas~񟑅?&#IVf* sRGiPw9ǵյIlJkZꫥq6 B׭''{2nL_kMH\CaXx P#[-g>l݆W]ϺB).{hsR7jT'x>ca`;ݵNR;7@.x6xxfvvanˢ#v42Y|ڢ$YLJj--9 ɧ,w 9W?=wľ6\@D`dZK#$ЛAD6"<ߟ} z&'Rz}Y`^ekf; YD-U >);ۋA>cF S$T>k\R hqZl5cK[hCzsBy L]IJR@῅S+zƋ=*9F]G$%料3  %nZ9wTB+/Ucꘘv7S:o,vf+Pd8b$ eT\%šfO!S;-*^RWKTTJFEk[sH$L ")KgO"[k>nR,1oءULZ?wG9IԨz(-9:{AӷxN{@ 8g^^10XT; #X =xFV ʱn829"A4^MbCv2 (T* M5a'`׊"tNl l~ e H? D84Q%!BCѸeV)ٶ ^!GP3`6\o pxX j}PWZQ?}z{H/9!=۟#-P*/S>,sa(3h7@ܜtؒ=z㡷pWoۅ i#Іy8o>%朡qx/5 H&H?[pH?̦Pΐb}[[x4A1w7b_NL]'uI9~̺ aL=1{uަ*"ĀH~ q^g}^8+,D}4mAaKfZdoTVK<1\o:,̹ZyL4 bO-,FJU8_Ll`KvyOCVi ` \!߭-X!nEJHxV}}N9:iBE䮹vZ|?纐2B$eʹHߖb /!@F|ŎaNHWFQknfJjrFm辻3&]+^i&o`睯r9VQL,_sAg ^wg߇t ,p+ 7fCU֡P$Ky#~M .<=ocs6W} F,T! ʔ婌BPOPDTf,Ko)^6F?`,#n~)rxPjF1K=D[Ӷa۹ c[0^:qpCxd+DY QyC m\tHMn^BHz}gTCȬhX_Y)evRUQjwlV ;AO:k0+o0#rXnUfF!.\JV njvW0) QUJb槞WGYt~k<+j$'h.-g7 jwxP[7ig 2ػyU<"qdHD019ϻ$q-;,\f]C|II-} 2sFB.*Ƶ,y@__eYHs-DtIC:W+XO-(܂O1 .035%G%^N;5כϣֺ/p& xo:eiɯ&;@ ?dD,!53 @U { [65:v<["V-?6j|(|ɉoSf0؊ʧF4Dӳ; 863ZEA3P #:|fm3eˈB3tBIUHD2{<&Xa"&"֬=bEtL~b㖫 Rn+^<]Ki 9at^gw0BSgxLnOW5n׽?UGuZ< z1_ @*_%Ba+h:t4(< 3*iWFqg)PA4rU+2̭9i rIZJRIdݘ.|7سh6pBOQ=+RO8*!S O,PT\`˹9$mxhcS"lj+ 7/%Z+9Q{z[D4)`El<0}){Q6Ҕ@zDQGlA)U ՞ LЗ{o}#"}w"qYW?4O\](ɅqNP˔ZJyW 6R_;a$Jk'$$ қ}:XPxǥyrEmz-kp_ȗbOstYf س} wwM(mk k@D#7ٓ1|{9/~d*i%؆Uؓp-RLZc ]sC-źj`"!\dB^]+eqEΗSF7';-tEAR9kAg<  ٭ΔIYXi7|F@Jn_d̷VPTD@TBE{$6>qɓ*i?Icn G:[@bNR:byUP:i¢bNծ?Q=^.^nCMWWcRD(@݇h Z jk0$dMQkMfoAS g(WC~nPd.Lάއ ê~sy`Zu`1Q[j+wM$^7^քF8(ߡm9e34q.Gņ6 fnG{ T75#1!v4o®a{r~2+8PH@8В_r{f 4[Xs -} fv߆ScWo5^SuBSGP êmY q^[؂TjoYr.AePYbݞreeHB"ٕ%bV4C$ %$6NiJ|t`Wi\gjXg9bO0C$oA40>)/4 pfDՒ@P}U𭱸(l3р [ꩫti흊AZ[[;H&/_jSqjz D%)fR̈́A)u OV2|XÎf_#=$)^)QxU^x{+iڤA~b m)i` 䈅)wAb )g)/cco/䬗B <r+?n'^NZ۠6s4ROի.~#ETx3GNۯqh#/[YNՂGxݷXDp=>z!fM{MACQGӄЈ24$#+k(H咜.^!$H1($`e'eKHJݔ튣XMq2\O1c(OJCp˝%ok߳qCUY>Y+rapMO~>j5Be& OG@۲ILtC ^z 8q"AU|B?Bo^XZ^)[{6CiY{X I5uf}t5\{@֣$ϣMdm% T;p*=gx2XXLwxD(zѨ**U/5|?_d|%yoPqTM {.Sj#F'Xl+j);dWtip1[v R_-Q{NCK/G \VЀ=W$ANBZbu\uGWfktFow\l$[BSd 'L҃89o62i}6!žwdp$IA,J 5ȑS7xB . C3nޣK7Aupy?>_jCl)?\sOPk/%8-[)~mhߨ#" +ٻ; q)WXU@M2˧eP*;5 ߘv dR.֘/ .?|Q kɆƫ2Fm%g#Rя]A˫6` DZoƸRoqq!eSvDnD<XOKˠ͆~ vKzO.Xܳw\~w^To=7?X-Z }zz`ۿXԏ(v;EKl(܌kNfLR(MꗀdEԝsv |s[v[m E+g+׋cG㓽T27`ʣ"D^⊴!B>­j(Da 9@G+%<ڴ[\F 5߇&uq^RisΡyK^K'B!#gwel%9 &yWT=:[ (~۫!JW2TzrvȃEuHKs4Qp@!!em.g[({Gȱ'8NuJaoI[Aػ;u$tj@/ݗ}WD+8vӯwe V_PrV@ i— ?a"3f~xP$?r xP&vo뵇\'ӵp1O5i.W🦟`[̪خˡ|Fg@ Nq^t^NZ *-kKoXu`M?[)Q7쨅2Uc9] >:'h]+~7.~>/u[Y%iD|ĎR$O,|h > ߙ ~ј:gYE^|cw,;0"Y?ݑÏe#*XRj`bB}}=8}Ox"Aw ꟟k/{uٔ)z4=VDPyzRHs!rHZZa_f=j~LA{i)(pRB!d&WcqNɟ ~QeDo;^E׫-OHqvxyalK8̾`Zݥut-ˠ F {K,&6KУP3Oyk$4{#o۳JE&lO n0;Tl}~NjJW-I֎k(AѼ )T\WRzqVDLkD$D馕:jl m(ֽЩ*3 t?3T$p^[¼TEͲ8M u9+/Q[%ToavT{w{ XӮ Cn9*D ~z6s91۽:]vmQbqm_E*]k=x>;j%z&Tv۳=֣H?5 8Bf*I:)rځne-m >[7FB ,ڟM9ts|)8|\jlgu1Aۡ@U Nu_Wl1T^6yZ2u#j.:[{wZb,_5p#`a0M;3A$0*@q0o"`#$xYQE--#r Q'hZe[J^{?y̽ЈnVIHnhRF,9' o)Dr[c꒢/{=)-߻HCД:;Yb&!!ٕYgy #g4ɴ[ lwh6װ;;Btx3ӥis;dG<3V8B;3~ɎMN=` )x[zFL:yY:EK .pu;34O󪢘tvcmVT::%PQ,Q/ ͎5=9G k$#it^C4x61J:^7ҍzPJRo.n]'O`DQioP0NGeMTOKfF0kMqfUIϧUaIRi4^b’3ٵncw?UW>KUƾ׃B0o#- i{ "1;49̘=3.0 ĜB+%níj :^|H$"|' .l|vnRN- `Տˡ]A$FJ_,~MpER +pff!8}5}]BxlutDHSdk En&F=WFY 6C&R1#G&Γ *rxP1:|Y GNm0/Bp8/Htx]1`Ȭw,l'^9'U 77)鉪\.=v`H5b! !̥|tù6!􀡥3ۗM>lNҡ ̎r|&:v_šhyYg."CB ƠOlU"a~zhK2W 0STg.8~/p&;91,(po62WAr$?5 R%jvͷ7rGAs1`7rߙ{Ls94 9]( Ĕ=`ܶMqsl2ztJ\(G8qVaלZ9>h:hkB?%,=+~5(/ ZGYtrP6xbiPb*pu[)X g3>E_d{nC{Mn(2D% vGktMgaG2+_ ( JwՓl;ghۺH4}0 Q%,a2Viw ;t7mRb=k sf\i(Vo5NjzF#HioDȎv_:9 mᝑ.~Jcl'߼ZOeIwRXUn0;l^XКP*j/u(Txf1H 3+2=$mrO8oʒ2yv 6),E$d#k|%_#=Ha= bbdDVG;%.:f&h-;0h+xqaO)eP5k8u#{K@kH(`Ȏ8$9ɮRlŪS( 3^^g-5T5~oH3z>Po3a"`A6n.t w6-+?w%=s/8 d<#)ÎrDRbZ;mI&~c琂q+[+/kOV]q+RY\"2'PUBq3v>~v$JEfa.m 7]62f1CRن] b ,oúasHM1g?PPʸƿ )z2POWXf2 ,ג~H/wɒTWL]HM^LyY,}IW? ^V_zlm6l26s~) {be>=Kp+؀Ӝy_ rʅڳ]sJPqr1ɚfcu)d!̀sN.9aM#6+ (Y*YA-+#ChޟXa. ,r2K`37YjIg3v*@#hJ}=٣L0h_*%>VHXJίƦ-2q]@OjF xZ!qP+z1pf 7LW\Mx| x7{8bm]D]9Ͷ͖{&ܰ(nNnX-0#^$iT2D2$Ud*j̕|X>KG4Ϗ_])uS,lro+tq)_,Q>kҰS0@ 2].Gk@F5?Nu $|E KMR,-W 忾vE.!jh6-]fՉN ioȮ<(6;w1@ @>2ОF5SN@ =j=`U['92!&S 8cê\J-Z+a[z,{|@ l\ ꯄ/Z*trzo׮N\??^׀E xgU>5kcx1,*hx­AVNM0,0$< kE^Ug'kOݓ+d|{35Σ*6-ǘjTZX* vvP-`UX)us~Z+ NhbS|dBmFՉp2*cvսtQJ-R,I vܙ,^DzͼTL/NNцڥtGҩDҞDfaUŀCA?AЋ6창O"|i#ag?Ǔ~HN˥aoݫ:K|/xݾfIv"ۨ{-{7;nH8L۰Hhn1 ~nCCw;3$>HQe]~Q&J.|#[lC'M,f% n0Xp b9s!y[D=Qׇ|TU"<Х.d4$m0o$*)\j+w6[q"~Nahͪܐg9/Pu!D9FEX=@WI!zH\x> 4 T{&ȟ>Q?e9G95|=>M%@⬞#[=z=;bRQTm &]cXr(:T1@WڐN!ZÂ+#g !ho]_g}YHtU!2R[ӟ鰲hRC#I hC ͭ{14Ji6㋇aL$erq:ax} mi] c\x}cEc.SrvgϷ#%|WOǓ-d Fd "`\/)EOh~2!q'l##/ka_)ljʩ;!-592?8 ݃>] (J;΃>p~Ĥ1DAra05׉7m^C2ʾ{6zfܴuy߃Rv%؈!B7q֛*%)d|?h:gެ\9G>AyePmfx6Տ*&6eGv,UzKdq O/ a{y|첡'yjT{> a=W),c .*C!gz 񍧽rhlɴ|̶w\hBSIkQۿsAT5mQ *R`fd{vw~a pxՄ8g"AJNRq b]V?ۤ*GR|h@ ,l8,E](c!)҈y<7tHDNt~>KQOU ٷ*tL䜵)Pò/ GKXf^OTP3݅^p4~J},?V- P۱p;E:RX+#sV4C7k?g *-,X%Z._5,ȿhmWwg] S3tEV>>LmxN mU7uY$Jb-Te܊vcǨٔMVo=1jD[MZ @͚]FXt05w"K:Ґì?:w#ΩҖćGba栝/Puq՜e -W)TPv:z@~M\M 'H&X=mqP_[k"ˬ c[ n6: ݬn(UWġ9#6#vO V zM.g3&ASm!45aٛI;;££ )-1ζ~Sƾ/$#ASNe ##`tRSofW/RO3 vY" :ʍ8}nw0$V,q'*@K~!LjTYll5C9F|Y15kƝ-XYmxnp_zna6bm )6WVꥨ]^\:%7KK:^g%gqF_i[T'em! pN1  ?SyuG;yKLf[v"1U;Wz1@$RAKXpfǠ; ERb)84 ԙZ{#OtWdv^KG"InԬf5ü'Q)ø5G>T+G+ phNَ' oBjI8D?g6#!lE,XaRVhtD98,I|ƀs!’wI}E3Ǘ ^8p (j_ AJuڦI1oʬ2hMo5>M A`/~i\ +=쎰 /EAg}>5naIڷ'yǥmĩODTzhH栜lb0=K05Hmň3U}f@*9l|2@b" ${:'ĹJP>63~WZԥo9`1KK7|+N m#VOG {wiQ3.C\c[L"r",ݶ#}^#N>IqK,wH|¥26Jze-X(3ΎL/ZofNئRFrq84V}Q .N;l3Z: ĀwSaVͮE:zlRP8kT~*wDb۽Pvxx#Jxe62{Ci z&7*\n8CڏLT߭S8QrfP²Wm޴`z D/8]jWCgXM %i$>#{ )Y^xF㶔@FA i"ݨ;ld}.m-|y^/1Q֚`WP-h]@Igg8ۅcA+C(G$Zj+!"wayc]oE) :as"ϑkyʵ@Ķ y+zDoO5DB-^RȀ>&̯([[XhC ƽHPd@"yGԄ җ`jӴ"Wd!N5ʷ]KI +ETo*yك[ KJaГz4R{JcTkxDmVb|#n]txA@} s,o P:nU]DS8g Pf'kV065<0/I:/HGNfjo5#6Yqmvwbum0#StAO:Bƫr}=e+ZLWX:@?PoP&rY ~3λ۠wǶAĖu,?z<#_o/Pk)bksz,093`nFwٞ(gbw)k/Yd{*cv?N?7חu}SUr4Tg*IUA4@,P9.{@b8w)?oA o z|,SB<>I(UyzEl6O/3 r@f;`LP89*ʊǪdkz]/XBC~"#ZN=},z܏R0ҔVCE&@&{gHMUqf4R[-_#XUuƷr5a9ӛcMS֧I@J)7X0?a8lލr3/[ Ls@&Up K7;mWRĘn?:Uׄ6ǍraKjT-O V =Qu$e:R& jAnj(p/}zx?Fİ$ShM|0nC4"f/xg>8x9ݞ_3yN@ѡIl}0`+@XG-%` ƖD7t 1)1Zm赐{)}>a èxqYr oFƘEt#EzH?wETǤwCb"T5g:"~(3xW)f=U2 3l Gbσ$%ա*Š6~"JF{|gs #/!Ӑ&dmzAH;" krg.m}~ %]ZD,(-z7 $ǽׄ- E-u8:n~JԺSy%wFjaT=xRjQIG""9o$gCnME8bȫBiHb?g+at- b.;ttįC-@}޺7 п!#HsPa,ЕԈ`s$s9 U@翦"VIRugH1zv` v$,]$~#UOßWL cFA︡N[zcjy\/߮nelS#䓰Ȗ ,cT ]#\U@`s|'6)7J M'}zW)<f@IqL[ro\H :5o*b?rz=X?;"B5a/$!D5s )"B]!?"UFOFTWXk~@!jn}iTOwM/U0kL}w74|me_YW^ O?~L!|S*Bي`Lhd]Mɕr!oz5[nR-_t9!5_R2.HyWZc?km\Vd5leNTzl.a$zFE2NHēhHxzdFbҾgUn:7Ʋu,|x-F.EDlZ;N} cl #@_|kZG?xkgn'Ǧ ҉UBv*eA'9/1v%L].ҤY `.[W.]s <]m6ww%OW{6 Ҕ; 3cLݙLۍHCOPj]rj͎Hog2k2ؽlgK6DPJH6Ս\l+UTJ Z&6TaLHV( ᮫{IAn<SC=XsRxS++xⱙN xY _θP B֑Qr?}p( sڨ(+S5Q-h9R"sUi1"cZD뛖i\ \_9i8m8tp\DxQC- *JkTX.k68 ZTAi"QB/cF`tIFQh+%NdLϹ&pXPly\2xXZeleE2(\&|;%Mx%CiKEј=d`t}zڽ-mt9؊.VbbIGi^@^A'܈OPJ A#$,lY?TXD!o)pOkiZQ6rܒHG PUtt}Њku;*gK`ą45M S=ҩ<l"~ytq+uޠ,5RX\JYVe~+{%whW<v=W"Y٤Zh,T)3 1<"Wzm!Jha$wҏAc+:kStp `:a'|@;89&z/6ىXd@"IuɾƏf' ʩ>r4@}ogu"ι6ֱud$Z8޷N8K=y`>*R$4? M\GSA}>CcbxH:sYIW @[%}M]t$`NMQ*T WGJs aP#nvA #%O>WB8l 4$Kr(LJc0148eX9BbEWhw\شS=uKG=;Yoy-W Cʿ B=co_=_kCs[aome$~W,/&@ݥë>A^6UОfIF4;`l^qrF۲lTGge,2j Jn͗l=ЉI%/C26\!@1ϚBy¢Ax2nG+UAE/ntHa}UKG24CVB|`Ehjy~q .M_RU) +yP):X *lo%g9~[rٰSkJ^Ua\9;6WN3Ka."5ڭ)O)H\5T͋O}RNdsS#< se?! tVWcVZ? DA#$c0ɑ*;a Ȉ rF]4~T61*0̾!v^I*4- md^$aWe)WCSIs{uHC$l@,޶Й,3r]!)uE(H毪oVd5߉9us m؍nL<0XC c{B2 :B#t|7sI(}*gZ]8W?@/L_C͓'&_A[k@7%o4PxkJ$Ab)ǣ7v_m`wo>bYN-:N4=FHn ^iXr/E@sR n"q)wI?:ckмXR{цr8V @oN&&*ǕuH c,]{=ed#!Dt}TҲb?Dˆt)hވ@Q\]XT|^ZIWdUvZ?7,f`XĊ&*Sׄ+bǻ ar-> %#a1GR Ql.0E!g {L,3͵uia*pwu_ X &NY:2J|m{c _`n%OKX"D?4){G蚲Rhc0و]&x~L_|ۅ` Qpa"ܢe-gZ8Ozyۮ뼢y2 ٌҊ9Ii$T9~e{`ޘEVCnELͪeSmHj 3M1P+h%eKF:c1T0jnI|t;3c͢ԶnLjX1UEDK]:tňl!}+Oy`-pVrY!>7a>ZgCBmZ0ȹ{e \-5,Q64p>:Hq05Zg"gcκ_ՔRbA_ g^9ϱ[@d,5p e *nX OTнnuc2Nʼe(\ӆoō0Aԫ/G0I,ZbOCpHa/Ec06Y3Eudƍ5f1ʳ 6ܳ[LLL&6s B}LRY*d܍y M^GX0B\OVOYU 1rfn}QXeYk~6A<ś-lM<+2ص69B%@T'be>eB'TL &8d1kXy@BT[ΤoY :)i?o'&~9} ׆ v V[) 3&"7bd0/{E{NDONim9E:tD Uo=,]ɠEh|f51^OO~(3}^/lB'Xp r<eusї0yf^X@zt,]b 1V컧z<8$aV[g; C>܆~$EXv-uěZ`s4~e$g,ö}3FgmRU7_p 9β",$+}>++2 rgwb{=Ic,,&/y3:܄"nG=~Mj$iU.fbqʦk.-O)}T TguЏ+iҼ  KsYM=j۠詻bѪq̋XW ` PUbCac=Q߆k5=8_r*]5"rΚ`<>+R Egc,s{xbyX;05S6|G@Ts^UD*y} PcË%ά`'us4nr&_nzt+T;"Pg]3w]ZVz9o ^èWKzT Fв_5rhu]N_ZTJâ{G)ԃ04 }t&}L~׉eKhjPk@ N _ꐔndc3@o6W1Aɘ[)r웋>BMȦ1Qаj}{dHA@G F~go?7WM-YtN \4@D(Ң7wYY?"}$wӻꐕGA'DAE)ݼ>2p߳gQ=;/49 zD n{R`9pjX04{g#3d!S޾z;SN(.޼iI ZKхaHK3ZlvAd4@.;vG|= |H?Jd+K39h 8 idiT[! E&YumxS[;sfaK"@9Wl7vGW1|,WMm%gȔר-{-K%? 6YQq@Iet=enH^mBF"/ Ġbr$Lanv;h V8 SGGPג'Uưjl|zuE};K{u_J#6^4z0IF;7{=5,Qm)(meA,JYl@ɠ$?긥]Äh[U󙝑ѱ9: =M.?A}e֤N{JP^[1o^~?V]0̄!f%rD>qA#2%\Y`ְh"Q3n y ]5DXPfGTMóNZnIU,iPڰAm{2\fAܥzB2v~2߬wz~ܼPF9u,I_^*N %P!z]4m*̂',td"vd@EEeòW[ o!̈bK9q)V 84pTb#K{dZLVYlˊgwшʼ~ Ln0`_qY`6H qCjYʇJva3Kǎ_'omT\r>~'l"/x!^y BlJ\ @_vҔz׺]*cto̹9Uüv3v3sf w2sJ݊m6/zY GH08"@m[Gmp8XW k-֊JFr9SLDND2h}ƞp9$񀆤LXO]e # TGV<{17C%G,,EYy^Hz(U/6аL)Jd&O%C&'ᴝ<haM:ϰW~vZ =~nvED3c?k>5r~jH.z4=mX Ѭ&Tג[*hgyRwVZ+`QVZ*>mm7ޘTk5t5ߐy-N|֡(&ZiZDTvQ בupԌ{R'Y8yĪٝ_zr3Ǝg.e&P'c'ofeћw-{DY~&p9s7绁Swً,4T-j˿c7d+ͨ7~f lk]wB/| `D!wsj da A}FƓjZ;o"I,hkju_`NokMh"?*bT*Fvi!1dRe; m?x0Sގpth*ֽo_ 0xv QԿ^n( O\J~7AG\a}R&#\P$WƬ E "C^tuh$>@‚镇TayX馐cfwiG!ܖ{f<ħ8+N]Cnx?R ͡ `&,T, p-v9BZ3Dy]Fgq2 y2՞n-};T{UBQz%$;ΚiLŶ߰n`N+GT_=YaCuάv.Ƥf6,9.-_ m qU`x:1`iO,zb)D@GwJ0=V#Ľ}LS}%]]4%rMd)J@x&6PBAb>6"hRGj6?$@1.` 2Ut~o^m"iU6CvZ]Z9iTxU"Q(>2lymqkĆ%=ШQoSl:|yg4{z7~QV :g^s[1差A)Fe& lEQWz,!R W9M[\, @wWft$PkG(ql#3٨VLՕ_(Wl;#!vtJk/Je?<+ (Άx? udb5-Wl-YI C5#xwㆤfK eE w-1]d!B~⼑Sːd08#z6}bjHW|(}DcjOyK9KMEY1 jCYKbU[$Ј犫`PDk@ h 'jFf熠{g:3G*E>SQsE(>#[Ɓ.Tw;na_oMF6GhKBǚ*j8J5.y7֑Ly宿/]2 [ն8J  ]B[rj[6ð ;KցBZd ϫIJ< w}}y~)pbg_1ɡL` .L?q`Ra60Lz(a4!dOL z;ΥjX9~:eBTq(A/N(K[)B1rGOJ5rJ S<@߫ZšuIEYg%#¿6Z}2xku49L=\ߒ)M7 ]uQ 'R( zPB>UwB"_wSYfA>91'C5}b̶Ζ19p q!Ep>QO #/PU'KB ywfnHH G0zz F\pɲWF9Ut^rJ)d `@fd6Ao>y6^/w- ] nO!q\;يYmЖ"uL|ϡ]^vӊϐ$f T/~!]_?>kkQ!֟_TG|i$J= s-}AMa1T $90to$unP7Ac<MbIgpPaSE4d0^{k6ñ6( d{G.")n4s[.ۍ75DD$ƻxaOPm'n_6=_~h@L0CZkr^3 MV ,,~G6tg\DÚEpLADiY*& H#@Ԓ>jbmydRmA-"l;U:N˫+XɪXG&ݝa\g /X6v'f ,\FYHW32 Ll"UþLGSnՠn CxGex>+A`}IEOijv _;pNH4$"Qޏ@hnyjgY px2Mѐk<9~3em9v+rm;^Sա Q*דӏym| Od*Zxok`FbUXb)p_N:10U3 И d7}n}1r жYNNb݌[d=PK:$p^ L5Ao^]ߋ2ӈX%6z'Ʃ]D[yLlI)"&prJ4xXyA2sFʩRv_ Tj6~}@ܣB!tsFoơF8prIh" k,MgQo '9*QvBa-I|2%;AWaG.+`i -hAHXcGM}6'9y'b(sf$3{aWJoLIC~n''󎵇pGLt9슀c<%`迥On"D>l?{o~|Ъ1\'F,qq.óN ~C16քck X]ExTX.% z""8 {~eW9Ce!~ W,Xhת'):4xhkp/>|xi DպBaD}jCNTIel^l [< oԭXad }魯ĩ+#]jS/<*97C8/0eF.!3=bۍ߻r+H?ܞzt:w 'Wz(k, .^5h3)ѭ *[W}vr . -!Utq툀W,DQmT{׏uN;uK\ HHIy_qiO\P ՛=/?cMo֘0J+!70wjbwjU/ΗՋ>`׾<|<,+K.ק00OSY9@|Xے|ůrZV9^3Ca7bA#M澯%Ňn`M8*cĠ>#)|,`z*HVH K傩R{ya?שRYe<&Q?͏~Po&U::*k3?"6Y_YPC}<9NopBY8s#sb2yCcnvU4*e|$1ɥW4Ű9t^:.|mÏggs0p$::ռ Iؕ58߱C^?DAA>D,b][sH6jjZ0a;Kp2JoS~"hL>2}P6תChESc f:U7}s "b{4xk,sS翶iw!@SdLX&wavC=vD\<Sw_k9H:,Zo w^?W4%]5a"9R:2y%#:wjר_=bF&Czk$$"o>Az%uo&$pחTuS&:X]3AڟkȹVwUcFAhkݱ3KkswI->V,p1:j]Z9]YR$0oaD3UrUu¥(^?B 7+(~V`baL%6.@A/]pJKnMVǞE  E*}RԻY#cFmj#9K HQ=3c9th#y`n.cYpL%rp*v)j=NU&:QG'װ@^R:Dv*CeCl^=zA$^yy)c,,LJ^W~L ~`DBO,236aόJpfv^ S,MБ* l9 ; CsH^P! |"N[RE\edp)" pX+jRL  Nd? ÚW^N/fsg]5:[bo8㏲dn`ϘVXg7@\}Lc>FOŒ7 "7Lϋʂ\2i##'#ZM1@!'WXgDƍFU$0ԒԿc41I&|jЪWchw|;NΎ&RAX$.&s{;E6'dP$S i`yQ;M*, I#71. ϜFba\Zq8Ysh֛Y;{l=?X%0g[@vOyaY?r,WoC_~$~\^cȺ[_H?#k{Vm8;Tg1/KQXAyу%e;(GWޚ<%z2J4kSB0ګv0Rb4/[6XenR䖧Ƀ2eWJI$(B)d7젋<:g|MMi OSuKdٚgBsr$Txܔ+|sMԅODQb ].7~@ ( A] Ѫ>/h(-kb*fd{y7 u ʋX F&0N3ɒRtT8)(Y_83 #œ,j8-XfQPù]Au=ݟTD1[T ns#Bsث\nCJZbE ÝX%ήBΞ/(c2ԓ_2LԷ_$i?H7y)ek&VlXƋ}"Nv#/rtpaWvwLb>xԤIeߖ'Ճ;q <!taQq:zp=/IpaytrhbvさQ 4{2!1A72(U Xٸvc[SLnQ"[t<n8i< zU[@>o-Vf`46+OyW:Ve`Uښݦ(A,<)rŨ _b*QiR O@Np(S@#1}rJ' /'=Ez)&2F[dN04K8"U4 )WgUK')hB&8|AzyzR׹a~l b?H>!mN)`1kug VbX^ϗ xUAq _ j\ǽyED+6)t(_S"I.JJcprcúň(`vfah[ls%eT&CLJ=H,}hxSUK`r|$Oֿ 3OBz=I~> 4~Q2o)0}B#O 0m8+:ȹ%<6^2sy '91Y&#A}7 [)-Q8NY)4A 11t@I=!I*Qr9vҒ^KJ{NDkV,(9+ `R\ʓ-JS֩gnP(?dwt`(pUuP4,04Jړ=(&}b;6UuQPqǢac.{2/D9fJoJB)b+ b{7TΨw>Jw'(_6yr.(~Y4 YVU[hyy?{E.;&c,&8kBb/iS3 ea!?¶Z[+ <%9$~[8mTfNX}QN{EAG.ު_ w_t 0v5mϔG5-Ҫzm$̐Mf!;,*1j⤅u:!ob O7Fˡ@lHW583Z\Eeq]0คUuyERU|/557i pk ǚL2/-[vk4{>[TSl)n\zX[  N< MK(C R2ӯ22WT<tCsMj;0w`Pa\k J2ߢ T*?%gg<ˆk 3};a"fwYDqUy|<97JvBWѵ& *}Np(g[U u뼋Ug֌D\I_~LE9yicietYyQ(Be$k%W+[FI(#\ 9X}ȁ4 SKotZpF wu7ܒ 9QmI?\Smelw߄b|uq[&3u<޲ ' .j<nFiudl L 4E[OT8fw@eKjݑukpH!s! =St%>cd+5FuaC4 |]CJf;n{69*iݴ1+`FfYfA@n|,]r{CͽU!~gP/Dfḍݹ;WhAi6H`ՙ4kUJZ(>qOW:nX$F LS[1FXi{" PaQwONāsϷȵ`͂@3Z_!V<7wPƮ!@UU8Y 5z~m S[Z0=7'ה(ĚuQͩ6%4u9ކ]k&-ŵʸ8@b}ްh9WsyV+I?̈r M}L.C6nCobsY+|t؉Qo6`ma`@\e79Vu$z?@ymu6jK oyzW`D58*MZ: 6Q$'(\3f'j@`V)>fi!"ԯIlo'6'Lh9 17Mu숶 .LURN0Xg\YBcܻ<uߤ5~PXwʊNl =:b5e,S]טmXV,\9L}~Xӣx|ɓ~FD{(L \B-g0jcM#Ꞓz5cj{9 ujMREGp54ߟ˕':iC_ t03Sx5er,' 2`Kgj$/!h-K)+W`,,fہK`^;+[,q̬t3^{I{.U3#Snu`D0g[&jl1*sf}[Dl" *ќ;yF˷Q7\GEXK` RB4QiKqREMd&F^7}nHZhNeXHԤV\ 9fVP6%iҰj80Ŗヷ&vE]sNS?IM1V~٭5YFEڝ}S{s cQL--b%U/Mf3/V8إ\Mq-E~~qAY|%z6ڡA.5 x;U@B>#~|s̛KmvMU/rL;b*󽪝['!lR*(: 9ީ޹KA>ϩ( ;O.iS5!F1)C'r9 -5 L~cbr2%h}-!jwBµN/Xoj AvFN\@^-­˷zXR>٩et.<ݧ?oJo>$:qiTGk h$,`[z i&~z;Q R@6gq+E5T{rsj~ϦqdEgN;n^p'kt+UG':1\iv<xXOv6MB~24p%#-Uy5VP∡',cnhd瓝 rw4gٛ\#]1w1ІBޑΈ)j$80m̫&;oHIƋ:@A7`Oc[Q /NcYhKJu>kc H/ĂxGX]^"NI?sÛnSF22g<ߚXި݀ETp;b\n97Ԟc 8uhX֛9|#XEզ:lRwJbyNjxdz$hʓ!d^Jq: nY!`̯t•eEFiS

:,zWݵ)"`,֞d$G+ tw^zR7^RtF V`o9a-^cxW2ܕ[iӁZڀF$+OcD:ȡ}H<\wi(7v0cp5R,G" ƌ W`iLTJ:ǩutޛj{6vHHP%A Q P~!Uh|1Ma.VGȲmD~YӰDVXvpm=RzC!8 b̳EeVTS6,A2!K":">_`eai f yN4īXjå̾ PU p\ns$3^w(^HLI< g4]N A̩n}ab&:Iv)y I砊4- s^fLEP8a4% ki 5i6+A: o1ΙԒKA!u &lPqS\+bhKv(bsmnb^7nR q%}\|UI!@R|9 ˯;Xvm3'|9ߗmizMg9{1Md(/5äu#W ]mPn-슥_ҭ9܍A>&B_ǰ"<hV^@~n'@*ی\vZc:X: 5kC*QGrd 3{nCcd l:#9& j: A/SigHpUz,v(3^;̯/h@٣Q0XhjK{;7Q[u@Fg=km-e S3І(B^7bB.)ܬ 5o]3I~o:elZ^Ʉγӂ @; П?OДuu)rޛkSh(g-.ەS.X)K:-:t䝇o?upUۉ@q_n/-^Iƿ_ )C<' G^9ىX塀V[_6{u2Ġ@$6)wn-r07>|{AQŧPPأG;[8=ɬfIA[!Wg>3Wr?'- k$(;J8r6膆c(}B}pT㜍n\U"hq Ň0-VWV؆PFQ-n@TPB{`ޑ|wtAY,K"!,U)Y$f{ophWÇ|!)O@<=O乳O)VQ?xϜunjZKpJqR 9b>KBQ nUg|bZih),(@hkxPS]&\KBq+Lv1y*Iڽ1I ?h:, .#|+K C}?ZXa|dy;UW1f{=eI>HIv44."i k&r@94, 2Gv 4y4 y-dC{̇oӅ KtS m.C=6v+ݧ3MvwwԦ2vB,p,S.HNt~Q[okh'̇ST[T- bF6Lפ~;hMV'D?spcO+`f5yQ/I^ѳF4ê+c)|yu#( ?&+#20T.UaC  >6:ZGV/Z7$ˎ !|#@cFB4KYDQբg}q5)I<ԧu|OI :w(7 {Z%kOCL>#ĄK -WV6Yk8:%E,P5Ay&>^HX73H9,Vv`?2/,j`m Đ3X9Yoж8pC-bH9i` ~zH?YU}bü"0fxEl2Q;6H,#V>;vyj;5ZbӛjZ ys.GXXToD~W~ip$0&#Y#=[g>PҎ-J(%!FcAH=%@lR)N|dꟓ;XB{{h\z,T9PX m-&zOGL>pi΁:2[ @^Z^_S֙VP1kH3f‡XqU{wal%vF~WU1jBGWէ>@T]꡹fbC]W@HIB]?XE넢y*]$& jh'ܺ>L:ucL]y/ fmt?nJcGBܹS1. MQ0^l">jQk.s<#tciUEAxCnCz\8`*F-90q V 5IOW^̇ aQ+C !@RD24` ERtbs+e>&"l`)>ka[ń{g ֭Q4BK2D 7[~W҅I$E 9׻"n[MBX'*]@\ Nﳊq c傋hv-}L#ce4`2eE̲v &$/7vHNӏƷwlv*얘.T'8V~g#gnnFJ2%9ceſփ x=Es⬬EC+OO/ZqJzSy Hxg-o4jP0 ̺ܣ$} Q<(cw`0fJrah ;ϋOHK? .`}xJr*hR٘G(o7Lh̓ 鎕(ƹM[ sG9M];46Wv=BF[ i\1SI0k]ΒY yTVl= >ap)<͙tx"S@iUlsҠXjpT[N؀YSjNi#»#7;g%KNh)DN*u_]kSu1Pm7f D&z=Ot եjR0t6 y5,eJY5utuZx:lAlsƪgl+徱Cн/l:Wza]+(}h=3<7.YA?P|xQn[ 5vt(d 淳Ȁ7GW aN~Gbſ G593UwLQ̨fYK ;ҧ&5?ldE4dw 1$/n{xf/>͵ѐ³?u[x6ϐ.kYJq^.7˫#'wXi}M=׷cz텁^OAF;0QcJ}P`xn_1>$*39Ѝ}4eS'rF,s:ݨ7hų"%›vX(N<>]$PU=rǯ xq E%4C@REK5jTau>>tv'>үh ³EvlCէ2M%wl#-kmc "@IX''!/r}Ʊpǃ#/+cOpAMDC|ef4x Z^ %NsTV&lJ,Utfy( BK9:h!C%$jM!ZDaa l9Є /tTxccŤQ#ӿ@^i]9sE7/fj-@؛t€N¯\v;ѻ1-GwWڥBD5K:fQ:e ryϐ5B :՛Od[v{B>T p! oR˓a[xe-X 8W_?IKMx\+3 F_bR[ /tM/z1҈ C7? A ܩ2W% [wElPu W e|*..J+ YxL;B \IҾrTٻ8԰HQzh炻iyb{oy(0l5gi &0sӟGS9LUCn^O 8/T-'ck"%=7k`$C33d}YDrG*+0f"YoJojk]] 5fN'`SHe}q>AϹ +"IJ֣̚叴Y\+MpM&+MD[^V-Wb@(kWꌮENz! bZ?SZ 4К) |9uI* #`UW!r4q7JtorOhGx`)?oHbfgst"zN5v +qkm'ڮgn)N/,^y9'bp)oJ궈ü󤠟c*BSDW; Mk0ۦc[iW̟%&4` n+gL^;9M6l%*]ĥCd1uv/2` DZnY8rYYC(ݺܧXHvw v]uM&8NJ=:D ^4'5HM#y7WAt1?(w+p]]VPa17ꭶʁ3anKz5 Z* x z8aMOpWm>V{Q $l>۴|;'EW̡Z(Od#NU_b{IQf# ׂĆ[|&ABf-t) sjVUyB|7@u$:Z5!˩mSh|R{Hf䛗hWL>zLGEk"Q<++}?aO!,@ t'&A_Sˊ  ~ .R eOzWQ $^}'%p 9A/M?൐zbomEN2h+/E1 L7l 0/7&IW/MBep)o~Ou EF/`> -K!x_`A| I5FEd"`H9a׋pfȀ +C^e4滝n hML TiWH,X$(.)6&}\܃O\`NrfTmzз`m٭/fH˵s]el (eeNn,K!',P&ZoJn@\+?$PȅӴfǓ@Tڊ>H'VJ}~-% hGlm6nXxL4E@tʇx.㕜w1 יXN&XW{CO:+6A@  #?%iv!雁y=K #0?o_M99c1I{}ϓe;6vGJ !u* PX洼p+IҜ0g<,o3"?L6GL>1d$C=x`4sUF Wm-0tݳdOi%ٟx/Kd-O{/P?xg1@!=oh{S'M:x٘u5̦^=lMW 96~ׁl{eL8bb%uk !6g +)_%xtٙ02R& *,foi2^.B~luһn:! g5{ T|x"˖}qЭ_G{v72m}e"znbqŒnٔNN7d˱C/蜫L`RJ#yMh˺`#KdN w̪l\[v(d(( ҅pMX Vfy`&/aqcȳPY? "r9d+&i É6R,`+n);?sB܊Z,ӓ );ku0˱-qeI{ 1aj $*/U#Ej޴}in4힛 J YD U L\xMFqȆ/˶Bd!*S1SGI'β4o}m[X- "F)K}^'odR ǾEY%Ya^3=oTX`^[FءѸT~ԺB cֹRe<7WK$lxY!jRҞ] 1Bߚ_ #=v u^tI+F_DomMp/B̃#nxyȮ,dxECI9䂤d7qjQݍ*^AEǧS|~3n:-+ }.Z(+m 1^[Dvh?)J}Z '. @KM uIϚ#ֆݼ\"gE ]Ѝ8&Z<)-vA;؝>OAMdhV4`iz]w~0@bA(@ge (-l6 ˯gi3w*aƯ~vstSǓϪef;G*S5b+j3Vs8 mc 8/Esۗ<2FUp@SXŒAt)ZLXSU+76$&WuPkw3g_E0e1ќ,}d͏P@35S1Z{%{n~DUc{]7SI`?=,;bW#b#_j2ϭ[>6:EȽcGs!كÏ*Dp0TބX7 <juQm6˿j18ʼv-WjV"D_e#qmH" 9pnj/NBӢ|ڙ~  vWiq1,)ɧ(ةiqN[S\Yp #_Rִ>rat*J{1z?aBh9ܦ U%/]/8 %[W[!+Gl)v/{eDWεB̜ÚpGGB`o3gg3#>_xgEXޤVs:†3pN`Ǎ6ܐML_&hqz>Yu9͂ZKHB͆)8S9Cٚ#DASybeuvޫ8NzꔣA.~jvRi.uΜ.[8J{N _VUNr/*c ܻіc$p-8 a"HK' u %E2E\Lߩ $Q!4\s01;:I5'I w\|L͗4#Ox{U+Іr]B傠o+ñ4ǜ/&A6(6M\~eּ~'=Z$|O칏iMiyV siaO5*L&V^|Jlo]^d#J'__ 7(x,mZ#}fOeS?bD.#}`u*kHt ](oCLt+OjPo7xGY-xy'j@f}Sۚ;8/_qXo`F2m@Jf 6)N>,&o0OI++}^;zvum Ĥyq3]Xacی鶖^>c5!|,j ȇ{?2k \{ H~26kMN ~KpC[uBU+vW=wհ__1 M )5yN?\y J$do2՗fU@}Y eѼB/>n'%'s:rq^[0$ l-`r|1$Lnt>%,`HMBZĔ(7bTEƨiV!N{)u!'?7t -FeȌ)2h}8+F =LUMT9\˛므PK/NeԬz»ށwV G%ԏ> 33%B~۠uAiV!oK4煁 =9]LYU>AxYR5?C6tˡ bwںl+N2@Ñ M7ddHiVmf%Xy<>a=`c((bH$B 6Sƀt.u‘I6N }F_`$bgYKqUcWms>vq`?=s xG)y{Na%sH7joѧF Sɥ$WK:b" }ONjNa9 :'h{? -оmĉrVz = 3U`} m+Fenlb~}$n1wBQggC}7}R T0+g~*fXKBq3eWXt4[[d(ET-Z.#Œ.hsȶ=N{r9w$8YHh5c+\%3B}-F|Me+sNL9zXvl3)!L~߼iK _`{<|4#P-$;-~47 w27RӶVmq&nuUVD$Q>kM=2dCSkX+hZ[x|NZ}ƺg.6][7pOVG. _ chۉ`jR/.ʗMpI9}'I=Hn 5~k݅pS-AMD'f;;ccu}\z#gQ&D7~r0UQ[PgP3\,u(?¦!ժV.$|&t, (qy(:mӂjE34wERs-LvcgM*BeH֢,f`xZ㑾6A674;L!<-~4L 2Oepv!D-[( BӚO,ƣlNS`iɳĘk҃CE bSqTV+6߲${HM(Xe#p0.b;'Jh?j~_ZB<զ rinG|>씇p)|r(L,~0в{5 h4_$! Ñ~p:;ɦT5?B)Rxm&<ʆ~]G(N1qk zJ.=f+ m J-o>P{C]lۊ:` >@ܘ 3;Rg[ X}:~PZVFz욬_TlvTP̶Gw>չs7>]Rv 0fgΐbiAApxbD޹tc8.yx;t+RҦ ΀_+]ƭӊdGIb=/d>煣;]&XUj/%#UEMP?l˚@KE 4pt#l]}L_7yod{7T`O* BEj031X:8.9A:}(3![5bp/=nӞ}eJόޟDՖ6:E/cR~lg 2XRob 筵B EwvzRCS_q~^P{/=l6¥2OWhv8)CCB-sֽ+ ǥEޖ ,r0,~$?YU(( <=L?g@GX`g^E~)̾a`T uGAOq ,=,ξ!KDP&,Ѫmʝ}AoEYsG05X&1P!Oq 1\i97kr<#daRڮխD~̓726_mQHFۑOdeN+.^9ue`h 64*ڤхJUm+1㈈g2trw'd t.dcC!HH1l'唨z[,-b)aT7vH”@33kdBTziťWș,{N!Z>iX]x {|xOHQ~6z#Ţ~EV1 !󀢮 * 8j>9"ΌI#~w7+أlZP#.~ֲY|\5HkiPS08H7%CXA`$Wq:js#ղ]+]&lMʿ +#%~ԌW#-V됛n EQe\[+Kˮ8T#۾e0EO'Y[3jRDBٔ>F|~=biڇ6r g ρM9elNϲDVxN`qձ#fĥ累~[< kD#qhAvAbXxP :msoMg3fdHrz%ר2kQrNP^BgM|Pp Wcs7`R?z"׉4V  t*thՔzWLn/H9+v>8Zaw`*Pxb/}xFE؞Ie-% H8k,hXGN,.39@E3ucFZ}k[ 4U=j.^xN ~7^=\Z6OiZQSЛO)B7Ԯ@D.  iNg'RVq؂^q1TTjDe+sx$2;j-X}CT;`Dʆ!ds^2OG90AͷAdz $"rTD` :=u3+#j+N3faUxb̹޲$xD3gwՃe>;g>FB $dF+߫'BlLpTUߣyb i{GG>wt9BOuZL6MnT¾M/"Um{ q83"ң+2<~Ahpw}<`5X@26rA`I~üʕ?˙lѲ8/ +{U&Xꨓ+Jzmxx"a / z~v&D\u=:iAPeRVו ^VddAB9Ԏ 2h$ӎn4x o52 ne ;P4gr:ŽGc@̔u0)@pep TO;J>|W]zn n SVV3;F}5P*#8(DuxGA qy2 jQ`8Wg`{`k'PVGǓ2vMfg)9ݻ.đ6@[Œ2tlΙVNj]-EgPa-?7ȒҾqrLރ;3^:nSL2B7ů߅dhy;%co_:`- 5Zz `P^'Ui.<~khBq#kx/Fvnj֚> %U:)wTӎa y*=j*^./FLj@T: ٢ٓ-6FfWܐjW aǖS3rѪbWoyVKɁL}ofJAi1ݑTas?|0 8n׼ڧEd:>mxH1 D~3`!ԖkFAwW9:G(2x]W 5:kW0%l$[[ rI!Qc~'K3ޏO!Q"Qf(ņcibsL?[y-ʮN_x7:sG9`9H(9IvqY0RrkTWO4M$ &6 lL/Oo&p_z)Fyb/B=' `_k^+)`,a'QbVkWW\CJ;qY#]kWțAypAQvaV|Du:%oB2]wXrs_rf4E7Q!l0e([x`&UYO,L:U>,V  ]iȟVlUcSm#4-&* w-0|KMe{},]RQiz7kbA'PqZ,ުgj_右ba>LOl[I:jD^; 'bO"d @٪< z?E 2^Ⱦ!&ٝRoRHӾt")X8Hy&8K q)r2~YFfG5Pc,M_S|gځ#O:=)6oQ ' !8'[]J۶⽙xY=6S$:_zp? qE*FKK^ J\(>|iYnJěhkXZ~-$mp\>nDLcdEJ]L|5&341I) <"ӹJB*)C- =(= ދ"Md>Ć5xxP Z5Mj_|@ȧ֠A\y ^8${b% t_|f!O5má3:?Ov5#pJp'0.e^jIا:?DAG;th~{J JnkA$ջWc(g,y /SCw8 |Ry-OYY0>Qk23g?7)ְٰ#<ݮA ;J]DԱ@8@P?! Tvh[{}ǮҾuh?kh5:-,ke<4JQ)x(-+{<Q,;ᱺ5OQ<42,@fjI/䒣a fj%jqnr1= n)m S"dR؂e>Tt&`w27%1Ď/m_顾* /78{>v{^+C Xprh6BQ;[K'G|:9hL٘d9 %Cc: (:|umuty8{G5b "69T ('tC**;3`U,|@۫?u)N6 ВNRUIt'IL->0)kzh$ވ#<dz|jҪ g6MOS z^2۠ߕ6VC`KǪ8iG-'MkaZ}pf&.OGAk1ͱCxt2zhB_M?u֥v0F0Na[%JЏ%gFW%HA~ДK>95Cj-{04a %H3甆N4--CLW¾=? f'Af%½oG+%4]{??+\1_d^gZյn=ow,}my"A[ a+`yUh^Xo:%z(3c=AujVંi}1hfV< |YV{;m:b|t77 i|XӘxZ/ ,lMlV0\WErI!ybة'tvk^/2N?[خ'} ڬۭIitOsD)-XrOrؖUp*NklB_FN1_=A_ƾ=v8S8] XAYD\ %4GGqM¼u8[6ujJj)uㆵA{K \A<,aq'=sB"&`6  `Ac{?+7/1-.Ja~h"{̂gǙſ~~,kؤCFxISU:Vx^7sHa|.i:1Wd$('2:_Hs»|Sbm Nr^hSqɚlTP--2V!OA3ãr!(y3ԝG'|j<'˻uc뒓)m8_t.&ׯhMZJMS'4mݧ2FvZHePɘfA+K(C|y.߻÷7~mbN/:VG-^.̽\y2Ÿ1GƠY]eX{5)t=m~EͨNX[m:`cT}xPګjJ%}Sold.1%߄ sD%}ycs ߰zdͰ$qU8_5czKܻ^ӮTMH|/,{/|ci;{őke2jt!vFFww .WqmVtbX`H(J>i& 3(2t XUHnWHWYlp-hWlǖ0^5hqr5)R6SƆ/I)e(N Nl+1 PBГAR;lTص ˮ`3}b0:ŠH{!J6/ G0eD9dH˯x"<؅xTz3:JO,g_J8H`R2ub^Ŵjlο/g/D"16 Yk@:oK(;GE@z^l׼%a"H-ITSgzѲqϏ)<<&BX32<:GOᕒE\ WD ?:t9ʒ_c;PXk BΙ.J}Jq]D Z` r~ { 1u PDd٭@&vͲo-#-r}3|O:łc@YT_Jri^3! >cEP$H#!gQmlwd:Jt:B 3:vQrATN^f: \45s5 % m<אFd xtYd=jRS$tC$oOphy/R4ʿ=80q^ЪVxM5߳jHj0.ͪNSo)ލw/]b9{Qig[ǮLme X{wv(FW-'̊ßޓs6Wj~I\ZJ KH `fQ˦k/lnHβmi8&>4%r-t\54F^r_6d]Yy?{I_=YIpk -Zqz#웫@焍iqaKѻ=x"a `zz- YMp10W*&5$hن/vmϊtú6Pp;IIY!W93C,x%vvaʈTs^h[&* $q3r$ hp#E"8[ͶH p 7qsQE&ReIL6ȯ]Q`ttڪBl˦kUwxKS>8ȨR 4V8 5CAqU -46d_7!4͵~0~h+"Tpϋ6?:45h |!=>Ȕ| K͟48Ѳ|֐%1Xwh<od. f5tT-CKCP:Fu-]h,At?)`MjߓUzYĽƾpW1/^ D^TA&*X쓤,C)U/"j [@c=j&:A\a>*UBZL<@iv, ZsUN6!9u3 7!T;-! v˼`"\4&'/ 呄4TP%g<7Ir. =Z\&b$1k3rI?}4WLO9@7I v>+>'5Ķ2P (m Nw0ƬZqŒ~&GHƁKj*d=r5KzEQt4F=b:Ȉ `V~~4gD CCY:N{oP/)(+1@>,cPY{*KjZje>I{e@xEYQOhhrBd Ȯ6AzuDъ[Ku(Fh+LnJ0NQ(4pMOϭQְkev- (HZ> ?ndQ>dO#/VxPIv_AjC_Ok dj=xD~rޅYh9$bwֳ'.#ZLlAi/EBPgOҔ,uuӶ8gʷUԩO}cTBv[PeˢY-y G#%Iֈ]h^#߄!V=I0xp&^| 9 '`~7i9ZJ, ޱPEDB9Z?H'fyӏs;݂Ia P 3 > ~R],黬' ${A^-[`ޔrL0!pޓVk(Rda,=ǔy2;ۍ$'RVXjgHt)LBaQOG,JT} =r4tP,RgQ`EoڿcQ$uJJt<:L'mdy[S e r!e׻ -ag;W͠KmuKIR'w (wFIVF(>up1C:+ғURY_b]x#jLĉG9R-!MoB {d\|tl5`Y{&^*,U`#Һ-/LFSl~᜘@udYڙkZG6j-b޿{^WHpM3@Z!'-^jHm?ugN] _@2>6a}tF}m=X`bJ [mp A)!i4 j(=~/[b#Υ]i$y'.3A*if,~74@Urǰ=i ;@ຍ4GvtZZZ|fR?;ցA 1381Ջ |􈰈'mմK(9=evjiDUC;3"ly&) o1̒d^r{&I8o^CaS J5A!i :-%l7Aơdb|QmJQ5 kL =wc+(xv]ӏ{o:F߮"bxh<_]4e١mQiV42dz(.a2d8e;R3ƼH%;w13]_m\OޙCSɫדYd$8(7 5>mg[6r[k#eg7|ix" aJSvw38 $#g~|[S@5蟎b<rDC%j;EKfsF4t8/bP x1DzGR#PÓ/x`n vZ\& 8>%7"IrU 7z={G~~ۢ6D pxWgzxG'A< Q|U)ǨjSnDUqNٱ+ J2ۅGo#~"Uu7[Ifh7lUFYqILެ乮c3?[eO_xO;3-vתӿOx7|NZHj%' Jn{|we}a J\ŃMQ>6^OtmAǗa T!H\?kyj$=^ۯ.ПHҴGe+I__f\0)@ b+JR ͢ӝ!gDϩbI7"K9Q&xxAZ61b`ׄOi%p0  pp؋"j_ R+: @|̴YT$bLY~RCD[5p/ atGqiwT}'c7=G^)(]vG8H% SEK/╵08V 86R?n6| q؊ ,qQw["Ejh/QݚB0̞w4[*c' q*d(6#`(R[m ~gBf[|*`Ѓ :gU@ɓ6H5ԷF̠Rz1H9LX#T0:pYx1RNeA/uOt'FWn$.NcQʎ\C_{,xMa$K,dn*k _P&pvqp+WaRf͐Q apb9֊ihyХM|ae3O6GsZСmG~'#5I,/'JSuz ouVϰSOoH>:k뵖2zb\<4kqN z=*=Cmtk)@i3"{[NVY}X -FlTk:߈4_%OPxlW_C/W^ypņEmtY!T,EbX>)Gdh;gPT. B- A4,Ay V7NnLN<t\ɛj!MM)yaDbLWǁɰr3tO\—5 +[9dQb~{o;kSXfU;Yp7- ڧ*{o9dľB_ЪWJG 8q6|^SzHTA͚peO2&>ܙKԣ8Pv{p1şPz]?=Ec=DE/8bxMNyȽoT fhR).\:t̯ ]T4J;@T+CZ~3%FGLHnS3 Ӱ5T/;.;`m܇6MDGg6Y9hrY:s Qu:DV选롄0؀#Z^Ȏ\᪸d{vVV:=X]G&\U Ho?-x|a w~dYi"lcMYŹ&)w+'蓡se׹Y?ܳ6jA_\K㭧d>)wPOcCo'0T3>@ha[ʣ*Fm].s6s>=Rpa?ilt.,?wBkDU*;?lnqi 'ca ̞^@LA?k*iR^ɬ[¬5@\[e̻aF(H4ih%kE﹒-kzW{[xD܅VJh >QW(^GߣAУ U6-򣧑uXbWHp?CR#l J!0=H 8 g9Z|zi30ؒQS&ZyC"ޥ.vZh$XmPЌʛ~Y7N!2855/yQLn7Z3!ɵRd˦<dfvFʊW~-N}\djvC/lPn1,)36A$7n=-&eW-<2]ڥO~~}t U7HH9.M#HfpjI~k}dK ~x \œC%=96Dv,xeoF#c4P*Loɕў]KӤuY4ALklE3$^}3LrB75lQ.0Jٸ} 6f "2IT' ӱs5_C0"V^D?̣Ih4R}?*}l n;:A4ڣpf0GY%c#Olz7EpN@yF6d?IUNSЇ:6."ˑak6N)˖ոY9@gVh#-exЗW X'IFNSC"LL4I{ CjOօ17H(D̘C7̼p*+.+e'k#pP-3ӻ\y%d|~`La!|Lk،, s@0E36W0ٌ4sԿo G^ Su3a7n|p;`3gx7E;vcmızEBwphs!ui9syaiU@r\bm"w ͫN k 8/9;4DBJ:‚T#m!|dsB ;V w,^KS۷lTP^ۍ9f/HyzkۈQ1H2F[:V ,y!"K1O5 jwڷr㹈>5/Cg]kgq=n6`F/6J%g(`ۀ+r[k#}m]lQ٦~((=,6„?埆,n(;E6{m½qqs "=]x-͗8~g0tLjĪ~Ihy /xw# B۬wg aO#ҫWy>)N꧀Y@My\F5 JyC&Kcz9[wy'":-\΋1$_sbCCA0VPmJy/ e'(wD>~:A+:QBh-m=NF08WyYff (ShiLI;t{O\zE9݊ÃMNXvd ;qM*n{ùkTp fkM].a:LS8*k6Ͼ(J1>D6ϛ`(A.Q{Uv:%Cy$GQB'4&*`-?f'6{yS/8'F8Q6' ~"\ZbsS<%RكXcUW8GWȫ}O\89^#gdS8=-Ok6HSWg[y4zKT<T^S6@P+gZ7f'$K {CmP" hH>XiP_bv&2_/S3Pq%[Q5p2ze6Z*/39Ӝ%x`UiX,2Byh2/?Ez# xB<rQ fsF/G5 9pDp b.8Th\>졿gS ś u$rn1 cv9a`])Uuڿ;sa xWV0c> i|KhS7vщkn&%SgzsK%^%k7r|\9T{j<7'?|%I98``;N^錕c[]W@ ՘XYk-$lA ﴊY8mmk[d}-agbyJ~5kaٗ{I5Ɲp²\fǶ':7hH$%:DoyqzKyn@^$* ӽfBc *ò,x?W6AlF!fv  +5b?BM|HTIջ÷8iY r$[Ol 7-h+-Gpm̾s^5UφYd7R_<2%2$_)UaC0GGN|>MQӸJP~X϶]#,Xʊ;}WdX呯G&HX1=,{@bg3w9O`Qb$'U..y@ Ŧ V'2#FH_ƾمYffAS_7M < ɨPfv]"P`C,SpRk;'wz<|W,Tyhj4 & (?;쐮dd z6Wԙn[F{fc7H Rjڭ,NjǻPwkب50{KVL(Wc&LVwEO+ a 4?G.s"][kas}X簒Wx;{pj/Jzk?L7e]bCOXqV璢{Ud&O WRm||ͦ8^/ퟝE%oXj14޾ay<,8ɩ֐NwG89wwb@D}Pj'W- *#2`l{ t\s@ǜ}_T'7CT^(QQ#s S!pk.!OzvVv/;%aB0ã)ws?Cqڞa>%T^N `刍rGZW4u2FBrjAmʻ9qRKG  MJֶ_4U5,ԙ26]Glv}wZoBzFb-b*i)fzK`?%["PΥ#?P*!@j*p9O\ K;'Zl=oۈn(^NhiMX!KWfJȨÈVH-rm|/B]$ݴ4~ZbbD7Jttf4$ ?KٖY]i+^yhx&1ΥHX097/Ew;S:鸪YNs&_IwJ;ѿeFٟob3/!睁N_p=abwQ01W# !eZ͟A+!$A Pٱ I[Lbo*L3,nTjsKI@"9*x 1LKl?=*/Mg=2'I3]#^&iQL|gmyI_MWݱ\A+Q8$3E0zſk'0/܅狢@xژ6u a+7TL8q$/8+F9H Z_HHk;gctg ,跘wZ8FYz-iC^z|:*GL e5%W谈*Dq9M5p9 %OqxW$1lQTӌ=ӘvsZsCD떷 .W2_'FYͻ}T:?CUF<`^uKy'&}n1of2Sh7LƐz\ɤ`/9_t!KKyn ϙ P6mv =\2y]{:}~pW gϛ|bgU4%<>,!\םi`m|ICEi,>C"7:mƓ̤B;Mr;)!}EQiiBt(n#~B C| `ź$Ecnjͥ9?:ġ}W,?/t<ڧLx4=3lMU^수' nt.s<^W66/̈nv)p-k&M^I "a`ac\2h_EՔb4NK3od0 l &v t,cD4(&.-´ШCXzL>J2sIuˈ?-ϥ)09˪ XCQG]Q"I&sMk?a:J(t ,5BIt}:fHbAQ4{d;a 8:kڳJuch3`Lwc6ʘ)cyB٪E6 H0^xF@=h;+%ޮLQ##ˑ`` ȾBp.ADQ7SEK&+xxHJGFB|\xaK+ ):K*>>ϕi.IaLȨt?n\[>n"vǤY .1}"7[] X.O"em6-LC-Z+nyχXn`3Љv./&K-㇈E(Y~`MKKD Hk- 'R-nӎ2[z S) \pwwHz|{L|*FhF2i:MҮ *2\D@?U!t´ĸ qA%k\dʩR#V6r'bA=0p`Kq$FBJƣG @Ɏ<أL/㙁C2԰`.}|U(q0&kZHy i8Eʒ+GrWlKu5١J6FAa*;W>myL.y)Ox,w*NǪk$#&7KڮRsfDBu 7q#U^LuF^Bn*hKzi&#*G$fP@!|Hqba|#в 8_\qۼϭ)