libfwupd2-1.2.11-lp152.3.6.1 4>$  Ap_t/=„u%a$'"R7> {4< 煫3w )._sw6mqZJ\L1U>+Ҽp;H?8d   P -@FPX \ ` h  !-(Z8d-9 -: ->@GHIX!Y!\]^bcd4e9f<l>uPvX4Clibfwupd21.2.11lp152.3.6.1Allow session software to update device firmwarefwupd is a daemon to allows session software to update device firmware on the local machine._tbuild767openSUSE Leap 15.2openSUSEGPL-2.0-or-later AND LGPL-2.1-or-laterhttp://bugs.opensuse.orgSystem/Librarieshttps://fwupd.org/linuxx86_647_t+_t<279f723654ca842746c96ba9dcc7827f44705d29968de2145cb4ef921bf824a5libfwupd.so.2.0.0rootrootrootrootfwupd-1.2.11-lp152.3.6.1.src.rpmlibfwupd.so.2()(64bit)libfwupd.so.2(LIBFWUPD_0.1.1)(64bit)libfwupd.so.2(LIBFWUPD_0.7.0)(64bit)libfwupd.so.2(LIBFWUPD_0.7.1)(64bit)libfwupd.so.2(LIBFWUPD_0.7.3)(64bit)libfwupd.so.2(LIBFWUPD_0.8.0)(64bit)libfwupd.so.2(LIBFWUPD_0.9.2)(64bit)libfwupd.so.2(LIBFWUPD_0.9.3)(64bit)libfwupd.so.2(LIBFWUPD_0.9.4)(64bit)libfwupd.so.2(LIBFWUPD_0.9.5)(64bit)libfwupd.so.2(LIBFWUPD_0.9.6)(64bit)libfwupd.so.2(LIBFWUPD_0.9.7)(64bit)libfwupd.so.2(LIBFWUPD_0.9.8)(64bit)libfwupd.so.2(LIBFWUPD_1.0.0)(64bit)libfwupd.so.2(LIBFWUPD_1.0.3)(64bit)libfwupd.so.2(LIBFWUPD_1.0.4)(64bit)libfwupd.so.2(LIBFWUPD_1.0.7)(64bit)libfwupd.so.2(LIBFWUPD_1.0.8)(64bit)libfwupd.so.2(LIBFWUPD_1.1.0)(64bit)libfwupd.so.2(LIBFWUPD_1.1.1)(64bit)libfwupd.so.2(LIBFWUPD_1.1.2)(64bit)libfwupd.so.2(LIBFWUPD_1.1.3)(64bit)libfwupd.so.2(LIBFWUPD_1.2.1)(64bit)libfwupd.so.2(LIBFWUPD_1.2.10)(64bit)libfwupd.so.2(LIBFWUPD_1.2.2)(64bit)libfwupd.so.2(LIBFWUPD_1.2.4)(64bit)libfwupd.so.2(LIBFWUPD_1.2.5)(64bit)libfwupd.so.2(LIBFWUPD_1.2.6)(64bit)libfwupd.so.2(LIBFWUPD_1.2.7)(64bit)libfwupd.so.2(LIBFWUPD_1.2.8)(64bit)libfwupd.so.2(LIBFWUPD_1.2.9)(64bit)libfwupd2libfwupd2(x86-64)     /sbin/ldconfig/sbin/ldconfigfwupdlibc.so.6()(64bit)libc.so.6(GLIBC_2.2.5)(64bit)libc.so.6(GLIBC_2.4)(64bit)libgio-2.0.so.0()(64bit)libglib-2.0.so.0()(64bit)libgobject-2.0.so.0()(64bit)libjson-glib-1.0.so.0()(64bit)libsoup-2.4.so.1()(64bit)rpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)1.2.113.0.4-14.6.0-14.0-15.2-14.14.1_V ^y]|@]A[@[\[Xf@[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+QK ZHU Michael Gorse Frederic Crozat glin@suse.comfezhang@suse.comJan Engelhardt tchvatal@suse.comoliver@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- Add fwupd-jscSLE-11766-close-efidir-leap-gap.patch: Set SLE and openSUSE esp os dir at runtime (jsc#SLE-11766) - Drop 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- Add CVE-2020-10759.patch: check for a valid gpg signature (boo#1172643 CVE-2020-10759).- Ensure /var/cache/fwupd is created and owned by package, required when StateDirectory is not set for systemd service.- Update to version 1.2.11 (jsc#SLE-10751): * synapticsmst: Use a more suitable icon for the device * thunderbolt: Fix logic to work properly with ICL thunderbolt controller * Do not ask the user to upload a report if ReportURI is not set * Do not crash when starting tpm2-abrmd * fu-history: Update device_modified in sql database during updates * synaptics-prometheus: Fix tiny memory leak when using FuSynapromConfig * Remove replug flag after the device comes back from reboot * uefi: add support for tpm2-tools 4.X * fu-engine/fu-config: Reload metadata store when configuration changes * unifying: update Solaar url * synapticsmst: Add a SynapticsMSTBoardID for another Lenovo dock * synapticsmst: Add a SynapticsMSTBoardID for a Lenovo dock * synapticsmst: Display the board ID in non-hex form in the error message * Be more accepting when trying to recover a failed database migration * modem-manager: add counterpart GUID for the DW5821e * fu-tool: Port ability to update a single device from fwupdmgr * uefi: Actually write the new device path if different than before * Fix a crash when stopping the fwupd service * Relax the certificate time checks in the self tests for the legacy certificate * Never show AppStream markup on the console * Do not segfault when trying to quit the downgrade selection * Allow specifying GUID to check any version exists - Add fwupd-bsc1130056-change-shim-path.patch to set the default shim binary for openSUSE/SLE (bsc#1130056) - 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) - Mark fwupdate as obsolete + fwupdate has been merged into fwupd since fwupd 1.1.0.- Update to version 1.0.9 (FATE#326702): + New Features: - Add support for more Wacom tablets. - Add support for the Synaptics Panamera chip. - Add validation for Titan Ridge Thunderbolt devices. - Use boltd force power API if available. + Bugfixes: - Allow flashing Unifying devices in recovery mode. - Allow updating just one specific device from the commandline. - Do not hold hidraw devices open forever. - Do not use 8bitdo bootloader commands after a successful flash. - Don't crash when the Dell alternate device has not been set. - Don't potentially expose user passwords for remotes. - Fix a potential buffer overflow when applying a DFU patch. - Fix a potential segfault in smbios data processing. - Fix downgrading older releases to devices. - Fix failure to detach Unifying devices when using a slow host controller. - Fix flashing devices that require a manual replug. - Handle -EAGAIN from the kernel better when reading NVM. - Drop enable_pkcs7_when_testing_only.patch: fixed upstream.- Use noun phrase for summary. Trim request for comments from description.- Run %udev_rules_update in post as package install udev rules- 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. - Add pkgconfig(bash-completion) BuildRequires: new dependency.- 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./sbin/ldconfig/sbin/ldconfig1.2.11-lp152.3.6.11.2.11-lp152.3.6.1libfwupd.so.2libfwupd.so.2.0.0/usr/lib64/-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.opensuse.org/openSUSE:Maintenance:14320/openSUSE_Leap_15.2_Update/5bd3e9173c91e7a162115ede57de1b0d-fwupd.openSUSE_Leap_15.2_Updatecpioxz5x86_64-suse-linuxELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, BuildID[sha1]=6106b1cc3d9c3a466e75334aa5d02ec86f14af71, strippedutf-804a315d006d54d9246fe32c203bc72b0d7b194fb3673bf6fd828633d2aea565d?P7zXZ !t/9] cr$x#59ʰta_7 UzŚȺ  A6Np|n'N7f.Agz#|<a[\sջPN a"°֙zuX |~1 i{z]_AEݒ0JI%Zq,>oZ9@X^E*0gyD x {>GuwOp/xTIYCnH&dUV/bۢyU\>nm t|/MIYk@a$dbDmJ,هQݕzI] GR nVر ԝ,)8.Y6) ?]ML.++k܄Ss#7h_eW7c_7|0n#*GqRߛ4孺/3qժ/VAۤq1Ys8h!/\o)_ڬmY$lMX%J8nt?STrwgɏCbiF/z|wJ 8QfJcE)Y)^$hK '\T3'h̫P_5TP\GJXX^ƗMeif ѲJv^sxT%W$pJn}| |K\\r3f]Yo]C lP潥ĎU9kS x8)=L/$Yrx&ρvP# Jsw/v^9!w@NJ Aitlwb }r/c־-#TniDP|~ #LmˆepͽnL14MV:z .-*h/X*1*{|q(qu Mt9o`zt a?!Kt.=oBF6^8R+J-74(&4&H>;EkoǐjxJA4ZQa!۫zjiS؆P d R͆K aQ}97hȃ`ZQ"E(mѠf[#n5Tucf~ĸ?B{= kP[b9MYv\y:vC>ߐDFs'~g 1C؈o c:>s^/&X3_'2q1h%5sWB,j`cQb_Ŵ|,H(+bp]O)͹l;Qz@e#@*Q$`a(lO i4ZB|t#rv^@㻵EԨ}qP`}nMw#̱1M->m#GhT/50mW;)Br_.˶OPlJ ^|F)sJۘU?n*H hW"j厑D&hoH0 @Hpa}3Jc.1tzzk .im{Dl?tnӌ!2@EZ׳h;n܌9zzC&p_&t&cf'KؼdSa1hd=w ?ݣYCt &BC"cQm6j,8C]"PN})ļ3B2D qDGe@gLQI,iOr?暞 .fg5Wz{]HoTžxύ=׎Q= 1rq]ԒWۄh@o ^V74x\3w*$SqMi 8H!!?FWh L: Ly[PGMGӅo6F>qX:sxϕ@ Ad:!7>* lzA5i _Xx; \ڒ]i_D4lcp-ٱT?bؔ/jBoZWM7*%َmХ}M_bn.VyТ`e#*(LK+ , 嗡qb{ufiv"_,?W^. l_nDdHhwehxCAbn-\ A0 K$#"7(#Qc149m9s١#qpF2l8NZy>Ty^ұ :S_T&{D9ڌ"D{\`nDBrL[ {ӌx4j AA !TugԢ,&2B`]Nyd#P7Ѕ(0CȂdRv\ct~8D6 bᶷB7֛Lۻ8ѯ"t[!&ԭ4\dL+Ф%u "pśD#S%)/'bZk$LG_F\!!MBSMJm)ereZF{zji aboɒsfE)Yi@^mbEsy 6 oהeٝ/fN8>0|͛ueDuO6St>k:PY\'q~Sϟ|\|w}+u,,1c[>z{lv=t >rrvlF4-}qOm; @Ljs`Qd=4h!po4RrcpË#Ȑj;Ul G]/^GxzkrIp=#I'_7[Cl")JOӴcCBM"Q`5ѷ[[ڇe,\?݂makP$.4e:ۉ^H^VN ~#i7ej[ iqo;H$~ ;r}Zі|4W+͆ o/FG6THKݨ-R9&ԮN:p K w_lw%}n? iw+ Ndܖ7|H3N$XM9]elohD5Y;7-# t3-ANmF})c0o+Tl[p*(;^1ϣJ&qYWYx3. EVaσr ~%H%W[)gceJ. fC~\[҂6S`Kj\fZJպZ-#x1*Vn-%d[ F,<'1,g}@V6xh2M9W~?Wwסʃbkh@/P씊`?Y_Յ8gfzP3ƒd:40孼9oxgx) ~ܚ,Ofqecge1KZ,/ua%w+4+;L,c`){!p*ɋsUb_L\>ңuCX7ϫ$z]c]f&!Ip|,{H5ND6QMWpkSryH*Wu3xdѫPp^Ow?0pkwM=g+b1,֪M_bgulUb\"W^8p4 =c@S.ɂRgȁ"Xܷ.Z8I#\Ip%.ׅ8ao?1hJ 't{ R#W\GMR#涑03y )α, θ:=(cMҕy-,sKS%FPN߉MY#m >qi>M={O\yNJ\OhW" njEN+/yM= F)fn0LY6~܂B;:ӏHWXP=FO,fhۦ/.z мg(*< .[PhH~hYTv "&^aٶM`uW.BNZf cӛ\(t: )iѾ8 xk9)`)N1#ai;O M9AFgP$]v,ɠTŚ%K7[VS1!j1;܅P,:hkXla΍NFMH[IqIv~@hC3.(s#&I$^͈Qk_R٫ETd]w?T&?*,QRg~2K_(NjN*){R :3lQu!P:_w 2 ؼ"Afq@ _+*#-9@4Q&Sԥ Zj"މ޾|3΀2d]? dBz÷ufbQj)ES;HB_D/87B0btJǶ${U:)ڛ͠SyZ'ۖDjMdLxKZ+_ɽ(㈔r.$YBK<vn]XI좲ȆcHw;zkŔE⛩kS !ٻj!q 7--M"tP,crZ+Uʬa6E1$E縷eG@n=ri.u ΣM9+רң1osy!ds]x7E;5WTZaE+PзA.EKz߹|hCm, 68 0 v;wJbX'<\n1ٳjA+Gƴ :=x 4TN~&5M%V1C j{:,QZG2&G:%6V99彆zc&>53p,,0vtmN_51NF+CZ&0jlݻ fzTSy-cdeUms5V+@;)61а,T+Y"Ϊt rⰶW20-o!;3O<"^n^!%vIGqw 22=Olt36U"~U&Z컲4#L]GX-{픦'2σ QUEb0"W K;zin[ S>K9`ؠKAjt(! Hha*v6 ܊ IW ,KaO3=gre±qٵ}wIvdkk9cRP7\UnYUYg(U#]ysC-uYW kzb2Ye/4DFw/+FhMXsKX0ƍI5;8SP=By^7Ovt' TA ZHE@@=ݔծWԉG 71۾XW+9aRH^d[ ))NčDv 6Cxs0e|yj7JSIRY!qšWKZ!^_}bs.%tÙ; b'hֱmG9,,f̽qena0 Fi K7v +}RA55R$Wttz;n)lT?E+"mzV?,D/W7pe O0׮ly|oa\_sOk[C5D+Ad'at/rY?:YwL(j*{Rk u!k<hYk3ҹi,ّEinpLt%Ȥ6R'KGhQwS?Ic<-EՒv8w)U]&SB[s2J,0 I5= eݫIPvYw`ni˄w<8!:ױ (# SM֫uaceX^\'1k3e:y$[|(t!:^H;&C@oT)d^"FڜNI OS7}y3o} }LD[Qxl͑a8QmGeO4r= )kFGєc7Cj"*g]c)wBH3"nR%n o'q [jI:f1y4CZ86z'=]C{?Jw'P-UmpD*x|8Q.cBd?:K6q9 h > =ˆ6d4zx- oy[ȝ=l¸ӑ@s˨=x" )` Pߍ96ƭɥk:43fW*Y.N rJ.| ͳeCg`}ڄu`FBfpP7wEc^ Xݖx/$r& a I~-FbFB9ju\/ SQрU}ο?Gג9Eg5cߡ,Om LiQ\Ep20pNR;Y nHAց&rM[[ f߿#cqL?D9KMEY׸e5lq¹$j{_N4#зGɁqWCF 'W:dq8#eJ92\It}VpFV:nQTt t6cA|Λ]Cbڜ;(Mbzc_E'9EKˡ~WXiGoޮE4J+ -bO=.u:ݙ7M˹{ vb@U[g}]3b߇jq$GNqT]sůE7 xZ$)D)TR:礥0HŰlN P2E-縔n_bPm\\b#܂Q]_]> 6p՛TAbT́j@:x;UUcBj֜K+ŸN3]՗ݹ˕093C%jGڝ5Bjhe׭[d@0$%b(Ϋ(|}a6 ̰˙HQie`|{px~1(U*=z6Q>]$9i哆 >7.sه].y! n u'`m+rҔ:x1ΦP|ԗ&1)+/8qd'Rb2P^)7Y  2q&6o< <ٮ Yc"Zg@Er:aj ưsOy;nxm8j)K38!גGp~qN,`cj9} s~3C9<"CIYApCsGE*=vBzDix6U$]VؑF_\vSdޮ6\{R9bS* `dDYMC{|ш3oMq?ŕ)̥n_,BL}#{E]|!*"ȍ}?Ɓ=ЩŽvKyVΪ${ ,[NCu!P7T70]]s/w3\c^I $Zh–F!WJ#rrrWSTmnЏgMr!\Hnn}+=PdMĴv$4<x!nem gJA/3S>PzX! SKq8fΡ 5Ϫi,fG#^*Zq ^mW}- J3iT߄sIv\hzHe&u+9Qg:(ĘEDUF#~Pyn^܍ם[JY*o V/+|^\w "?lVA)j”ZkE #yUOC X].SǔHuŒəpN̕|shO0sno@x /oC脍h4c: fΔO&5^_Ճl!Õ<.ㅉ4#Dqxa'͘\]ÇLQ+qԃKȃ(p{tMъ',`Uwr4׏^ Lmo"J FueB<֗;ob?fkk_BY@3&D蕅O] /(G݈dR B/ɒ{"T"dM 㖯nnd8WT`p2Jv4LʧBadۙ\i8o)Q}g;XEFE Iრ")bɚ.bً߭OܨͨDo;nixAjSjԂF(B3^RGPߙUL~M$1(?s}LJFXJTᕫi\tvjg;ow.z[?Rj.6(4樅i|k!⃠l(tY1@I C4).YNaj _E|bq,A[@bֳnRb3'Sea!vۑ_X)oҝ7 a^>rM [E%_[);x:֯Q/D5B:s=Z/D oʀTnվ_}0zžw[0d!LUxt@!SrrtXgl<7@׻{axG\szb_P&^_> 6.W#-'~OCrEuj$mf\nFݷ/׭Lc%6+ռYs.5iiy_K}֛E R8r6ZN4+ʻ%4dC9^2D$7hJɏ3??@ mXe3HOiu@&Ӱ`_ALc_ {]֤o*\"w~a„6wxwc'TMΝz†]"[YrWPDHEb@J9lgE;7l$i}\1#)68ìқY|2XoE Fٷb\KU'&0) wCpѮB$3raeX B:]NlPϙHR{i]&U*Ϫ:Ă!~; 1ItʨQLt^䪆 o6+X16(3 qWpN's9vU }dZ{F4Kq9^絉r@d?.iN!k[}-b(EUzu5.{I=1_jw[{˷l/u3VjBǦ.Aj8`#{s.%0?{i/=E;m( =xeo5$_e:mH37z4=Y@E6d9%#.9-s@p9\s;'z* ǒ"P,ALH꿷;@;S)L,!%JJ%3Xܖ LnI)k'GitA8SpE, +3jJd57VbR4[<\}ﻵ)C %]okcW."Z*8^Oqj.36-hmpr r;61C <]Ȧ& ̒9(LB`ΑQS밡.U&qJ!qs#QүWSl1zhF ]gBgν1626,SJOCj@k[ 5Sc`%>I\GoX+nء@sX(o|$&K@܅R)m\Kԙ)9xyٶ^~?&q1= 럕8خ>y K=밤z:/%ls.eģw$q/,tӬ rG*'j:Nc E5h(ghpS|+*_UH֭GRFȅm9}b, ĝN Dvuӽ?W{ >,l-Dw8vJVfjJ<@w2_T:WgW"=&uVU zÜȇYľJN -;cCDh SPtTQ٢ }{Qk64pj cbPO{x}S.ӵZpw,?OVOD y1nMwlW~;"$U XQ WU(DR?^fW/ۓm0QS^r^^ͨs2 @78!Uɻȭ+MFLLXt/iCLUDy? YD CTPg,xf`*omt#S PJfue},Wv# 욝CRxZB92ݟ' yxF354$~cQhlF †0^NN *1<,g 3,?i2iY;|^˭Lmp'z<-fT;(5x'Owfږ"-w-]iG0w1 ;Mie 1KTz  ixtX=QIe'ȭyli!*&uEX=XՑ"U/n+HҼ0CHv>|\Û󦥭%R ҡEzc*S?۰HxRr ;B0/3a6Z6PS!n|xNP|)*ݚQU/.`q!a*n`7KQ-jU%7bf:7LnZ8MDf,-txz?HV\I`T'iR ?Ol>x$1\'DK4mcCyq b6'bQM\J!z\z0d*ࠡQ6b8fn;)1,-r"a_ђ,,O ,afu$0HP'Rq1E%H-ҵhK F ײ!#4F7[~!Zn,~E}L1c٬P !#CHD4QaT4@PCakLj9aM(7ZBQfE_鶗CB>3Q. >6A>ۯIJq!m1ln(}ǥ}_# yHZ'bs&xBCf4>ųeJjp&Pn}9Rt R_4qMJ~To-s"v:Sx+.N P9E RT@=j7ŧb6:'-qt7HTP-|> RA) s5Oi!iRpȰ% ($π2CFۋ Gz e?&vד5yP>{P!2^ FR٨0\m9'x&)2^X\UdMNnҍx!m!d-ŎQϐ:(x IbL틹8-#4`\ThB>p+O?㑠ݷG`uN[&ӭ#pCe_H)82 JysPy;Pܮ.E7];dj@'yY%,pJdعZ.y#EkH[U ?A%T>݄t\d^T<+6g;΍874Ġxxުqu,JA^ X p3G',]AuL<5ZeZeRTk-Fu/Pmh,{B_ !n*ãT3Hm$ҩ䡾DD|Ԓ\ʾ͇,XDodTAS(S.afC3?CW *#T9`TMM-lq7#o(†]R4JUXR41YuX's~%FY`᭡oTqBP?m:.&W=7:dѶಋ0 bYd{Q 0W4$iH فLtXh/o5}Bqsix)# n9g0fIfh-uIK폊%`Ъ$Wx/0gj{\n΃bq#E!atI+*$xI6'L9+B}WL2 dg0R6':˕ i^m_ڊ4 %rۭ Enh_~4Jg弪<K ҉&YFtNgR(;ϋZ3<$,!I58 %'5 RT7T+j[p;%DkgQ<-nj3rH? rLx.9 N ~NQyr1JTtгqٍYWAF'[,zɂ;6vHxxKő"dxI"SM& Krh~~#|89Yoy$#$WׯIe㡹g,E9iY ϔYR2s'Qg3YZX֕؝AKԏ0g89C3Ȼg#ҾhqXY>s|eeW:w>)DLÄUF Zn̝(uu*vEl6R>=4h`6!<erf<╣@`D٦Qh9|µE0 hR)3T͈όPۋeSZ39Ï>bI[_ULO})}~q;e-cKC4bAۑ%[ۯa(I"5p{<Jl̀i_WG{旜(_nnDiȚ9a%lL:g6Y˽钃:n|#hZsfd\WZ*̖e7=ao2Z"QlW%CY?3bY o EFY*LX.g|6}(~KJuc=N,2rM"B?L7ȱo(ZC浹8w"h.cY&G̷jB&#*VݨP&B#){G(=;}? (\/[;ChFDߑ([(MH .4cUVB:@p.wL?snjbBzڸ}q|"oeҴ,B/\ J撾*rD}S|XN}S=z竿k6)y=Ca!$1i%-ܳw7ghP5~:_:Gդh7 ޗY'<MRy-b(L}B99.KpGӡ7}YR~J1=*Ruː.6uXs q7LB gh ${j}e)>Z0%6X4ZbX\rBz )AcCVCX2vhkʻaM>m>feDG-xLyFn/.%xI&MHӍFx_#?ȥ Cof:g =x<+Oj#R<\NMFn(cUc\62$˼S)Ñ~&@\0VP,##M֓fob 89Eq@%KiZKs䳖VJa89BwN 8sl܍"FQ 3 t;id$tBvbqѲ񪓄9zdH 0Q5w_*܅[@9m1.t!&6yzo$J"sSm֢\]IR*($k#.sv82d6ꔲQp8t5o zVSgn3^V!-=`چy73l1HwLj,y[8Ж+'yDyG#>BN_58[I(zҟeTڳ4,SbM/Nmph 걄&*䫀&xZ 쪄amY(i[Li=ZK$uVjg]hjZ!x7}#(*kUci雏Iݾ"FӯMvJ (wjkg ُ<{NdcvӇMQD̃y'*6\滁H8U88 BaeNckO(D۹sRKsw qKa YBM@9U:^OrCi9T{c@kmcg؎3?@̍T'&+)$i=lH-O'%I㱻ݳ3R BźF9+fhqN9D|h0:/# O 5?dl.nPj(8 Dky΅ Xϊ!A1wG^n]Ky&9pͦ,TgJ\Ta33lDV9N Ub!l^GͲ4a@Ǫ9Rp`:Q=`6&iG"×N|8t9g{{pkq}Mm,A8 ik#}O+(s}d$3Fp캐rآ]%I{\1{$yH >q ž9KzES@%z_=̲ڸD}K($a6"+R9BώraL^tk.NY(B$YhY퍄xsݨ9 h<~Ȣa_Ddf@4'FjASWl9DUM#03~ J3+AocJVsϣ&.Cqe}g>c0*PjuG,=Pš mYR[8tj(yk?IGƺ|w]@dtAwAwinz/M!rۅf\&v6ѠHsv̆;c˲† &EM/#s!b ТIo :Ph:_zӖ-Ĉ;설7 ٛ:&sLGzN tD uA3kL5kˉ7\bڧg>x 2Q .c*I.ÞSϬG Q(uפN/ BO=nm;q &T{=O l:wivݧ|jO;Q7k0!V\\T<%NV.^IQ^o!6p5Pt'S?&hw-Cڣ`KMX; H%+N䩈ߑo mrn#}rW=aU2?c\E poT3ns\]1&Vyy;Wȡ-]njڟ1IA*q U7@L~cJῷ.+`hhQx+a[.E'*#+-h|i?YA"B&Ϊ5"Ä́NBQ&AjL޲A%X˫K߱3'8Wq 9=3re_biK $^ zcux1b>N n׳+YTP2762!b??g)fq40l/NM8 4Aul ZgĝBr.)RZ&ހ(j鼰7m9m%jQ6P V#PO}d[,USjA"L"~=:_'"G9ZǜT0\[WrttC2M%)l5-SkQRtuB߶@ybh @(v{D\.%(*D >&s-*NW"w(l˰ jqHK0O 0O^5T-}3N ~!tcWـVzdDX~$jp S%=tj*# n< ?/,&uj@,d"I+#߄ܾhM5tT=cgǖ`nN(T|@[MpR&>YDУ)]h?PC&q Dzg/-p 54+qMb&K@*<^*ReOSͯ=ؕLzɾF+3ߧ~ mIJ~*-F]yDpr.SSgEl:kjAN^NHJ׊bo%5ϩJƥ{lΛ^I'ʽhGRAc#Jug.X1wu̠ӉӞ#` oWR +B2MLKjua@L|Y"˫b;윾Bm ?(Vk2^wr6Ivvk<>F6Ḣl>N|i|m7ȯ7=EPB/V%*)J hts˅tA@\>:@"RWDi#qHܜYqcO;}ș͂o.s PPۨյf*pXh+ xIka||{uv*\ Bct`v[ҺؚKv]}T\ |g|2MΞ=8]tngq9X4ev;^0)?4y;vE-zGX?*%Jxp{]X>[Lǁ!Ұ}7rΌ/ , &+M28䰘2VS2T<ȁU~^H|vvL4c~Շ_Эj ۺ#'Ű',ZA0@ (b4I-m&Yq|)iļSia#f\-(_C$𞐽K'q m'9SouU!&~0:zy.LpiJ Wb<.t `4 -] Xxo ef 4J~j9w=p&D:¢!'~2@$F;qd[j2U:~MV,s:GRU yc(RBǯ`jZJgpb7YzIjv}Œh|300Z1aNx:gTQJXhpUR mp6bu^A l>KEu <7~DYiD shQUy(~0ȤtD"t2M:PE!܌y4~7gnfL!)'#m9ҘסcHGZןN-ubz!bhILFdvԊx9oߟbbY.a냌u-F 6mNNsNG} ~`#5v!:wr?]+^$jPoIEDIgEF׳ um?3rnt.1T#3f`\lۇz;Ș)pAݗQ_f fjFۉږՆe{ݴ/{ J+enMF6HdfUc^ڣ!&Qs*0  pPly[o,\D]Yas[ݴr OI23 nmʔkHy&o_It{ 2퉩DzWcx+X>ZH2}1:_WD$`n68To]J~niO0pB59sgPic%EYvsЩ;iJ@_hrG`J{3C@NKɩ؟ SiAI9`E)3=~mnp3[jA4yHg@:C4eT X}˪cHo[ۇiU|(pix"zup;F#yg[{K0V:DO^K'?ܡ9% )8Pn#.V^]^)+Fh&ss|$9K=1Eu_,Cl] sX瑱w.d>aֳ֠#uF4_\4+33M0<<2A&84o; ch\Q+1,(\~V$~6: qg᫠vgc[ jFWq-qRՊŅ6U#;.! i Lќ(y%0Rq%N4wsOՓjzЛ r=*Mp|y v-HьKB] =mP\naiXsߋ9`bry{f61Nn(C_~ =5L׏/|"z#|O,\j=92YԠ*N~Rİ=,f~:H^7MHyF =%׽!] k`W;>E\c;r;ZVٔ; QO-&0"GUO׊^")0A95 3a3pKK?9,} ~y9Y4B U 1'o/&B4Hm$<.mUpӲZaHY" ^/acnw]`W tz6qTk\M5hUf\sxCsF|6Jht fM4)&1Fx>]4&rQ>kM\ #nE:;ViKօW^Ru dDyߡA#7 *Ss/ܪ[T4H$:F ]OPoS3FxM^Y=+6/m 5{mM8=wd ߔh] £@uLH5oxLhO?f2pN)c[{|MqN˜NT֥ñ5Όezq}r^ t# } n}L=kM23 g圵 ae-QʔY%}U,[:ZUc1*zq/ƑK!Lzøa K^m0k9vIs Q$=9':rUt2Ȕfݛw.Lw5 =!LU %@۝snۉ/٭p%;5RvvdU;ڂޔPG_ iF2zx Oɋ%q`VXN0tZxPfO%h sȀC$Yޯ/ܩgWN:"꺇ws `^"mRI{"isMuHZ$>4 }ٜr+F9%P3u#c8͍r֓ l#Vy@Z1xے%;CcO`J5(q9Q¿p}O?gx~)96)"ӛZ!OnyofvV𠞴%V a_go\X}>jj?x[Df5s ʹE(fHTvG;&hB~4w2X<ˤ',mU^ a;ޙB4?`UzZ1]=IYUliF$vpw!Jw l`8~-$dj̓k}7Fk.bCFzY 4jq:lG/a=D#&JC<$8%7s0a_Ch0."}xt|Σ>r^?}x%F9&oĺqbgd`E&,bgk&I_Ty\]\z"?d{`9EFi^?"!MmD7z!ZUDqyB`ݖfif+:. hճ?sM ༌*i|HϮ?TAGCC|Ck+"!%;1\ͤ˂MSOu7) twa/bIQx</O3Jᕍ\g0Yn 3N}DǢ3|2\ ax%tL?%ơ(ᾭ%\ږ)+$gl7*:{ޢid1*YZD=`c\]'Iy)],n_"Kd1pR7/Lc+Ϛ/dʏrݑ 5IFEAX/dzp[owKHûI3xS&kjA0{W?'UZICHuV9ouD Ėdg?9?ڨ1-?CebT= @r/QG Vԏc(*??9_ߕ8uwQ$jj[c].i+)U'uVl8jۉE"xeq=]77I.aQEFԟo\QRVחva`W`!@Z 3mߛy[*Xѧ5 \ 9<:YFNMS%Bc\S/ `zIK}zDTi}p0:`pޙcUT]wW.ѻFZzUSn` 'ga=)iK#fee,ˌ.Elf<`ԙ 2mUxYރxQntTe3}'Uo2?5k#`$RƮ%V QDՙ /JpP)  {:$JȀNj>.8ae WTmS ksL :˒̏A7s`zP ח!P]r%qd`kECѸ?zJ7[vώ^es= d"W h̕,D9rMbjPRpHE-o&LVZUúek=B+r2_KwPQˊ!pX[ǓK',b@X:,XM-$Qz& U!wN|tmw(ovg>@=R+s-t|tM$.oz Y(P;0LVlVY>K\I ]%\؏Onջnݪ&uR(t=Ӳˀ JX`Zٸ>(-`ioS^yc"g% \mhvᎦtU: $0!C}WTCln=+NѢU 3t=r>tf5Mjkt21iH."(;j"WHw*Øܠ_M+ p(*.]lnznS%](v<0=DžގaFM+ zjdDжu1l,i31`}3,I 2Ȗn o8Uћ f6D ޅC+m8vV-jaXr7Znڼn-p8vV !9*Ni ie5GR1E֐?e1S>KOacsR`0L0TH©FEZ>Gr#eܓ!x!TLaWElDK| 8s#(2x.ZeOξ^۲9\`wZmHA$W@^P*Tޡ/\‰UְEZjD#rG˥^44PM&32U=ƬbCW*Zv{yBXҀƖ)H,Һt}{t|6"xl4}ѥGQ A&: s (ӅuP#aYhik:PNPrptujfi (Jٵʨy¦c>|:ڪw5( -țw\t#!O)g Aζ`?}ӊZAv,XA]RaTkYlGa>AIڇ!!KYdU- ݻ?/Gjј?LJEiQCHN!s*p:BO^qEL$xx[4=zUm [Zz CfFOGpV}_`orq<'(Q& g Ώ'H69@]ȍ`em|XnXmA#3pqe) uפTkd? 1('bpdsG;lTþ27kB m.Q@Et^ɲ-sr7[Rы0mcm׎w$NtD+lî[?`*-$Aq}PlMSPZ=.\ڔ,5ܠf14wB?7.(mh9!^RvTw!ލ+9]{:^sHo=p|meO`4.tNKϲlȔrU*AXj_%)ry4O ,yz]@|8,cuU6W։)jG}Smŵ]"5=U4p燒˛gQPvq'Ԥ+DckJ#3waÎUpYZgE%xN}[s$0Q4f `@/gW).TR6Tm'|Ǟ&z 1-dr4359<2,B~fϠȓ5[Hƨ8͍bρ('9+/cruRO4۸S^~C3t90"BKj(DŪGOyJnE}g"twP}p)놗nhj bQZС Nq-b; ? Hw4'ay]`j RewD,T61$mJ]/ZدWO7 eOexDmzVȃ_Bj ;a%pIFKNrbå&FsVMB:.2N%K@%d1(T$.3 OyX ClЯUH!e4( !9Q~4mH^u]Mɧ@_(j{wM/>ZPNmI| 8A1 5K~OH)fLkyh.1Ξ s{ƀ %b,::oQ (T:Bups~)[>Gi,9A^6HWJ>ۆڡ5gNlR:΋ xyj]5|ƈ2Ž Hu1A̛F,Rx04AbU zA"cx/QUHCg.*Ãn}X2uy~RD'J5u|F=muܠc@.ñH.]EAR8G&ҳ.vV=@w]188$czq{;kViFb.˲sשt4!UyPNEuebLm@%!uHBPG1NU\>zZی$=,ā p'܍t3cN ^#N*4N~qcȺ 3fP޹O{k[ހ?6Yǫ+u!dcFx}9g K\a2\ dr@ՕZdbKBK6xj|hn% d-_W}@!&{‚Oċ< ud%\@ kD nFhwܞ21T & Qq~ y{TYQl$)jֳ?W(E82hO%+":o8,ci%)h)9kM8c* j#6ǰl4S \OjG 뤒sjg8(>Q׹<9SC&z`C2 U*ޝgY_` 5M1e\_5.:>MDjw)=2rJ5jCl-~_2-&`L[-V(p您y |V W@:/ -Z棸}*~ƗɪJ0e&ն `.w^GjZ@IF4H"Ҙsa%e+HbYr;澆]Fdꈢ =z$ 2KٙKFsUuovKQ@zbc_ꢳUZ*&X3za7&"Q--|Xh5Ԛk}1x.jrXHc`G?W}X2語j+vQae>QAXs6Ŷ9B'" 9& %(*ޒ3ܲr2EiLgp*\v. XRlO  [mXUl`w!He7nuKn a}vL&WVS@JCVc2c͠W۫9j):\Q/6 ᱂W5n5 oh|6>ƺYz5大 ;tG?>c |pgRmO7rVkt[ YT&g~: O5MwRID*^XEqf)9o"h"yߩs~A8A]LXbyiBX7gݼ >ŶBtfMaLs^T!'%:bs;<DZF3\ߎP?||P"7?EIBk_RN)"j$LvƖC\f3=uߴ830F*Wi$D #hN|q~&lftI2/$ƂfTv7Oꧥ6hTcyj=KQ67s^ ƇK(<3I;ljKk#Avg~KE+)g/gͲQySEB~1ގB^G9g"-E^Pyxw$RQ1kXr[;d-(E}4 6FKs.wb+ogo!E Xqo/p6 ߺL%ŹGYbms Z"E/kA YJR N>F]D_+pvX@pʶ?wF MMW0ȜA}J2^ 8-U o(! ,ǹ]Yt[nѿ=ˢa!U>׽}rRkEt,-{ U%5±_R€i+l::ǕaL݌/뼏fc SOQ{؇/)s[B [,: !Y=ZK:]>-4hr_&~\#tc~J{pb|_a4Z.S_#_aBww`;b@S~ZrNɯn X-ooAhm]hh<7ڗ &PYNV J=!p{_ RGބa֦\+d#rC>4 SثZVZ5wRh؊iš~&/q~ @†̱+ц5I# ~HI]^ecGw';ͫC:~ߨ0 w9UFoÍ4Ar6k.5QPx%*-LšG̹5#BWʈ=~Xa^)ZYCOY(ڇ8_Z)]"AXɪLm.iFf{={A"!`gsDc.~ZBQ8ZnpꀻaQP8aCWOt;n7-0QR)^PZB Rt7rqERps K6- UXz@1硏s{RKacp:ѣM75w3jz>e1EY7wE5 -qiO]*>OmBVf@P7p#ֿh"uO'T f$氰Wḥ=p^W8SЇ1>NF\w^`m壶 YZ