fwts-22.01.00-bp152.4.27.1<>,b랜!M@eeek{a-;?{gq.ά;j%at]%)hܼVQ? 򟞮$5>粄Vom|W^O]zULyi<.x̉%$DVШyҺニ)ifk! "ё(|mϖr$^ `¶'7tr*ꂌn`:m3$^_H5@-,o2HƽֲS|FA+dNZӠV>A8?(d  1 (V\d  $   p H   D   ( 8 J9J:nJFEG\HIX4YH\x]^ bcsdefl!u4v wxpy3z$Cfwts22.01.00bp152.4.27.1Firmware Test SuiteThe FirmWare Test Suite (fwts) is a tool to do automatic testing of a PC's firmware. There can be a lot of subtle or vexing Linux Kernel/firmware issues caused when firmware is buggy, so it's useful to have a tool that can automatically check for common BIOS and ACPI errors. Where possible the tool will give some form of advice on how to fix issues or workaround firmware issues.bobs-arm-8Martin Pluskal Martin Pluskal Martin Pluskal Martin Pluskal mpluskal@suse.comMartin Pluskal Martin Pluskal Martin Pluskal Martin Pluskal Martin Pluskal mpluskal@suse.comMartin Pluskal Martin Pluskal Martin Pluskal Martin Pluskal Martin Pluskal Martin Pluskal Martin Pluskal ro@suse.dero@suse.deMartin Pluskal Martin Pluskal Martin Pluskal Martin Pluskal Martin Pluskal Martin Pluskal Martin Pluskal Martin Pluskal Martin Pluskal Martin Pluskal Martin Pluskal Martin Pluskal Martin Pluskal Martin Pluskal Martin Pluskal Martin Pluskal mpluskal@suse.commpluskal@suse.commpluskal@suse.commpluskal@suse.commpluskal@suse.commpluskal@suse.commpluskal@suse.commpluskal@suse.commpluskal@suse.commpluskal@suse.commpluskal@suse.commpluskal@suse.commpluskal@suse.commpluskal@suse.commpluskal@suse.commpluskal@suse.commpluskal@suse.commpluskal@suse.commpluskal@suse.commpluskal@suse.commpluskal@suse.commpluskal@suse.commpluskal@suse.commpluskal@suse.commpluskal@suse.commpluskal@suse.commpluskal@suse.commpluskal@suse.commpluskal@suse.commpluskal@suse.commpluskal@suse.comdvaleev@suse.commpluskal@suse.commpluskal@suse.commpluskal@suse.comjengelh@inai.dempluskal@suse.commpluskal@suse.com- Update to version 22.01.00: * fwts-test: sync up the adding option for get next high monotonic count * uefirtmisc: add option to specify iterations get next high monitonic count * uefirtmisc: add checking the resources for testing * lib: fwts_version.h - update to V22.01.00 * debian: update changelog * fwts_acpica: skip unneccessary null check * s3: use system suspend default if --s3-sleep-type is not used * tpmevlogdump: add supporting several new types for event log dumping * auto-packager: mkpackage.sh: remove hirsute * tpmevlog: add supporting several new types for event log checking * lib: fwts_tpm.h: add new type definition- Update build dependencies (add zlib)- Update to version 21.12.00: * lib: fwts_version.h - update to V21.12.00 * debian: update changelog * dmicheck: skip scanning smbios in /dev/mem on aarch64 * s3: increase s2idle_residency to u64 to avoid overflows * s3: fix incorrect error messages for s2idle_residency * acpi: uniqueid: clean up pedantic static analysis warnings * s4: clean up pedantic static analysis warnings- Update to version 21.11.00: * lib: fwts_version.h - update to V21.11.00 * debian: update changelog * auto-packager:mkpackage.sh: add jammy * fwts-test: sync up the adding sleep type for s2idle testing * s3: add sleep type setting for testing with s3 or s2idle * acpi: madt: De-initialise ACPICA core engine in case of error. * lib: fwts_smbios: fix loading SMBIOS table from uefi * acpi: uniqueid: skip comparison of _HID and _CID of the same device * ACPICA: Update to version 20210930- Update to version 21.09.00: * snapcraft: Fix incorrect core20 library path * snapcraft: fix path to fwts * lib: fwts_version.h - update to V21.09.00 * debian: update changelog * acpi: replace fwts_firmware_detect() by fw->firmware_type * lib: fwts_firmware: fix incorrect comments for fwts_firmware_detect * uefi: uefirtmisc: reduce scope of some variables * uefi: securebootcert: make some function arguments const * src/pci/smccc: reduce scope of variable ret * bios: smm: remove redundant variable n * acpi: iort: constify some function arguments * acpi: dmar: constify a pointer argument in acpi_parse_dev_scope * acpi: cstates: remove redundant null check on entry * smccc_test: fix missing ) in pr_info call * opal: clean up some coding style issues * opal: Fix a few memory leaks on asprint allocated buffers * acpi: s3power: clean up pedantic static analysis warnings * uefirtvariable: clean up pedantic static analysis warnings * opal: mem_info: clean up pedantic static analysis warnings * fwts_devicetree: clean up static analysis warning * fwts_acpi_tables: NULLify table pointers * snapcraft: update to use core20 * lib: use rather than - Update to version 21.08.00: * Manual: update number of tests, date and remove double spaces * debian/control: Add device-tree-compiler as dependency for armel/armhf/arm64 * fwts_firmware: Rework Devicetree firmware detection * Enable dt_sysinfo test for Power only- Update to version 21.08.00: * lib: fwts_version.h - update to V21.08.00 * debian: update changelog * ARM64 SMCCC firmware API tests * bios: smm: fix indentation * acpi: sbbr: refactor by fwts_get_fadt_version * lib: fwts_acpi_tables: add a function to get FADT versions * acpi: fadt: remove hard-coded FADT version * acpi: fadt: clarify comments of FACS and HW-reduced mode * acpi: dmar: add a warning when PCI device is not found- Update to version 21.07.00: * ACPICA: Update to version 20210730 * uefirttime: Fix incorrect error messages for invalid time test * fwts-test: sync up with updates in fwts_wmi_known_guids * acpi/wmi: update WMI known GUIDs from Linux kernel 5.14-rc1 * sbbr: remove pm_file test (not required in BBR 1.0) * lib: fwts_version.h - update to V21.07.00 * debian: update changelog * auto-packager: mkpackage.sh: remove groovy * uefirttime: add advice for the timezone 2047 failure (LP: #1933503) * fwts-test: sync up with DBG2 changes from BSA updates * fwts_acpi_tables: skip FACS warning for reduced hardware * acpi: method: Make _AEI test optional for SBBR * acpi: dbg2: Allow 16550 compatible serial port in DBG2 * acpi: method: Make method_test_ADR() optional * sbbr: adjust signature name for MADT * sbbr: remove SSDT from mandatory list * sbbr: acpitables: add new recommended tables * acpi: acpitables: add advices for table revision tests- Update to version 21.06.00: * lib: fwts_version.h - update to V21.06.00 * debian: update changelog * fwts_acpi_tables: memcpy 4 char ACPI table name * Remove complex disabling of ACPI for non-ACPI targets * Debian: move source lintian overrides file to source * Add lintian overrides for ldconfig trigger warning * Debian: control: update Standards-Version to 4.1.0 * Debian: update compat level to 9 * Debian: add Rules-Requires-Root field to control file * Debian: add project Homepage field to control file * debian/copyright: use secure https url specifier * Debian: remove spaces at end of lines of control file * Debian: remove spaces at end of lines of changelong * auto-packager: mkpackage.sh: remove xenial * live-image: add "TPM tests" to root menu * live-image: add utils tests to "Selected" menu * tpmevlog: add to batch tests * klog.json: check IRQ requests on irqchip- Update to version 21.05.00: * lib: fwts_version.h - update to V21.05.00 * debian: update changelog * auto-packager:mkpackage.sh: add impish * fwts-test: sync up with dbgp changes * acpi: dbgp/spmi: check space ids by fwts_acpi_space_id * acpiinfo: update ACPI 6.4 vs. ACPICA versions * lib: acpi: fix incorrect actual vs. struct length outputs * acpi: shorten helper function names by removing "check" * lib: acpi: unify naming style by removing "ACPI" * fwts-test: sync up with PMTT refactoring changes * acpi: refactor length check by fwts_acpi_structure_length_check * acpi: refactor zero length by fwts_acpi_structure_length_zero_check- Update to version 21.03.00: * uefirtvariable: fix memory leak * acpi: refactor by fwts_acpi_reserved_type_check * acpi: refactor by fwts_acpi_structure_range_check * uefirtauthvar: check variable runtime services supported before testing (LP: #1913351) * uefirtvariable: check variable runtime services supported before testing (LP: #1913351) * uefirtmisc: check misc runtime services supported before testing (LP: #1913351) * uefirttime: check time services supported before testing (LP: #1913351) * acpi: spcr: accept baud rate 0x0 as a preconfigured state * fwts-test: sync up with PMTT rev 2 changes * acpi: pmtt: update PMTT to revision 2 (mantis 1975)- Switch to obs scm _service- Update to version 21.03.00: * See provided changelog for detailed list of changes- Update to version 21.02.00: * See provided changelog for detailed list of changes- Update to version 21.01.00: * See provided changelog for detailed list of changes - Drop upstreamed patch: * acpi-pmtt-fix-infinite-loops-when-length-is-incorrectly-zero.diff- Add patch fixing bsc#1178442 bsc#1177992 * acpi-pmtt-fix-infinite-loops-when-length-is-incorrectly-zero.diff- Update to version 20.12.00: * See provided changelog for detailed list of changes- Fix broken source url and prepare done in previous changes- add patch fwts-fix-non-acpi.patch fix build on non-acpi platforms like ppc64le and s390x- Update to version 20.11.00: * See provided changelog for detailed list of changes- Update to version 20.09.00: * See provided changelog for detailed list of changes- Update to version 20.07.00: * See provided changelog for detailed list of changes- Update to version 20.06.01: * See provided changelog for detailed list of changes- Update to version 20.05.00: * See provided changelog for detailed list of changes- Update to version 20.03.01: * Small fixes- Update to version 20.03.00: * Plenty of changes- Update to version 20.01.00: * Plenty of changes- Update to version 19.12.00: * Plenty of changes- Update to version 19.09.00: * acpi/boot: skip ACPI BOOT test on UEFI systems. * acpi: s3: fix typo from 6b94bb6a4b13e * opal: add more bounds checking and zero pstates array * fwtstest: boot-0001: sync with boot table check on efi firmware - Changes for version 19.08.00: * ACPICA: Update to version 20190816 * auto-packager: mkpackage.sh: remove cosmic * efi_runtime: enable KBUILD_MODPOST_WARN=y to workaround build failures * ACPICA: Update to version 20190816 * fwtstest: syntaxcheck-0001: update to keep in sync with ACPICA features * README: Add package dependency notes for ARM64- Update to version 19.07.00: * cpu/msr: add 3 more CPU IDs for IA32_silvermont_MSRs * cpu/msr: check SGX & LMCE in IA32_FEATURE_CONTROL (3ah) * cpu/msr: move TSC_ADJUST (3bh) to IA32_MSRs * cpu/msr: add SMM_MONITOR_CTL (9bh) to IA32_MSRs * cpu/msr: add MC*_CTL2 MSR registers * cpu/msr: add VMX_VMFUNC MSR register * cpu/msr: add MISC_ENABLE MSR to IA32_atom_MSRs * cpu/msr: add MSR_PMG_IO_CAPTURE_BASE to IA32_silvermont_MSRs * cpu/msr: add MSR_FEATURE_CONFIG to IA32_silvermont_MSRs * cpu/msr: add MSR_TEMPERATURE_TARGET to IA32_silvermont_MSRs * cpu/msr: add MSR_BBL_CR_CTL3 to IA32_silvermont_MSRs * ACPICA: Update to version 20190703- Update to version 19.06.00: * acpi/fadt: update latest FADT revision to 6.3 * uefitime: add checking the EFI_UNSUPPORTED return code * uefirtvariable: add checking the EFI_UNSUPPORTED return code * uefirtmisc: add checking the EFI_UNSUPPORTED return code- Update to version 19.05.00: * ACPICA: Update to version 20190509 * Add support for Hygon Dhyana CPU * dmicheck: update supported SMBIOS version * acpi/method: check full and battery power if acpi_video0 exists * dmicheck: checks type length vs. SMBIOS versions * dmicheck: add Type 1's Field 25 & 26 as used by kernel * apic: apicedge: fix typo in error messages * cpufreq: change from abort to skip when cpufreq cannot run * kernel:version: change ACPI version to ACPICA version * pci:crs: fix an indentation error * acpi: s3: check sleep type for output messages * snapcraft: update to core18 * acpica: re-work fwts / iasl interface to work with latest ACPICA * fwts-test: refresh syntaxcheck test output * fwts-test/syntaxcheck: refresh syntaxcheck test output * fwts_acpica: don't add in RSDP or null table entries to XSDT or RSDT (LP: #1829167) - Changes for version 19.03.00: * acpi: madt: Add support for ACPI 6.3 * lib: fwts_acpi_tables: add a new function to check reserved values * lib: fwts_acpi_tables: rename fwts_acpi_subtable_length_check * srat: replace structure length checks by fwts_acpi_structure_length_check * acpi: refactor all table length checks to fwts_acpi_table_length_check * README: update installing fwts by "sudo make install" * acpi/fadt: reject 5.0 tables with ARM specific attributes set * acpi/iort: permit SMMU model values of 4 and 5 * acpi/iort: fix error in SMMU node length check * ACPICA: fix IASL building issues with gcc-9 and --as-needed linker option- Update to version 19.02.00: * klog.json: add an "IOAPIC .. not in IVRS" message * utilities: kernelscan: add AMD iommu for IVRS errors * acpi/method: check levels on full power and battery power * acpi: add address space types according to mantis 1965 (ACPI 6.2b) * acpi/pptt: check flags by revision (mantis 1870 for ACPI 6.2b) * acpi: pdtt: update flags defintion according to mantis 1867 (ACPI 6.3) * acpi/nfit: update memory mapping attributes (mantis 1873 for ACPI 6.3) * acpi/hmat: update for hmat revision 2 (mantis 1914 for ACPI 6.3) * acpi/madt: remove two reserved bytes (mantis 1934 for ACPI 6.3) * acpi/madt: update for Local APIC Flags (mantis 1948 for ACPI 6.3) * acpi/hmat: update System Locality Latency (mantis 1959 for ACPI 6.3) * acpi/method: add tests for NVDIMM control methods for ACPI 6.3 * acpiinfo: update ACPI and ACPICA versions * acpi/srat: add test for Generic Initiator (mantis 1904 for ACPI 6.3) * ACPICA: Update to version 20190215 * acpi: fix a typo in comment * fwts: fix up a handful of spelling mistakes * efi_runtime: fix access_ok build issues on 5.0 kernels * Makefiles: workaround address-of-packed-member warnings with gcc-9 * acpica: utdecode: fix missing comma in array declaration AcpiGbl_GenericNotify- Update to version 19.01.00: * mtrr: check memory type above 4GB on AMD platforms * ACPICA: Update to version 20190108 * dmi: dmicheck: remove redundant new lines * lib: fwts_ac_adapter: fix readdir(ac_power_dir) failing * lib: fwts_ac_adapter: fix failing to find AC directory * Update copyright year to 2019 * mtrr: fix incorrect mask on amd_sys_conf * sbbr: fadt: clean up major/minor version checking * acpi/madt: clean up indentation issue, remove tab * lib: fw_pm_method: move the sleep t_start time out of logind_on_signal (LP: #1809096) - Changes for version 18.12.00: * ACPICA: Update to version 20181213 * mtrr: allow uncached type for PCI prefetchable memory * lib: disable /dev/mem access on aarch64 * dmicheck: drop unaligned memcpy * lib: drop fwts_memcpy_unaligned * dmicheck: use dmi_load_file in preference to fwts_mmap- Update to version 18.11.00 (boo#1116172): * dmicheck: checks (Extended) Maximum Capacity for type 16 * snapcraft: add libbsd-dev to build-packages * efi_runtime: re-enable the resetsystem runtime interface * olog:olog.json: Update OPAL skiboot errors to check on olog scan * acpi: button: check fixed hardware & control method power buttons * kernelscan: add -k option to specify klog json filename * src/lib: add module probing helper functions * lib: fwts_efi_module: use the new module loading helper functions * lib/fwts_cpu: use new use the new module loading helper functions- Update to version 18.08.00: * ACPICA: Update to version 20180810 * uefi: uefivarinfo: add to UNSAFE category * acpi: gtdt: add checking the valid base physical address * dmicheck: update Processor Upgrade field in Type 4 * dmicheck: update connection and port types in Type 8 * dmicheck: update Usage and Characteristics 2 fields in Type 9 * dmicheck: update memory type and add nvdimm fields for Type 17 * coreboot/clog/clog.c: add clog test - Refresh patch fwts-no-compiletime.patch - Fix typo in changelog- Don't build with -Werror (fixes build with gcc8)- Update to version 18.06.02: * ACPICA: Update to version 20180531 * acpi: fadt: allow first reserved field to be 1 * update_version.sh: also update version in snapcraft.yaml * snapcraft.yaml: add in missing stage packages * lib: fwts_set: fix API for fwts_set, add fwts_set_int * lib: add small helpers top get/set /sys/power/pm_debug_messages * acpi: s3: force enable /sys/power/pm_debug_messages * acpi: s4: also check for file based swap files * acpi: s4: force enable /sys/power/pm_debug_messages * acpi: s3power: force enable /sys/power/pm_debug_messages * acpi: hpet: fix getting invalid vendor ID and clock period * acpica: fix linking issues when building non ACPI builds * fwts_uefi: Fixing tiny typos in the uefi driver * mtrr: fix incorrect type detection- Update to version 18.05.01: * No changelog available- Update to version 18.05.00: * fan: add cooling_device# to error messages * doc: adding acpitests, uefitests and sbbr options to man page * acpi: syntaxcheck: change it from batch to batch-experimental * fwts_framework: add an "ifv" option for Independent Firmware Vendor * dmicheck: skip checks of DMI default values for IFV * acpi: method: add test for _CLS control method * lib: create helper functions for device identification objects * acpi: devices: add common objects * fwts-frontend-text: add a recommended option for IFV (IBV) * fwts-frontend-text: add an option for ARM SBBR * auto-packager: mkpackage.sh: add cosmic * ACPICA: Update to version 20180427 * ACPICA: Update to version 20180508 * README: Add libpci-dev dependency ppc64el * cpufreq: Add support to read boost frequencies- Update to version 18.03.00: * ACPICA: Update to version 20180313 * dmi: dmicheck: add chassis type for Type 3 * klog.json: change severity for AE_ALREADY_EXISTS errors * olog:olog.json: Update OPAL skiboot errors to check on olog scan * uefirtauthvar: remove test with EFI_VARIABLE_AUTHENTICATED_WRITE_ACCESS- Update to version 18.02.00: * ACPICA: Update to version 20180209 * uefirtvariable: add test for EFI_VARIABLE_AUTHENTICATED_WRITE_ACCESS attribute * acpi: acpiinfo: add acpi 6 to acpiinfo test * acpi: method: check one element in _TSD only for acpi 6.2+ * acpi: spcr: update interface types based on DBG2 * acpi: method: allow _WAK to return an integer * mkpackage.README: change urgency level to medium * lib: fwts_log: remove redundant initialization of ptr1 * acpi: wmi: remove redundant initialization of 'info' * lib: fwts_log: remove redundant initialization of 'field' * lib: fwts_pipeio: remove variable status * lib: fwts_acpi_tables: remove redundant initialization to 'result' * README: Add dependencies per Platform * auto-packager: mkpackage.sh: remove zesty * uefirtvariable: modify both authenticated attributes setting test * acpi: fadt: Fix FACS checking * acpi: iort: Update revision checking- Update to version 18.01.00: * ACPICA: Update to version 20180105 * acpi: LPIT: check for monotonically increasing UID * fwts-test: sync up with changes in lpit test * Treewide: update copyright year to 2018 * fwts-test: arg-help: sync up with copyright year changes * acpica: fix linking issues when building non ACPI builds * lib: fwts-battery: use PRIu32 format specifier, fixes cppcheck warning * acpi: acpidump: move declaration to before statements, add blank lines * lib: fwts_safe_mem: don't perform void * pointer arithmetic, fix 32 bit end * lib: fwts_alloc: move 'pos' to a deeper scope, minor style change * opal: reserve_mem: remove redundant initialization of pointer p * opal: reserve_mem: remove unused variable 'i' and move scope of variable 'value' * sbbr: rsdp: remove redundant initialization of boolean 'signature_pass' * acpi: madt: move scope of boolean 'passed' * acpi: pptt: move scope of index variable 'i'. * acpi: rasf: move scope of index variable 'i' * sbbr: acpitables: clean up code, move scope of some variables * acpi: erst: cast size to uint64_t to clean up static analysis warning * uefi: uefidump: clean up some static analysis warnings * securebootcert: add checking read-only for the AuditMode and DeployedMode * securebootcert: move to UNSAFE category - Changes for version 17.12.00: * ACPICA: Update to version 20171215 * Fixed Bugs * acpi: tpm2: update spec url * trival: make read only const strings static * dmicheck: sbbr: make some SMBIOS structs optional * acpi: dbg2: sbbr: allow PL011 UART as a valid subtype * acpi: spcr: sbbr: IOAPIC is valid interrupt type * acpi: sbbr: relax a few test pass conditions * acpi: bert: remove confusing warning * acpi: madt: only inspect Local APIC/x2APIC/SAPIC tables if enabled- Update to version 17.11.00: * acpi: devices: add a new test for acpi ec device * acpi: devices: add a new test for ACPI AC adapter device * acpi: devices: add a new test for ACPI battery device * acpi: devices: add a new test for smart battery device * acpi: devices: add new tests for power and sleep button devices * acpi: madt: check GICD's system vector according to mantis 1819 (ACPI 6.2a) * acp: nfit: add platform capability according to manit 1831 (ACPI 6.2a) * lib: add new large resource data type for _CRS methods * acpi: sdev: add ACPI SDEV test (mantis 1632) * acpi: dppt: add ACPI PDTT test (mantis 1576) * acpi: devices: add new tests for lid device * acpi: devices: add new tests for ambient light sensor device * acpi: devices: add new tests for time and alarm device * acpi: devices: add new tests for wireless power calibration device * acpi: add tests for _SRT control method * auto-packager: mkpackage.sh: add bionic * fwts: add bash command-line completion * Add ACPI 1.0 RSDP test to make sure RSDT field isn't null * ACPICA: Update to version 20171110 * uefi: uefidump: add dumping for BluetoothLE device path * uefi: uefidump: add dumping for DNS device path * uefi: uefibootpath: add test for BluetoothLE device path * uefi: uefibootpath: add test for DNS device path- Update to version 17.09.02: * No changelog provided- Update to version 17.09.00: * ACPICA: Update to version 20170831 * dmi: dmicheck: Add BMC Interface Type definitions from IPMI spec * lib: fwts_acpi_tables: add a new function to check Reserved field * lib: fwts_acpi_tables: add a new function to check reserved bits * efi_runtime: add resetsystem runtime service - Refresh fwts-no-compiletime.patch- Update to version 17.08.00: * ACPICA: Update to version 20170728 * New ACPI tests defined by ACPI 6.2: + acpi: sdei: add ACPI SDEI test (mantis 1714) + acpi: pcct: refactor subspace to individual functions + acpi: pcct: update PCCT table to ACPI 6.2 (mantis 1659 & 1755) + acpi: dppt: add ACPI DPPT test (mantis 1795) + acpi: pptt: add ACPI PPTT test + acpi: hmat: add ACPI HMAT test (mantis 1705) + acpi: method: add _LSI test according to ACPI 6.2 (mantis 1721) + acpi: madt: Add support for ACPI 6.2 * New tests for SBBR: + acpi: fadt: add SBBR compliance tests + acpi: madt: add SBBR compliance tests + acpi: spcr: add SBBR compliance tests + acpi: xsdt: add SBBR compliance tests + acpi: dbg2: add SBBR compliance tests + acpi: gtdt: add SBBR compliance tests + acpi: acpitables: add SBBR compliance tests + dmi: dmicheck: add SBBR compliance tests + acpi: method: add SBBR compliance tests + acpi: rsdp: add SBBR compliance tests + acpi: sbbr: sync up with new SBBR tests * dmicheck: fix dmi_reserved_bits_check function when size is 64 * acpi: pmtt: fix typo from pmmt to pmtt * acpi: rasf: add ACPI RASF test * acpi: remove "Linux-ready Firmware Developer Kit" from license header of files not derived from the LFDK * opal: fix build error on Ubuntu 12.04 i386 with gcc 4.6.3 * lib: fwts_safe_mem: remove need to copy into a buffer * acpi: bert: add safe memory read check on mmap'd memory * acpi: hpet: add safe memory read check on mmap'd memory * acpi: mcfg: add safe memory read check on mmap'd PCI config memory * acpi: pcc: add safe memory read check on mmap'd PCC header * bios: pciirq: add safe memory read check on mmap'd pci irq region * bios: pnp: add safe memory read check on mmap'd memory region * dmi: dmicheck: fix incorrect safe memory read check on DMI mmap'd region * uefi: csm: add safe memory read check on mmap'd interrupt and option ROM regions * fwts_safe_mem: workaround longjmp clobber warnings * lib: fwts_smbios: use fwts_safe_memcpy to read SMBIOS entry * lib: fwts_acpi_tables: re-work fwts_acpi_get_rsdp, less memory copies * lib: fwts_safe_mem: really force reads * lib: fwts_acpi_tables: unmap mem, fixes memory leak * acpi: xsdt: fix build error on 32 bit systems * acpica: fwts_acpica: fix linker issues on Fedora (LP: #1712572) * acpi: method: Fix error message. - Refresh fwts-no-compiletime.patch- Update to version 17.07.00 (boo#1055891): * acpi: bgrt: update according to acpi 6.1 errata * acpi: method: update _PSD and _TSD tests according to ACPI 6.1 errata * acpi: rsdp: revision 1 must have length 20 according to ACPI 6.1 errata * acpi: method: Add _CPC revision 3 according to ACPI 6.2 * acpi: hest: add new type 11 introduced in ACPI 6.2 * acpi: srat: add new type 4 according to ACPI 6.2 * acpi: method: update _GCP according to ACPI 6.2 * acpi: hest: add notification type 11 according to ACPI 6.2 * acpi: fadt: update minor version to 2 for ACPI 6.2 * acpi: hest: add checks for GHES_ASSIST flag value in ACPI 6.2 * acpi: wsmt: add wsmt test according to ACPI 6.2 * ACPICA: Update to version 20170629 * acpi: tpm2: Add additional start method values * acpi: iort: Add PMCG support- Update to version 17.06.00: * ACPICA: Update to version 20170531 * olog: olog.json: Update OPAL skiboot errors to check on olog scan * bios: mtrr: print out actual default type of MTRR * lib: fwts_alloc: only parse mem info once we have a valid line read in * lib: fwts_safe_mem: add SIGBUS handling * lib: fwts_alloc: re-work the memory parsing again * acpi: method use correct format specifier for uint32_t type * bios: mtrr: fix compile error in ubuntu trusty * opal: fix tests dependency on libfdt * bios: mtrr: fix overlaped MTRR (LP: #1694710)- Update to version 17.05.00: * Support SMBIOS 3.1.1 tests * dmi: dmicheck: check new offset in spec 3.11 * dmi: dmicheck: check reserved bits of Type 7 offset 0x5 * dmi: dmicheck: check reserved bits of Type 7 offset 0xd * dmi: dmicheck: add a function to verify reserved bits * dmi: dmicheck: add a helper function to check word min/max value * dmi: dmicheck: check pci(e) slot and segment, bus and dev/func * dmi: dmicheck: check reserved bits of offset 0x5 in type 13 * dmi: dmicheck: add a helper function to check a reserved offset * dmi: dmicheck: check reserved bits in type 15 & type 17 * dmi: dmicheck: check reserved fields in type 22, 23, 30, 32, 38 and 39 * dmi: dmicheck: add 64-bit integer to dmi_reserved_bits_check * dmi: dmicheck: add checks for new type 43 * dmi: dmicheck: check reserved bits in Type 0 * fwts/opal: Power management DT Validation tests. * fwts/opal: Reserved memory DT validation tests. * Add snapcraft rules to build a fwts snap- Update to version 17.03.00: * ACPICA: Update to version 20170224 * sbbr: Add "--sbbr" flag to support running SBBR Tests. * acpi: iort: Add support for SMMUv3 * lots of bugfixes- Update to version 17.02.00: * ACPICA: Update to version 20170119 * acpi: s3: Add new --s3-resume-hook option * Add README_JSON.txt for FWTS * klog.json: Add some more kernel messages to klog data base * klog.json: Add some EFI driver kernel messages to klog database * klog.json: Add some EFI quirk driver kernel messages to klog database * klog.json: Add some more EFI driver kernel messages to klog database * klog.json: Add some miscellaneous messages to klog database * Integrate PPC for FWTS-LIVE Frontend * fwts_framework: handle -? option differently from -h - Rebase fwts-no-compiletime.patch- Update to version 17.01.00: * ACPICA: Update to version 20161222 * klog.json: Add kernel errors to the database * opal: pci_info: minor code style clean-ups- Update to version 16.12.0 (boo#1017763): * ACPICA: Update to version 20161117 * klog.json: Add a few more kernel errors to the database * opal: pci_info: Add OPAL PCI Info validation * opal: mem_info: Add OPAL MEM Info validation * opal: cpu_info: Add OPAL CPU Info validation * securebootcert: add variable AuditMode checking * securebootcert: add variable DeployedMode checking * lots of bugfixes- Replace requires with recommends for dependencies- Update to version 16.11.00: * ACPICA: Update to version 20160930 * uefibootpath: add test for eMMC device path * uefidump: add dumping for the eMMC device path * miscelanous bugfixes- Update to version 16.09.00: * lib: acpi: add supports for WPBT * acpi: wpbt: add ACPI WPBT test * lib: acpi: add supports for DRTM * acpi: drtm: add ACPI DRTM test * lib: fwts_guid: add a compare function * acpi: nfit: check fields equals 0 for Virtual CD and Disk * opal: mtd: Add OPAL MTD Validation * acpi: ACPI Platform check updates * acpi: fadt: Remove HEADLESS check on reduced hardware * pci: aspm: Add segment support * ACPICA: Update to version 20160831 * lots of bugs fixed - Drop no longer needed json-c-includes.patch - Exclude s390x from building- Update to version 16.08.00 (boo#994319): * acpi: nfit: add ACPI NFIT test * lib: acpi: add support for MPST * acpi: mpst: add ACPI MPST test * lib: acpi: add support for PMTT * acpi: pmtt: add ACPI PMTT test * ACPICA: Update to version 20160729 * lots of bugfixes- Update to version 16.07.00: * --uefi and --acpi options renamed to --uefitests and - -acpitests * ACPI table tests in the acpitables test have been moved into specific ACPI tests. * cpi: acpidump: update TCPA table and acpidump accordingly * acpi: add ACPI TCPA test * acpi: add XENV table test * lib: fwts_framework: Append "tests" to --uefi and --acpi * live-image/fwts-frontend-text: update to --uefitests and - -acpitests * lib: acpi, acpidump: rename slit tables types * lib: acpi: add in new GICC table fwts_acpi_table_gicc_affinity * acpi: add SRAT table sanity checking (LP: #1464658) * acpi: add BERT table sanity checking (LP: #1464712) * lib: acpi: Add in GAS address types * acpi: add ECDT table sanity checking (LP: #1464716) * lib: acpi: Add support for the SPMI table * acpi: add ACPI SPMI table sanity checking (LP: #1465256) * acpi: add ACPI SLIT table sanity checking (LP: #1465276) * lib: acpi: Add support for the HEST family of ACPI tables * acpi: add ACPI HEST table sanity checking (LP: #1465379) * acpi: Add BOOT table test (LP: #1465435) * acpi: Add DBGP table test (LP: #1465441) * acpi: Add DBG2 table test (LP: #1465710) * acpi: re-orgainise HPET tests * acpi: move MADT test from acpitables into new MADT test * acpi: move GTDT test from acpitables into new GTDT test * acpi: move XSDT test from acpitables into new XSDT test * acpi: move RSDP test from acpitables into new RSDP test * acpi: move RSDT test from acpitables into new RSDT test * acpi: acpitables: remove no-op MCFG test * acpi: move SBST test from acpitables into new SBST test * acpi: move FADT test from acpitables into existing FADT test * acpi: acpitables: remove redundant acpi table checking * acpi: allow various ACPI table tests to run without root access * lib: fwts_acpi_tables: fully pad out fixed up ACPI OEM IDs * acpi: spcr: add missing white space in error messages * acpi: add ACPI ERST test (LP: #1467835) * acpi: correct ACPI BGRT table type * acpi: add ACPI BGRT test (LP: #1467863) * acpi: add ACPI CPEP test (LP: #1467870) * acpi: add ACPI FACS test (LP: #1467966) * acpi: acpidump: add in missing exponent field to SLIC * acpi: add CSRT ACPI Table test (LP: #1470116) * acpi: add LPIT ACPI test (LP: #1470184) * acpi: add WAET ACPI table test (LP: #1470495) * acpi: add SLIC table test (LP: #1470518) * acpi: add MSDM table test (LP: #1470538) * acpi: add UEFI ACPI data table test (LP: #1471698) * bios: os2gap: remove ancient legacy test (LP: #1470573) * lost of bugfixes- Update to version 16.06.01: * lib: acpi: add an acpi category * live-image/fwts-frontend-text: add selections of acpi and uefi tests * acpi: add tests to acpi category * acpi: fwts-tests: Remove redundant tailing space and update fwts-tests * auto-packager: mkpackage.sh: remove lucid * auto-packager: mkpackage.sh: add wily * acpi: Add SPCR ACPI table check (LP: #1433604) * dmi: dmicheck: add 4 new DMI chassis types * lots of bugfixes - Enable building on all architectures- Update to version 16.05.01: * ACPICA: Update to version 20160108 (LP: #1532268) * acpi: method: add _PTC test * sync with uefi 2.5 global variables + uefidump: add dumping global variabl AuditMode + uefidump: add dumping global variabl DeployedMode + uefidump: add dumping global variable OsRecoveryOrder + uefidump: add dumping global variable PlatformRecovery#### + uefidump: add dumping global variable SysPrepOrder + uefidump: add dumping global variable SysPrep#### * ACPICA: Update to version 20151218 (LP: #1527733) * esrtdump: add dumping for esrt table (LP: #1532103) * Fix spelling mistakes of "ACPI" * method: update method status * utilities: kernelscan: fix memory leaks and a segfault * acpi: cstates: fix clang build warning on zero CPUs. * acpi: s3, s3power, s4: replace cleanup free with explicit frees * data: klog.json: add in some more kernel error messages for 4.4 (LP: #1526746) * acpi: hpet: fwts_mmap failure is FWTS_MAP_FAILED and not NULL * acpi: pcc: fwts_mmap failure is FWTS_MAP_FAILED and not NULL * bios: ebdadump: fwts_mmap failure is FWTS_MAP_FAILED and not MAP_FAILED * acpi: syntaxcheck: ASL_MSG_COMPILER_RESERVED failure should be an info (LP: #1529717) * Update copyright year to 2016 * dmi: dmicheck: fix reserved bits mask for Processor Information * uefirtvariable: fix decalred VLA have zero size (LP: #1526815)- Update to 16.03.00 * acpi: method: add _PTC test * sync with uefi 2.5 global variables + uefidump: add dumping global variabl AuditMode + uefidump: add dumping global variabl DeployedMode + uefidump: add dumping global variable OsRecoveryOrder + uefidump: add dumping global variable PlatformRecovery#### + uefidump: add dumping global variable SysPrepOrder + uefidump: add dumping global variable SysPrep#### + ACPICA: Update to version 20151218 (LP: #1527733) + esrtdump: add dumping for esrt table (LP: #1532103) * Fix spelling mistakes of "ACPI" * method: update method status * utilities: kernelscan: fix memory leaks and a segfault * acpi: cstates: fix clang build warning on zero CPUs. * acpi: s3, s3power, s4: replace cleanup free with explicit frees * data: klog.json: add in some more kernel error messages for 4.4 (LP: #1526746) * acpi: hpet: fwts_mmap failure is FWTS_MAP_FAILED and not NULL * acpi: pcc: fwts_mmap failure is FWTS_MAP_FAILED and not NULL * bios: ebdadump: fwts_mmap failure is FWTS_MAP_FAILED and not MAP_FAILED * acpi: syntaxcheck: ASL_MSG_COMPILER_RESERVED failure should be an info (LP:#1529717) * Update copyright year to 2016 * dmi: dmicheck: fix reserved bits mask for Processor Information * uefirtvariable: fix decalred VLA have zero size (LP: #1526815)- Update to 16.02.00 * Start defining FWTS architectures as variables * Define some utility functions for using the fwts_architecture enum * Add mechanism to tell FWTS what architecture is being tested * ACPI: MADT: add in compliance tests for the MADT and subtables * ACPI: Add in MADT subtable description for GIC ITS subtable * ACPI: MADT: add in compliance checks for the GIC ITS subtable * Documentation: add --acpicompliance to man page * Documentation: add --arch to the man page * RSDP: minor cleanups to rsdp.c for checkpatch issues * utilities: add a helper function for printing out architecture names * ACPI tables: when bodging up an RSDP, do the right thing for the arch * ACPI RSDP: flesh out the tests to check for full spec compliance. * Update regression test rsdp-0001/test-0001.sh * Update the regression test arg-help-0001/test-0001.sh * Update regression test for arg-help-0001/test-0002.sh * Update regression test for arg-show-tests-0001/test-0001.sh * Update regression test arg-show-tests-full-0001/test-0001.sh * Update the regression test arg-table-path-0001/test-0001.sh * Update the regression test madt-0001/test-0001.sh * Update the regression test madt-0001/test-0002.sh * FADT: enable compiling on non-x86 architectures * FADT: non-x86 machines need an FADT but x86 can survive without one * FADT: disable SCI_EN and RESET_REG tests when in reduced hardware mode * FADT: add in code to log basic info about the various FADT flag fields * Add in bit masks for FACS flags. * FADT: move log info out of test2, will provide it elsewhere * ACPI: Add hypervisor ID field to FADT. * FADT: minor cleanup and initial compliance tests * FADT: expand the compliance test for FIRMWARE_CTRL fields * FADT: expand compliance checks for DSDT and X_DSDT fields * FADT: add compliance tests for reserved fields, PM profile, reduced hardware * FADT: restructure test sequence around reduced hardware mode * FADT: expand compliance tests for the SMI_CMD field * FADT: add compliance tests for the ACPI_ENABLE and ACPI_DISABLE fields * FADT: add compliance tests for S4BIOS_REQ and PSTATE_CNT fields * FADT: extend and add PM address block compliance tests * FADT: enhance compliance tests for GPE blocks * FADT: add compliance test for the CST_CNT field * FADT: add in compliance tests for C2/C3 latency fields * FADT: add in SLEEP_CONTROL_REG and SLEEP_STATUS_REG compliance tests * FADT: remove no longer useful variables from test1 * FADT: add safety checks for older versions of FADT * FADT: update regression tests to incorporate new/changed tests * acpi: method: add _PMC test * acpi: method: add _PRT test * fwts-test: update for _PMC and _PRT tests * acpi: method: add _RDI test * acpi: method: add _LPI test * fwts-test: update for _RDI and _LPI tests * acpi: method: remove non-method names from the top comments * acpi: erst: fix incorrect error message for reserved field * fwts-test: update erst test for the fix of reserved field * lib: fwts_klog: fix incorrect indentation, detected by gcc-6 * lib: fwts_hwinfo: clean up type punning, fixes warning with gcc-6 * fwts: wakealarm: reset wakealarm timer at end of test (LP: #1534003) * Update arg-show-tests-full now that we have an extra test in wakealarm * dmi: dmicheck: add some simple sanity checks to table size * lib: fwts_args: use safer strncat than strcat * lib: fwts_acpi_tables: don't do expensive low allocs multiple times * acpi: fadt: check 32/64 bit PM register addresses for inconsistency (LP: #1536606) * acpi: madt: fix incorrect format specifier for size_t * cpu: microcode: fix a couple of warnings found by cppcheck: * acpi: madt: clean up some minor style issues detected by cppcheck * data: klog.json: update to sync with 4.6 kernel changes * ACPICA: Update to version 20160212 (LP: #1545099) * lib: fwts_acpi_tables: fix warnings found by clang scan-build * lib: fwts_cpu: check for MSR read failures * lib: fwts_klog: handle the case where klog_old is empty list * acpica: fix disassembly on i386 platforms (LP: #1547469) * lib: fwts_arch: i686 arch name is also an X86 arch (LP: #1547554) * fwts-test: only run rsdp regression test on specific arches (LP: #1547602) * Fix null_gass initializer for older versions of gcc (LP: #1549429) * fwts-test: sync up with the arg-table-path- Update to 16.01.00 * ACPICA: Update to version 20160108 * acpi: method: add _PTC test * sync with uefi 2.5 global variables + uefidump: add dumping global variabl AuditMode + uefidump: add dumping global variabl DeployedMode + uefidump: add dumping global variable OsRecoveryOrder + uefidump: add dumping global variable PlatformRecovery#### + uefidump: add dumping global variable SysPrepOrder + uefidump: add dumping global variable SysPrep#### * ACPICA: Update to version 20151218 * esrtdump: add dumping for esrt table * fixed bugs: + Fix spelling mistakes of "ACPI" + method: update method status + utilities: kernelscan: fix memory leaks and a segfault + acpi: cstates: fix clang build warning on zero CPUs. + acpi: s3, s3power, s4: replace cleanup free with explicit frees + data: klog.json: add in some more kernel error messages for 4.4 + acpi: hpet: fwts_mmap failure is FWTS_MAP_FAILED and not NULL + acpi: pcc: fwts_mmap failure is FWTS_MAP_FAILED and not NULL + bios: ebdadump: fwts_mmap failure is FWTS_MAP_FAILED and not MAP_FAILED + acpi: syntaxcheck: ASL_MSG_COMPILER_RESERVED failure should be an info + Update copyright year to 2016 + dmi: dmicheck: fix reserved bits mask for Processor Information + uefirtvariable: fix decalred VLA have zero size- Update to 05.12.00 * Update ACPICA to version 20151124 * live-image/fwts-frontend-text: add a selection for recommended * data: klog.json: add in some more kernel error messages for 4.3 * ACPI: Add ASPT test * lib: framework: allow mixed tests and test category options * fwts: framework: Add --log-level option * lib: fwts_uefi: add SD device path define * Boot path sync with UEFI spec. 2.5 + uefibootpath: add test for the SD device path + uefidump: add dumping for the SD device path + lib: fwts_uefi: add efi bluetooth device path define + uefibootpath: add test for the bluetooth device path + uefidump: add dumping for the bluetooth device path + lib: fwts_uefi: add wireless device path define + uefibootpath: add test for the wireless device path + uefidump: add dumping for the wireless device path + lib: fwts_uefi: add ramdisk device path define + uefibootpath: add test for the ramdisk device path + uefidump: add dumping for the ramdisk device path * Fixed bugs + acpi: fpdt: add a terminate for buggy BIOS that reports zero length + lib: klog: remove use of pcre, use regex instead + utilities: kernelscan: remove use of pcre, use regex instead + uefidump: add more bounds checking and remove need for heap + utilities: fix memory leak, line not being free'd + acpi: bert: remove redundant variable 'length' + lib: iasl: rework IASL interface to ACPICA + acpi: acpidump: use IASL rather than fwts custom table dump code + s3 + klog: make log scanning more robust for S3 (LP: #1522292) + lib: acpica: make region handler more robust (LP: #1524217) + debian: copyright, fix lintian warnings + Debian: update Standards-Version to 3.9.6 + acpi: acpidump: check for fwts_iasl_init failure + lib: fwts_acpi_tables: fix segfault when tables fail to load (LP: #1452201) + acpi: dbg2: remove dead store to ptr1 + hotkey: fix key reading loop, it needs to loop more than once + lib: fwts_framework: remove dead store to len in for loop + lib: fwts_acpi_table: remove redundant store to rsdt + acpi: gpedump: remove redundant store to gpe_xrupt_info + lib: fwts_acpi_tables: remove dead store to facs + acpica: fwts_acpica: remove redundant store to length + lib: fwts_acpi_tables: remove redundant store to xsdt + lib: fwts_acpi_tables: check table to avoid dereferencing NULL ptr + lib: fwts_acpi_table: Fix FADT update in creation of fake FACS table. + uefibootpath: fix the wrong type for relative offset range path- Update to 05.11.00 * Update ACPICA to version 20150930 * New Features + Add in the notion of ACPI compliance tests. + MADT subtables: Local SAPIC structure has 3 reserved bytes, not 1 + ACPI: MADT: update GICC flag checks for ACPI 6.0 + ACPI: MADT: further update to GICC flag checks for 6.0 + acpi: method: skip scope names in method_evaluate_method + acpi: method: add _GPE test + acpi: method: add _TSN test + acpi: method: add _TFP test + acpi: method: add _EC test + acpi: method: add _CWS test + acpi: method: add _BTH test + auto-packager: mkpackage.sh: add xenial + acpi: tpm2: add check for zero control area address (LP: [#1506442]) + securebootcert: change fail to warning when MS UEFI CA not found in DB + lib: fwts_uefi: add BMC device path define + uefidump: add dumping the BMC device path + uefibootpath: add test for the BMC device path + lib: fwts_uefi: add the URI device path define + uefibootpath: add test for the URI device path + uefidump: add dumping for the URI device path + lib: fwts_uefi: add the UFS device path define + uefidump: add dumping for the UFS device path + uefibootpath: add test for the UFS device path * Fixed Bugs + dmi: dmicheck: fix SMBIOS issues on aarch64 systems + acpidump: add missing reserved fields to MADT structures + cpufreq: the calibration is taking a long time, make it faster + acpi: tcpa: replace tab with spaces to fix formatting alignment- Update to 05.09.00 * Update ACPICA to version 20150717 * SMBios 3.0.0 tests supported * new features: + acpi: method: add _CR3 test + acpi: method: add _MTL test + acpi: method: add _RST test + acpi: method: add _PRR test + data: klog.json: sync with latest 4.2 kernel messages (LP: #1493039) + lib: smbios: add smbios version 3.0.0 entry find helper + dmicheck: add test for smbios 3.0.0 entry point + dmicheck: add error test for SMBIOS 3.0.0 table + dmicheck: sync the dmi value test with smbios 3.0.0 spec * fixed bugs: + acpi: fadt: merge tests for reset register + cpu: cpufreq: reduce scope of variables + acpi: gpedump: clarify precedence for & and ? + lib: fwts_cpu: reduce scope on variables + ACPICA: Update to version 20150717 (LP: #1486253) + lib: fwts_log: re-work to clean up va_arg scoping + uefi: uefirtvariable: clean up cppcheck style warning + acpi: rsdp: make OEM ID test less strict + fix some spelling mistakes in code and sync fwts-tests accordingly + cpu: maxfreq: check for unlikely event that no CPUs in cpu list + acpi: crsdump: fix incorrect use of string size in string copies + lib: fwts_acpi_tables: add checking for empty table parsing + lib: fwts_acpi_table: remove dead initialisation of ptr + dmi: dmicheck: fix build error on 32 bit builds + Makefile.am: use pkg-config for json-c + lib: fwts_smbios: fix the smbios version from uefi always zero (LP: #1484023) + lib: fwts_scan_efi_systable: fix getting wrong smbios entry (LP: #1484046) + acpi: dbg2: won't find obj when no namespace device path (lp: #1486893) + lib: fwts_smbios: add the struct definition for smbios 3.0.0 + dmicheck: re-orgainise the smbios entry point check + dmicheck: fix the Base Board type range typos + auto-packager: mkpackage.sh: remove utopic- Set exclusive arch to intel architectures (BIOS)- Update to 15.08.00 * new features: + acpi: tpm2: Add ACPI TPM2 test + acpi: method: add support for _CPC revision 2 + acpi: add support for FPDT table (LP: #1476954) + acpi: add ACPI IORT test (LP: #1450440) + ACPICA: Update to version 20150717 (LP: #1475733) + acpi: Add support for MCHI Table (LP: #1478951) + acpi: Add support for STAO Table (LP: #1478957) + acpi: Add support for ASF! Table (LP: #1479736) + acpi: Add support for WDAT Table (LP: #1480257) * fixed bugs + acpi: add table names in test description + acpi: remove redundant tailing spaces - no functional changes + acpi: tcpa: fix incorrect comments - no functional changes + acpi: method: fix incorrect shift of 64-bit integer in CRS + acpi: acpidump: change FADT flag BIT20 to Hardware-reduce ACPI + acpi: update MADT GIC Distributor Structure and related tests + acpi: update MADT GICC Structure and related tests + acpi: fadt: update fadt_dsdt test with x_dsdt field + acpi: fadt: check RESET_REG_SUP before checking the reset register + acpi: method: refine _AEI control method + acpi: method: refine _EVT test + fwts: Better options handling for --dump + lib: Allow reading ACPI dump file by non-root user + acpi: XENV: fix a few spelling mistakes and fix up copyright + acpi: LPIT: remove duplicate "LPIT" from test description + acpi: HPET: fix typo in HPET description field + acpi: iort: fix build warning on older versions of GCC + lib: fwts_framework: remove dubious total of - -show-tests-full + acpidump: update mchi to latest revision of MCHI specification + lib: fix build error on non-Intel platforms + acpi: correct ASF! table definitions + lib: acpi.h: clean up comments and code - add more references + cpu/cpufreq: Iterate over the correct number of CPUs in test_sw_any- Update to 15.07.00 * --uefi and --acpi options renamed to --uefitests and - -acpitests * ACPI table tests in the acpitables test have been moved into specific ACPI tests. * acpi: acpidump: update TCPA table and acpidump accordingly * acpi: add ACPI TCPA test * acpi: add XENV table test * lib: fwts_framework: Append "tests" to --uefi and --acpi * live-image/fwts-frontend-text: update to --uefitests and - -acpitests * lib: acpi, acpidump: rename slit tables types * lib: acpi: add in new GICC table fwts_acpi_table_gicc_affinity * acpi: add SRAT table sanity checking (LP: #1464658) * acpi: add BERT table sanity checking (LP: #1464712) * lib: acpi: Add in GAS address types * acpi: add ECDT table sanity checking (LP: #1464716) * lib: acpi: Add support for the SPMI table * acpi: add ACPI SPMI table sanity checking (LP: #1465256) * acpi: add ACPI SLIT table sanity checking (LP: #1465276) * lib: acpi: Add support for the HEST family of ACPI tables * acpi: add ACPI HEST table sanity checking (LP: #1465379) * acpi: Add BOOT table test (LP: #1465435) * acpi: Add DBGP table test (LP: #1465441) * acpi: Add DBG2 table test (LP: #1465710) * acpi: re-orgainise HPET tests * acpi: move MADT test from acpitables into new MADT test * acpi: move GTDT test from acpitables into new GTDT test * acpi: move XSDT test from acpitables into new XSDT test * acpi: move RSDP test from acpitables into new RSDP test * acpi: move RSDT test from acpitables into new RSDT test * acpi: acpitables: remove no-op MCFG test * acpi: move SBST test from acpitables into new SBST test * acpi: move FADT test from acpitables into existing FADT test * acpi: acpitables: remove redundant acpi table checking * acpi: allow various ACPI table tests to run without root access * lib: fwts_acpi_tables: fully pad out fixed up ACPI OEM IDs * acpi: spcr: add missing white space in error messages * acpi: add ACPI ERST test (LP: #1467835) * acpi: correct ACPI BGRT table type * acpi: add ACPI BGRT test (LP: #1467863) * acpi: add ACPI CPEP test (LP: #1467870) * acpi: add ACPI FACS test (LP: #1467966) * acpi: acpidump: add in missing exponent field to SLIC * acpi: add CSRT ACPI Table test (LP: #1470116) * acpi: add LPIT ACPI test (LP: #1470184) * acpi: add WAET ACPI table test (LP: #1470495) * acpi: add SLIC table test (LP: #1470518) * acpi: add MSDM table test (LP: #1470538) * acpi: add UEFI ACPI data table test (LP: #1471698) * bios: os2gap: remove ancient legacy test (LP: #1470573) - add fwts-no-compiletime.patch (based on patch from acpica)- Update to 15.06.00 * lib: acpi: add an acpi category * live-image/fwts-frontend-text: add selections of acpi and uefi tests * acpi: add tests to acpi category * acpi: fwts-tests: Remove redundant tailing space and update fwts-tests * auto-packager: mkpackage.sh: remove lucid * auto-packager: mkpackage.sh: add wily * acpi: Add SPCR ACPI table check (LP: #1433604) * dmi: dmicheck: add 4 new DMI chassis types * uefi: uefirtvariable: Add invalid NULL parameter sanity checks * lib: fwts_acpi_tables: print correct pathname on error * lib: fwts_acpi_tables: set count correctly on error * lib: fwts_acpi_tables: only attempt to open a dumpfile if name is defined * pci: aspm: check that a table exists, fixes segv on arm64 * lib: fwts_smbios: only scan memory for DMI table if x86 * acpi: spcr: remove unnecessary include files and fix ARM build issue * pci: maxreadreq: skip test if /sys/bus/pci/devices is not available * acpi: spcr: issue a passed message if SPCR test passes * lib: fwts_alloc: provide fallback low memory allocator strategy (LP: #1452168) * bios: mtrr: fix memory leak on mtrr entries * hotkey: only process reads of hotkey events that are at least the correct length * uefi: uefirtvariable: fix incorrect buffer size being passed * lib: fwts_acpi_tables: enforce stricter table loading checks * lib: acpica: explicitly set buffer to NULL to remove cppcheck warning * acpica: fwts_iasl_interface: clean up static analyzer warning on freopen * lib: fwts_pipe: clean up static analyzer warning on freopen * uefi: efi_runtime: eliminate confusing error message of get_variable * acpi: method: _PRS is not mandatory method * acpi: acpitables: FADT: Ignore fields at offset 46 through 108 for HW_REDUCED_ACPI * efi_runtime: get_nextvariablename: Fix bug of name string copy * fwts: Add fwts_firmware_has_features * fwts: Only run firmware detection once * fwts: Allow tests to be conditional on available features * fwts: Print names of missing features, rather than a cryptic bitmask * fwts: Add FWTS_FW_FEATURE_DEVICETREE * fwts: Add OPAL firmware type * cpu/cpufreq: Don't reparse cpu information * cpu/cpufreq: hz_almost_equal is unused if !FWTS_ARCH_INTEL * cpu/cpufreq: Add a separate cpufreq consistency test * cpu/cpufreq: Add test for duplicate entries in cpufreq tables * cpu/cpufreq: Do bios limit and claimed max checks as separate tests * cpu/cpufreq: Refactor CPU performance tests * cpu/cpufreq: Always check that cpufreq changes have taken * fwts: Use linux perf counters for cpu benchmarking * fwts: Use gettimeofday for cpu benchmark * fwts: scale cpu benchmark results to one second * cpu/cpufreq: Only run performance tests on master threads- Drop unnecessary ldconfig call: there are no libraries shipped in the standard search paths. - Pacify rpmlint warning about devel-file-in-non-devel-package- Update to 15.03.01 * uefi: uefirttime: Add tests to exercise invalid parameters * acpi: acpitables: add GTDT checking * lib: fwts_acpi_tables: load tables from /sys (LP: #1437043) * efi_runtime: ensure we don't allocate a zero byte buffer (LP: #1429890)] * acpi: acpitables: make length and skip signed to handle -ve underflow (LP: #1435272) * uefi: uefidump: don't dump non-printable variable contents (LP: #1435346) * uefi: uefirtmisc: Add null count argument check for GetNextHighMonotonicCount * uefirtauthvar: return error when get mismatch size * uefirtauthvar: dependency checking for existence of test data ( (LP: #1434408) * uefirtauthvar: remove duplicate authenticated attribute test (LP: #1432752)- Update to 15.03.00 - Remove patches fwts-linking.patch and fwts-opensuse.patch - Add json-c-includes.patchobs-arm-8 1644751774 22.01.00-bp152.4.27.122.01.00-bp152.4.27.1fwtskernelscanfwtslibfwts.so.1libfwts.so.1.0.0libfwtsacpica.so.1libfwtsacpica.so.1.0.0libfwtsiasl.so.1libfwtsiasl.so.1.0.0fwtsfwtsREADMEREADME_ACPICA.txtREADME_JSON.txtREADME_SOURCE.txtchangelogfwtsclog.jsonklog.jsonolog.jsonsyntaxcheck.jsonfwts-collect.1.gzfwts-frontend-text.1.gzfwts.1.gz/usr/bin//usr/lib64//usr/lib64/fwts//usr/share/bash-completion/completions//usr/share/doc/packages//usr/share/doc/packages/fwts//usr/share//usr/share/fwts//usr/share/man/man1/-fmessage-length=0 -grecord-gcc-switches -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector-strong -funwind-tables -fasynchronous-unwind-tables -fstack-clash-protection -gobs://build.opensuse.org/openSUSE:Maintenance:17380/openSUSE_Backports_SLE-15-SP2_Update/eea714419d036dddd4667069e6cc8ab8-fwts.openSUSE_Backports_SLE-15-SP2_Updatedrpmxz5aarch64-suse-linux ELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux-aarch64.so.1, BuildID[sha1]=0f6e08255f572ec115374cc6ecdbfced83131f79, for GNU/Linux 3.7.0, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux-aarch64.so.1, BuildID[sha1]=b90f49c420c3ed162a07270b9454ce1c2a80be10, for GNU/Linux 3.7.0, strippeddirectoryELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=31aa8eef3faca571253d1fb1794c265b6d62f752, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=7e0ade21dd657a0effcebbb0e4a6fd48bfe76305, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=cefc6b5c7fef24d29c93a66e32f54bcf379dcd74, strippedBourne-Again shell script, ASCII text executableASCII textASCII text, with very long linestroff or preprocessor input, ASCII text (gzip compressed data, max compression, from Unix)troff or preprocessor input, UTF-8 Unicode text (gzip compressed data, max compression, from Unix)$,RRRRRRRR R RRRRRRRRRRPRRRRRRRRR RR RR RRRPRRRR RRRPRRRRRR6d|"E;acpicadmidecodepciutilsutf-85c4dee56fd1f2f03eb5d0fddcd7cda8c6ce08cf7d956a7b0ecb6d2914a216af4?7zXZ !t/W]"k%w W}\ehe^. p[z ]yBٛ1_gƖ잊 E<_PUH`A=|F;և(>M#9>LGT Or$۫ƉФR]k֘uQnȍr.epDѫ>E-"q|m\p3': !A)_4aJ1/0ۖL@hiHґhWu {a|A0 ":坺;óG6^#pĀ8oj "YHU򥟙$Lrޛ2E zsN@hUKkݹV.}qT^a`BqBdI)2sR5TG{.Ijzϝv@vlͭ8vnFJXBO]O>*R7,~ZUgAs-S B#=G*!֮!! 00FVpsfNLN@)?;[E>EhaaK<ǚtF̀O1)p~{oֱҥ]'O]opGh%6cxTHWU˴(t8MӢGJ˘Ѫif?Jw-Y"͆"nQI \AALheD64Ίso>&#͑Iz%E od1wsGR2*c֚.M!H^2iJ$RҋpeXg\**0wn7v/LeI]l23jh2E P u@>;@L5b*> ~Syiȏw?m߉a$ qj3/q4 1߃ H^ہC.9ReYBX5,\["Ѣ {PDJ̧ w2?IgO:-騗Νo|k;s~c]h B|>̟a@KwTFg?x>[{d6L } +Q.u%=-ueIFcׁ]ش;oB=@]^ O`ְAU~,W#t;TYk=&!iY-ە HUuJimEb_c$"+{oPE+Q! /?^fWBVab6zKzY2g{#|_\IZ5h5B`nu_pAn,^Q ÇŷMJq4sSNFAݹ+%3$dςMؽ\=U$bMa̳\wia|gu+i tEѪbpMUOyijkxO@#m糓"b[/=Tˣ'nZ Y)wa拥4y/!)Rf[FgyyE kߑ.Z\ 8fm87P(8 1ŇLNwd ƪ.Ӑ>Bmeh8/Etm0b)"sKL84v5ψPJ4ʱЦgGqVܬ\X6# s`=V%ۏPef\o^SV͏"TwK~+xa1yJ#zq2O"'G|=5.]bYg~綑#.$W+D4 ljj̛+~l 옡Hbxt69]n t܊&[ƜՓ)#%f^^XʼK;XZɛSA!\u=:΍)vKcӔ`UmR Ƈ'.Ç.g̟Fc [v(3 Z(S#p^T#Ua3o_W =D]нӇsK 3Eu@.%'eUv@74DA=Oll.Ԅj!thI7MmζɯM=/#lG BŽn!14 5m~-މh˳H<}Xuޣ0Z#?݄"P 4o4 ɇP3Qoo1ፃKW]ᘽ2amsbTJV)Eǽ u_e砦ͽ65_^I5>յPXAnA\ /8/_u^ ˋбL^Brی!bJTrj{Wr,+6sDձjh X);U,h9[h.)ޑyإ?ne.$  }zd6'QCĬ,Tlz.ŜwY#5 h\ѯkhG5@'wJQBDiCЉ30YuH{J;,-;sgj{{LɆ;E.sj g#-YҢ{~baA'__\ 2R񀸙bIOx˱3gxAV"ve%12S8[R]ZL;s[ԙ=gI=edSW!H3#ě.s]Wbi;tT;hNy|2u e,]O8r]/x$5>/v|uD1vigF pl+s39\)98Q˙WPM$hMۇ$DE #\H ySb|*[طk &ä݃(xds~xtc/w`+=5ƕipbIQpe0GU4dXBf5 d+ڭ]g0M' {2{4(mR V}Z '2(>I|U' +E.3bWVhF|A8n6ޥp:wO{1^ 2r>GZӸ!7kIMW7g|7vߠ36J#$';C@v*VKaQQ H'~U;'cFMf]"#;W%.t*w-awX!C&厭!2JΔ2w$6)2jo [ˆAupRH=!F]l#.0%N !*D >/kff"Uב#ulƔJc'Q>7@]|̊l/䠬#54c6*}* Ҧꜰ4Dx2/f&+! aIz.J5p&wI*S^HkYC&CV:kfGİa%tĹЙwb Jʹư%_}~;O'wr?Xx9|u $= 2O÷k53P 5OݲN) G\hX)-3 L~YE X- 0Or$k's#߾j*ŵ}xR1bS/9,Ȥ2 L'q]pȈ i,V- <;B=]p9ʋo^׻^ڞ5rDŎS3+{SœY1kOUXj'j )Vjyݨ9QDL ]u%D4\_xaE0J^Е(=?!LC?cuFoFc]Lv );wyf6#*(>mc}utx,5`* @1/nn7~żvr͹7~*@5na!'h6F6N;C5ȳd1$njr{i}Mӈ;l̚ȇ.$I+=5H?I7''>+KCΏ+ {N^H~aw=u6'4@($&tKɈ_t|=ep*_'o.1d Ϻ4߯dMK;5~檬*t GK+xIŗyʥT`9>ݾ^"Ip>M?GTb)Zi5Mh9pnD;03XTG$ ȩ|##vW|-2ԈT4.YB*QrBB<ųtkb|eM}W"-|)_a9z /d}oB"gI/S#R;^' &m-]b0N U^@~B[,Z/T1 IdLclzz,ML!wA[RM'֡YPoβφw1R!mڬ.ߍ_Vua~0i*y"Pbut5IOl?!:qzzձsO hrfR"""4A+ji`9 *;<1Dy &͐Ra[=%Da}2>W`b濖Pr9iK-Wͻ %p%fMRef( r\$ KVHxxSר]e`Z{ ?s{ ~Av{ ϫDv,."&ZϨQ5h'U^t R<U2R1O|[Nʄn.;b̥*hN/kEd1ϝڙ35ܔaX:d#^zWKySe!KYz_V*3={dZ#/u QtrG񄨽;ՐKvx`ԬJvsn3Z~0v` Eݟ Ӡ$D(3Kǿ(w @7h3cUƗ! RdSnG}bqc^ct?:Gkls0ۅ+IFrCRI)0E%?en)A.ç/Y¡;C~I&=̝\_g; Ic3VjM !>[$h t86X!Ӷ{8W1^؊?D#f-:46Mgwb tgwX@[,َ2t\xN;ʞ2.P|lRh+׶">69 m(r1cj1j\<ČaK=&˯Id#)3!L*_*bS$pl^WhaTp3& #D b60*iP z+41)_1kB5k%v}M4v0 #E„ڞ0~z*k^Aho\b>v qD$wA:ƺ5jNԱ=k+lRچHonRme:2T( ۖi'l Kf_9 /RcJk2Vo 1 o^'ThTD*7M]Kj g5ުމ~|4teݫgEQ/ {i3ATt%@Culr[ii#ȶXFliiuN ,nA2H&GΨVqθ`QƝ]=lixoqew`ã&ˎ >c-_ʰ)hЅi^mSyFJ7 .Ιe+[6'{ƕQ^CU ہTh Ϝix1ՎU\zj|0&1l#\ B3o|A_l=g&XL $O`qjK}{*sׇ&*>gONHz܇sZc4E ~WX6p*Pp=okBu}zfmJSoTR*6Qsn `Pp  4a4HgN}GZnF)P0Ŕrqo؂p pxKK]ÿK.B6mSˮE UW+ hڧSL4|d9F+TXׅ٨/|*.C#_~QGxDxS_k V?s\AA/M]6}@&_/[8):aXyLu- *]龜9I4\f-] = K٦cuNU"!_z07fHS6ήBf\ %+I_il668I37$#O>xojJV}0;уy&Y"$(QP"F75m]?ŪUz (n'8#G!z\ij$+ %waIJ f4o]KSj5z{] L.- 3arčgdO⏰ ؀FKmJ1Z]!'L0H0c瑴G `(Eٓk[L%|H3*Bl H)4E1<(N{{[Pz@bVKhWfȖ#kL6KIHYx!?ȌKTTҨiknvp@ڛ,ڐV@DC4RBDsxIAEODP=9u'9 s0q(VHh9S}34We8apEC)+[2 ~$ g|3 Xy"bmbµPc`!EOwմ/D*p,q. +ޱ.'/Zkoc\4V^sx%3S>FoO#RuW|P{&E.ZA?M.Lofbd3mxR:dhh ?#mT#PE} u®#~?jQ8g q|F,uS5!> =kK l0X% #rB+*ןKŊt9V1E[ ݚ(KPn B=> 8v?ⓙآŶU+%z$A-N3~{;_.U&?V¯ORp&;vQ @#- a)6Vk%Ft )uflT)cb"c.i~"ߓ0!r1Ue܅؃dK6+Gǣ߿ݘo"xȅh]668Kb|Up-a@_O>6Aπj2ϷrH{}da ?x P7GA#'ƹ-Ɖ-O\wm+$qs_zDphp+f3f+'RR%6%oDSPo 0u/\qJ& -K@+ߐkwkuG8  -v¦~,O ~pS yI A7Zt-|#" &ľhqTo$.*weOY&8팖 4p3%>Ht &߭NF΁ 0|FL Wįsp*.yƶT*g[ /l֠ ̓97D}KCbm&LD"coO)v+#ؕc`7p X]##YLܴ֥ڞBT9)+₸vR0=jIcrM}-֤]1v /MޚHi_N&dŢNXt80z ,R[osg@1_F:=H3nzSL~N8)&W Ѣ^GbaI@ c9YW]]cM5c[ұk6!Ru.#pi>7Nm:v'EO;#&tC#ql6);e|ԍY^n l{fpAcc'$̦]wLC%nʩjl<*M&$UTlPKϒ4!1~I;ߝ: #n嫠t>y.gD:@yPZ$^ խhħ.N:{p;mQ7D.yUh ߾\= '{cW:.x68&6\Zc\dSpi3\ Gzu$~FBt}%ERAn5זroHW4;h$E|aE!0⾇nH`4#3` غ_k>\?M g҂LP.Nv?䅙rOm;,o׍6[4a}xPCkjҍ*0LMP=kƑ$8zJ9S͜f[|yQwq~/ПԃqH,"4N iXH?iQLjRf;B>.(>p&o& K)9Qpg͗"^ Oف/cT !hOPw,"OShy-b&H s %13;;T%?5AA*Ov#Mk=~B>ﷁF,)Lqų[A㥢p>)+an=|w0w,{hQwgPN>R'p4|8cba)3"+7(/4NE$Y; ^RݷGS ik6E/R ,' Su`JQJL `A::,P|e9`kd74FoIDn1HɎt. x"TpȺ}Dٛ#V:vj%.ԏSx6Kg ]È$VM$ DCU@E# +\5=8W)^ӗ(55M}q`\4sz1o΅v-.>?No,4;&KGv:F;Xn/1hNWoҶ^sB^[`vpRO/ 3epWt d؃H[5P$pE,e8;1a٘P~g$uh9^ ɰVM= ~f)VSn!7 ̫6¹KlALiڹ8S{m<:xT_9^d,]UR\XF^ bjFt7*n%z%a/~ Ǣ0o}=έZ l>bS]M N"i<_!5.GK8 7~C SpAVoSwU|,W"oR,B+/K| jvĦ6y i}ħ?̈́+s0~vc>186瀫Pu?9X ('LY}#Q9E K Y9$Se JZd|!͖,ò  psH]3IMZjom4#5(r86{(v4}M2f.*)2fǗopC=Lty`U"= cMSV(Ujo雖7Z @ ps4?9N 4pECXn=/=S*C@6B 0a?zjlɿ8"f{̤,/f(!QxW[W0p< mb2 ߩY5Tvo<Sa?+tFf"1%ܭ)[~˦]- ~d{9 :}OjC)չ-R+(WCpT|>)i@J]q a{YJ .q8eԥ/*BR:6~~tY 4NTNY3 @} k".L ŜkƒD</]OvBd`Vس3&rHeV&ФB,zZl1}zMCWqPfN=15k qƎJTHhERaHmMb`tLSCmYG~3iA/RYN@ʋ_^yEnEkzCmR-!K'0[ѻH󉞪FS[v{k`xEu%׼E#zuu ,kJ&KZ0'?ȓ嬈iYћhʔnvoڳH=K+h9N.{Z/m kb"B5?3 "Wk~omU}5,r;$0|W**WCIA"{nQݴL 0$.Nn V nC JP{wOMW?uhL\Dqdɽ =3@n,V~۸WIEg]^D· X11US3G!e Yo(p?pȧ VèȽ>IW=˼R]='[V`=Ɗu{_/P'rD ORQD;tb%Z͐adʲ0[HЩ,$Pq5%"K^L`혨}p1^X?c$D6,@.EjGn8]جVC2uzsok$YP}~bFgf0]Qc_H"]75,A|9U@Sۻ+nP ̯mp?g݀gz5=}/AlƊyF(^BpaLjs1Ѕ_uLe=R,UuS+,JUF*Ha詬`W>7cmTy=WGsks2..k26 `\?'D`qWҊ_}+%4 ϻe+](3Bˋb*b ?9X۹Y5Yۈ+{ٸǵ:Ͷwxg\k_??teT}KWj̑6+kKdYvS@̕{HW-v# Fgxz^ʁ n(q@0l+\J>UY;ZG}| ڭ#4GAAV"^6,G\_"oˠPwLy/knݙ%|nFZVuQRK}|gǜw MoAO@ Ԑ|pu:?5y L▝j-juk5?^8l?`L6.:{ysw׃wݏ0lD WͮD.S{Lʕ52w $xWy#r4? J0'c {)_qeJ)n/^>H 9f, H"E\Z&Zi^쮿Ñ?_{Q7|8۰ V)Dy(`ؿwFx&BUv\#(.OZ1cJH PPYcj!3*ۺfVM,D`e @OP%wz#Q 2Ie+uQ(!AH'WF+- axT1;".B<`#5}dV ޲v\ODcĢ{F%>E[6wX nڮ+'/v~/SA3u7p$aC Em^UY#3XV8wwԳA>[؈ YSoZvu/Uٝ -F³/)A鲔q#y* uMS)ARfM.j:ɧ,|k<0iߢ_cE߃HB/>Xe/fv;Xұ %RA@41u⸬lGٍgT[Ӊg>bM({-LQ/v![ZޗGĝz/߈\LP"i=z ??/"knfbzZ3 RDŽ|hBkÁly 6@א^x0[N*Z‹o"PSrN$MPڋi91"`z =>Z]!rz:|(}MI(YG3$aug4ms_%.SX;RT=׌<ŲNG9TcBu-@v&.PS%4(z1_~YcKZ.rwsgt=`ڂW[L+Oq.+Ꮼsltŵ7U@-2IL; oV!M1c6QX7txCEW=`'` Bԟ dTPϒSϼz+̭#B]POH0Ӷ?kzCʹgY oGE) #;5]-kZ>bo $z!o!L3Z|:W 15h#㔷 ^ Ԋ6^.oFt> [ݴXY2yӋx׷7gb\\ͦQ'qH0Nn4ef K.1A׌[F~:s#Zߘhrr!{1EِV9@tg-O%(j77XA܀S[$ З6S@\!=EWbUQ}#|>,jF@`cXQpLX =Rcߘ_J+:3"mج>ߤ$y-^`_V>yamtQi o8"]p1>oGőnc D2x|H>jE>ۮ79e ?vnFEF]V ^EAzrTxec&WL~UE;Z֯7_&1Ԣ8]ߊG،jDɤB=4V|Rgжh5қuRFڑc>ىs kQ dkwu!Vh lPZ`T޼ePkoՠ4uQVUEd2掌duO_BO|T6t}FɸRՕOB#a(|rU|/\MK&MeN*.@glɠ |*^HyĴFn(L4,j<"z(U1"sƄ;NS>-k~̊>k;<~+%H6'ڻ%իkC}+VcM\N$x Y8H5Vo|fyT,(ȋ-HO4…nY|m~ .ZTݚ;eK8yj ]L<c=Vp%&k/![ $*u߫ }FX25cm*SW 4p;n*^%Ds9rK I'<@Gfo[ʓMR\#΢{8`F-Jb3H}SVPvMrc]3 +Jэ%X$lѶr&|zqߏ}zoyy0AIlB̐,:yEAztOޖL i^uHPTنuSxNAdLzikHX1Ii< A23=s- [W0ίyW e~ˮcu~0V8J򙪄{g S=Z00b ]Qg5l~\" j{gX6RsDB@Ěpդ"XwkQE(Ӊ1pŷ-{9g omV"u]|PBfGUX".5␕ȯ1gQnMW߫3sri"#e M^74IXnC 9j$* ų\ õA{uE_\!F2u^&? kGK0;@#u'*H̀ՑYƟuH)ysw7ٯ6o{2ڴ`Ov_%'5&)oI^<ˤaWxj~k"Rk>H9D4%*Σe r"yjA1pPdžptщC5 ^$?ǔ:\{-vK`9e ɍen :weNB\]n W@6)=/rbw#Nk0((lR舚B95w4Zσ0җܲDY(߇=jpCo A%ENd>ˎ5vނ:[rrǑ <ϔe6ա_q^[wS>'v~7' &׵z7qY5CdJySyg .;~E36ƫ2t}Od}`&' g9ni^ mߤM2.@%x 1RF;}|~ 6ar* YP+IHKdֲ'ͻ$ncwe~AJ#vK N rmѼXmMsS椒#:o'/é@PA8a"S0`aL>~2@J$a:o\fF\}'Q"c-P y׃1o6x脤!N@ 9TJ@$MRYa5ezq,{q\_ILS<^y];9r;6lGBs@p[0cjYWY<=7t RuGصG$GF3nx4e}%݂Jcȡ'q×^ Ds^ָDB #&2Y%&-{×u5NShY2FArt?LD¬;fij=GgΔ&v7'(M%f;ErD`DG2j$C@=cUKiu i`jg5-͂ 4>4Q^y 8a=<{˧wf2[;QM t:%po >^e^Tx|Gn-Ml)8 U|EZհ4=0DGMl1\>]5s&` vʪ(3 N)Y^Og!r 2sƴPdV˙ -\4S}=,z7M\#r\Ps4&'uwҞ%|Ivļ[T p@Ph JMLRkF{C8fd1Sl)}@S6thGYo~z?ߞ$_çTȨN6EY ʖ{ /w{Q7*(3/Hoy}3|XU$hja@^pcf J]MI(>2RڳKa`Z*ş|BtAɣh+rk{,͎rFnY|TũR:)V 0UrZQOҶy}< EZI6;Mi.]wk" AP0u}Ż-,!X_4%_4B)=)-uLdn_d )pUf'qD+dʇ~5Jz?.nj3:Cu;X$/u]-b]&Q4j+ۊTZp{3_8~ eMgDz J>A}@S₀^~fDJ \_L朚"ݓCyvM\>0xuStkU/,؆5$#JK2GP$_u ;!eIS'A4^G;/?E%_ސ鎃ZlA`z0<+%xbw>xDZAahs?Db[>%/bU1YA;xQ-ާ-݆Fk/+BɃOch8A=tdx&@55zߛ[#+ ^3 87529T :y$$".x6̋za|C( 0=KA6rIS v%̀v Yq<:L5A$١y qt>-&:!|.a#,O=_T ˝w?Ulޗ}]Q >vqp'ZmVQxpi/Î׿K_I@ivſnLw\WDȘ(\bJwmPĉt*OV7Kn\# 3I|F+vt|JTxdi, y% Ma+g~{K׊,P",֩VPy@lqs'Rl 1%1*Dx"!Sh0H:vzqTP?{&aLZ^يFxwvbYԾMQ˵uXhԜDwJ8CfZzX\;lHˍ*D뜱G3:bX_# _kBmNor:Xsl3TLkųH3쯎u5>څkgOO5Z͔\N;iA|, ^ԡ(+M(xZֹ`Iek_B?A#.J1<-J*+uDŽK](eD˖KӬtC)RD ++4@+Υq>6t0A47 e.]0r]SA O%υ SЋk_U‚utS3.+WzN6شa )ωwǍI tǘKYxPP)v oڗ>٢|d`H|I,rZl[Vj&/m k:9VhKboR)]= v,䖮\֌"_R8݋,! /$iIv5;UsujqOQMU!j| b]tUyBf eFh29x3b$8W&<ʞgO̊x?>feiJKYWs},it(.?a=4u|)qomˡOҠRUD`c -cgj+ix _pߔ%Y)kY"+ v՞>6[9 'ޡE$%ZkhUnvPcBm#s=p h0./f ]Fh\gM\#+6h9bpQo#%eo‚}z&7AbEVNx*@dn.,;S[VJ^'۴Sg}#voxOeܻg7tu :(͔5)s/ڵIuT'p=-`O7V?LAQ^m0\;Y#]xj ݣL"QP @DdVGT\8$ b| 3Zy0W jRӪGIȝ נ]Q1.+JDE6 pRQTƳKJE>wShd0ُȸ't9N/7qw`$j*" ;+ړ v`jn$FQ l<{(&8j<1gHGS̫ FA38Qrs1KH4n+*3o@K&}C{&uX֯Y6`Z0!djLA,Nڻ8!t ƨnRY^V4Kg'|!w!zo&RHpdrCZ[-z@O7 8Ҍ@QM<*K$]$4wnQ,7ZzAErA"<-$ㄝY+/&u$蛐,j`!.x^CT=M5|݅ٯN85yqCl8r^#ZP'Np,A̠B uh_ZwXX,or $³:pHt6#TdŒ#pTEfg"@''&{/SCB)e]=1H;&mKmn};Hefp?)OL(0qkè+/1 Ձܼ⻏noϰ^/j]_ P%TNMWi4 ]MBtZ?wLc}FhwZ'qU2AL($s^u\*KǑ@zs9 sآVg-l%ڀ0a%.іNBFiKi:D4&[p]|T쮹SjFQ"ͅ 4v8@ƀ˼18@GJ(XpY)-ޜ$KK>+;ǾK#uV$IByUa C7A3\z Rj/D+/da˜+ɍn1I2[PdKZF||L 0_]0oZQ} FOWr"e; c0zЦI|,%4GHol)R*3P(pʩ.'U/r_2Id97iF/YoH l^h!v֢X ڣbfl\(BOW`H6δEDȡFrrOa fŖfId-d5᪓NP~oK(s9 dQƷIvZ.Y[Kì-]y'IL*8k ~niws|Lj5oOj0x[Ү%m6@)a6{˞K>`eV&Kerճ[иc0;o7IqRzx*5KބƁ%NAGp@øk ϻv،׵mB y^0+OQ%ȝ0$sU2}ɡ-r0Ex.`[,(kXF" 4 *^覽k{lbp{KZ֛ztƾ/1pl<+#*v`B2q.)R;V% E:6J~IIn,)kqƆնt<E0'(%@ )G$A2rmѩ 4C^oXSNgQq v~ILζ˫Leu Xz(v܊ `HX򎷞9ϰ ,$Al0b@a\o* }+@|Ni͍Pm3π!7Jlt*7g)n[CeV"[MBNpC$G[ Nu:b=9u-W"<`JG!TJj1Lcq$Hգ2yKgs -TF%r)&.|㣞:"Q2mif){jETvpT")j%O?؈dk%M%QEℚ.4^e-+R%a=!+°W.#(cBB;LY'Z+"0_2Ũ uJuȀ;#a6q<%J<*rwWM㊛eoA;ƨElQlP:%#Ҳâm'2\,߉XzPSϕ߈%W+!iYw90"`trhV(ڱekGLx.)a_[hD7eG[egxX6'\ @ȍdoIR>F~3=v[i󺼥1Q"/ _ ^p#]F=o8k{%̓d~$A_wc%BA&fm3' G, ~Hp}>U_/ OF wcj0W|8M;|drzv9,7?kk حHwb4EA2h?' tLd?[> b]\z/ta-W(x KKNâ, n( 1T3'42Kɋ_=5otx!sj9ѫTyKB R wQQ5Qn\hr[`-2Fbk*s=3;#)j xk'-]S UC#O]tG< pZ D)@͔{SV58&[ Aͪc)p3lj5aw^82"^[{v0K[Zh`az2:'mFdr &Wz(d*\[0=su2OsD|KiqKA%E'5!T'Z%o?o95hxho/4^OFA8 o3a>nH~Qz^2gё]YjRܘ\;>iS0#7.ܞ'De$FbN#Ryb0ΚrKJP2v[KꏑF HįP~$P*/_hHUU@$fu/'TsH{̿M2Ԑ$=\dsn'@3k[e@ʖ6?K'-mVUoE}t>m2=]nz DFxXE?-P* %_*z[7C+['0**ջ*gA~#W34<SO1[hB 3;8pZA8fg1E2XMxPԼ04EтOR'~A͝@9A! ("bۧu)OqTյ,4+8:(mWߤv)*:Kg!TBY벵̘̠ͥ`G/`$"kJjŔ(^` Mov܍!B1. 9^h($/Ju\Qݱce V{,A2MWP-pkT+`gz_#deuM(7XCrS T'w|#fzdNY| FmAIzԷW%yN]à8l_䑛~Q۔ƚdm˰t}]QQZ27@Z$!,p"X/& @|Okc]c@_|N?UZ T},IB*,z'/=]/yPRByHU!X9bBmvB]9Dm bz?4h;,! ~hGN!'Ral ϶)(ȏ'O+#^̗<#bGK=VCE_yB^ǵ` ~l-ASa앷YN~!1̼xTBpVrii8<- U;k̑И=?$;Utx8VoC0=_YО}F(㣈,=Gj?R+0mCm\- $E0vF&te捆-C|naesaaS)msmɃENLѻ#c5'4Щpg%>ua pT =yI U} 8}ٰ6R.Ie7IPƨPMRgf!- 90u7"?]3w(%&=53m=SQQ=4rX.JT(1!+ q!?Z?Ka@ZKe/ʌp u*@\`d{ QB9vۺ41P;hR.~CYxՆVO@=R%}, 7-%Bp0h{a/ f?5QӖQ$ҽMu8 ^x,|#!s KEb3Yp N.gӉt# (ƀX,mt/ { 픫fl1rɁ@:خO2ҩ 'c0p5[UCU$N/_"QK2WBysԠֶ;M' {"F91I(J[PӨϷoLx x!Xᑶ4A[&(0L+&kN?Er6 gRTYք=Krbv#'ߧܸ]dĪU:'teVsfSҷGD0-I?M6e*vz=S%*e#؝ ք7^`JiCp.NΚ hr4h*uJH:u۴D]R{ŀIu;Β$ zrt/3n: w!#媗jό{,yO3)^k0YT^iX$H4٧ |HeKr@˰8 _~یLES3d_بS_^Y<"F ;_tLQinAr&"*ϰCL_:;Tdz Uϔ44b vJ4$I";|̃Uߏn}oMdئ-Nvޛ|d2J:ƏM 65 Qr/G nЉ"d$x'Q+!sbSVvi#4>+]uN00>e5P1q bPaielL)SvFs ]ǚbEH3[n_ܠ&n 3O6VGC?Ȁ2(&O.FpMk'>@Κ6 kn03P*R YɾGg3]l8(KiyVlQ׭aσ=}' \Eʁ~XVWr1;90m$CdK =R W^x~5׽2 g!up꼹ym2 Z9lx{ ۺbv׻A "k5fi՚O'#m9x|JAaxhʥ5 rͫy7X)zh@z eX8SٕF64#,:]513;- Skw3c1z@HP"[RK+rhrH[e`ϊ/w' }4sJgVV6yv_Ps5msU n >r>H gz"4T9z ]][v ?Hm8sy Bt+x_L=QreTJ^F ޽KfO vDrF] ZWNľ;t%.1AIX]n@HXV 2O lWs/e4Ղu1X%3 )V4ݾk?w~N#>R,Sl06lγ3'L2 KͮHj+}^-5y(5'`\[}<-,0 bxzAdTã،H^zR|s-*1[fv:gy$6FOklD'](zـ;Q[X.flri2;WɿL,f%lOfDbjY=x@ d"k^u_ZT3́CoᒡpIG Ɖ5XEеa|!n(>NxV 2; &! N0?fO-20O(zj+BbX[j2\};$Zۜ:F7{b[ZŁM^1fmwzRgggAwn*$wbu'8!V^l^3 lMPygxrs7xn[q<{C2 3@vVrpKYzmf>٧d0$9EXb@+DŽw{>$(4[5ηK ҹ>x0]L9Ҭl]Pw_{e3k љ|3+ uY&ol: c:*?! +ZIr 7T ŮN;FaR»%K)b^U;Pjdx֚*Y^-Ac41c 1/qVVo P)}(A4Y.o@IK`SeW+QOI`^Bߝ Y9U b\܎E7oNX g=.P4*F- Y.el$7QVʶ+UÐ7q-Z:/] JJT+xEzer ^"Vf̰ -3daQeUk%ܔ)leL{r]2`ciJVteGK=-*;؄XVԱd:X3oS I43XeINX J2abV^Ų̏^\ԿP^ +bcYK^٢xD0ס n^MuAv mSwQebZ=w(t-ܠ&_y ``?=2D# ODe"oR.ob]O#:jC2#Y0qr?W3HXo1;2YVt)#F!m"#2xf,mN. i(]0?(%z^:)W::/, o["ߧ'|@f(bN99vB;JG֫Me*1MJ/!ۍ@aĖT\ݤ? $mzFF&ʯH:n]zJZαԝlGvw"CrXZ賧3 <͊}$ph3]![(E7`"Y)Y=|+IZџ|Z;!esmc֔IFZYMxQdQxInԿx)#s^u%ׂeNS7e0%O+DK= k="=i* j&C܇ 'l aڐ8xf]eą-&^ANpZ8 M`mbz:dz^ַ(-¬3!-7n@ ;VRt6"/|n`G7f>NӡLݵv<~]HR;nz;lt"jw8hr|e O*+++;HT^v,e-dͱL\9,W%ch; ,*hsSzT~ӑҮ0W(${J(؂JrnDЙM`7ey BHQ4A(VDNxq#]|U!3t(Y\*XI]Y)L,fg]>5!C2OcTJu!/DV2 }t(,& TطeyKyK FR Tn0X ٯu*wAFO:~*h[gY_.xP#ٗ+=./&j aHgbn" LV2}v. [`Qv6%VoZnq/7O[S;7dPp;oFAJV!Ā(SĮUnkhENf++mHy.\YTUԏ=^y@a17|JԶ'>OGl][Oiv%4N`[vNpϋFxڽWQs ֍$՚ss uӤLϦۧ0YtÒ|6 |I@T%쪶_21Aָ(8]N D9~3i4}i&am֮<&yZ<,ep.o/h=1 `u2 }?= ^IϹyZ Xpقɒ* 6V`>T̹AX~%]4M`/d=H|8t+ݿuq'VP9¦0MS kMOy *P,cТr =+ ҽ jη!/H\ܬ2_a%\3wgW 6Q8\P˅ hʹ絳Mp.E"~0:*=(y:nPtT :qr~mt:#TVEDhoc DR6girB+x5?n/zZ4Bn.$b˛(W\Y ӫ C 5HBYEfŝ L7hy3m v(J$nZlw2ďm'"妐9bO;Όn(zFwrccU26 &A;90t, Y\ b9a/m9_4Kw,E- ?P+.GGi5` AE%xFP<*G7(K(>_fBkN|q.QʹLLN-w; {"; +{*L1vi PĪ2O`ŬF!ÿ`dvC% U֞B8-HQ8;9MPsC.hF۱J6{0Bt4Ţ 4YoDpܪg$]%3(ӊ,c:T{C [U ]wdm9# |L Z-`LP{ǖyw0nFx;0mE&5eyQsI?W ~B "]OSI#eδ ^OP$/K/H"ޢڢpP&2yi>}bb&w͑/Sʈߪzʿl"miyB]cR-%*$Y 9Ѷ+\cΫB{V/?> ]ӭwÚ鋪!-1W,s%HE`ȍ%N~ŧ"<ҾuwFy*2(U&f,a8B0co :(rɎUyQ5Ŏ/I _s{^RO)ӽ^#u7KAEV?|_Q˯ԇvleaϜ .A,HaHfZr^Sv7u02XVM+ulq!mԟj"<| zD5 W)Q[ڕSJrOT\ Tʢ/#ضqtqW{mo8x~"-LvO:XQ}=B+] ߚ+`;]O(NGOb D`Q4pr/9mw+8egH 1Q‰CȎzR9JQt8$hHCIG0uU_vƒ}Ef}&#Xδ|\A׉(bWT{3xE+]Th_k9KazNX.{=!a7FkͿ |)xn=Eb:B<\ qfI%!v+~zr#GMw-nIpl~ UJ}"Hxog*Vh8Q*A)(NCÈSg% 0k'o(pA) z#d>Hk7΀dae6o&Tw,sC\t[N`MϺ3X'lS"Z+H`ֿ pj#!# h~Y$oU+Hs+ ȟGC2B11*&R^-sLIh|Oif:m',-Zy^5~\I p|g\-uXh4|ctWӭYA4+%$w[csc#=ho^(н*vReͶ&(ׂB;Ak)Ɲm.jaFCY2b(Ff2EtFf#4\-[ISYio"F̢HvҖs ۠B08nq?C'r39M&i}BFV2lFddMg2.Ώd^xТn? N~+"[Ξ:K KQx.P;/o $%5u@0^lRWmsYs%vhviDe":p P $guɜb'.X@[f ɦM< T]ե\{Lw!aLL(bh+ Zָa +v &yXȑe^>$燝WMo^И'!F|4j=<('cG x%qn ,'@ϱ[;Dg>bʠlG:wz)iG66}A of& _[2yzDX)s|lr ΢$/U4p'f׶"xk?1qiIfhv4;''B+0o)(T~!݊:b.5b(nieV- wQoBt_kݯ r%Z%!AZ2 >]Gi4ަ^P5gUڗN5G*ֽ,Q΍I{VQ"[\Nngbh͊'>[jo9ZO陃?u8 :fإUTχQ6e_X-|ÇP* A.-'c݈<D"͏{Rם;]Ere/Tk Kʩ-$6W|0cCɬ5?ΕA.stmGe ΐQyy5f͔%RJr`Ά]m%&Yl"Pccv,I!Ÿcn!TԤ+)He҅@ 3;mt7X+qo,V2}j8J>F]b%ąM ȞJS$&I߀t-􏽬_X~_()'pI)LvO[~ %#lTFW:f$jhvu$'e앑)_=ٲx=!b|^s)$%͒ѭnNtQnv:<|_;w/y&MޑP'}yrӇ)P} /;ĕ(;t+b&eK )Kf4}ߨSWdSռbevpg-\SDïjVf&"/efi5;P+o3X`8Xo+c0,/ PM&їD7s's}A![nș9ʥ;Qm?$ȚZ )0JafXxKt*c:6%wl_ltKj&F /*TwAd!eZ]-d㯰OQUۆHoqT`}F$oI!kf`>\lmR706y2ݥ{2۟b~FU pMHX^;Rr`z⾯e^AP $FU姉ck`"Л%v! Uf<KH-ڄV˨B-,hB%Rko|ljr,:6E۬f }o/p5V 4!))m].59 ȡ.ɆYاI"YU lcO-\#ۇ;D-lIEI`KN[ v62L1w-Q: q|1nrX4i 2˂s%(d״DoںˠnW/Fǃs]d+P,PpbZre)DzvxfJ\\5 GKGjMAT蒫\yaC$wDg);} KXEk"~q/#LgFhd'd18Br9_ BrDCZtI2e2inHI(-ً-iUOx6.LeZi^ƽ-T>Z~ZKԩ ε Z﯇rž}A0zf,OAgzއ(,lZ͑jHQX$9s!-]nVI02*HNEr{ʸORo!ӅXx xaJt1AfA)I ?y"b/P"tĕɒkAD!Wv^}u_ѼMu)mfk8!SF0R5P!agcw Z M>8xbJ|yg}c)p;&y6ϼBm7iߡa(c;ъS^ʇ|[Oز.[׳qUBPSV螾茰}SἋ3hBR1ZbQ.ɪULm8iYvXJK >ZV(3JOұi64tf>+mŗ#gxC׵I>l@w̷EdϥF䥱hmі`x%nO-d@CxJ=x:$Z_aXYo_U˼Ԧl_W)a˓ ƕTL͛pu'#I3ͫrde[ t[Qhq4ے^j$֔~!Rm;$Q?m~62KP|3DfQBS2\n<-%3`OCލ`@mSJ*C7FA n$= oѾbB܁i|Wg O?(&(Q5_ 2v_dGKp~l;KҸH mH fjW-kјl+8Moct`/&öAei ~='ϯ8L어j[x<0MW:ۇ[x=Rdp *pltή jBɟ.*\ UY0<1ӟnr`>m{> [iQms1Ndۄx~ @,}ĚQԋ *4rފ9D"鱘j.읊ad|p]szp3`(ʨ=oUevArX}1t]*]aL}YOP.3wan݃Wm}WW? 'T5uJW@Ϟ4.}@ H1=ǃ@XD.-|,F˦- S]RXzvZaLų-կ@ kڦGt۩(J`t&< q>J˦?3XOʧRjƴ s=㩤Y!mgqG7fA^Dज=# $o|S-˹B]Fr88_Tco.t/}sN:`vBWv՝$)o?H>U-QȝR׹r3! ',y2}5tWpbL”Ռi(k+dջ8(O8}wxK6˕bq\+_sxЍJV8ѕN ms:n>I#n4=ΏM8 rXPUm,9y{^1 ?Z&@ Æg;0\glI~ ա>y vOSλ&ǬoZ/w\!댵hRʩ*`'̫oU:tDAN׿^b@7R'MpS@x$OyrUŧN⒌ Kka 1Oi'5&GFOtBeޭ:5Kq\sCRW3dBj c2TjR-}D)Z"PaTi bƗ^|ݤͮ}̔/0* @PSk5sް|VO1@<[MwVfE]"xQs@V~Јyе~}@- AC)%aw_)Y ]`M9Do)N8`]~1ǢwL)D8~Cs2StOoy^ m i.~Ao~݌)G>#/1ixԅ@*VD%71qX>`jux>[N8#m11ajmܨoi=U VWِhLAN>½N:`Hp,ќ{T[!n[%q(áUM 8oKjBs;@.mڛ`YKdڂ[6v~qNwo˻>تDӘݤL/^W?uXT< dۖ" Y7m%wt^Yp2>EF@i [YʉtKAhonDZ}c(77l޹%BXla"0'#jBf-5R BIq^nz59Oƻhs U [XND4\"셴C~uS+ >PSk q!Uc_hx>|QqO lb4ux'D[D~UlX^,Ɍ?¾fCM:"eݤu4yI.kd<}d൞̂h✼}3jN'QL=:.ʩK_!0}Ԃ!H7^38hNm6`.r$%raP0$c%PU#|Zw Z)\'a^N?ۉ2Dc" qL'9x@*?׊߻wȒvbmjR!ՖS! E1]6{Ķa7z7#w-˓j9M1繐t=7Eɑzt߱H`"xzȷDv:SL\ `">ڮ mPRۨY4.|Qv ӊnb r[Wze~Ժ8Ib۳a,hvBoD߱lt ` ,dt&!-oKd\z->yvW{ְԇ' ~86f` H{%^A^@Jb*z_y,d. fN@ޏ(A@I2ݛrzL9Ȫq&\N7g`gJr=*)nC%)uM{>;TI]_6 Yۓ߇XxjCrVt23xű'}VEыLl`= _' cHVXCV<;kFo6ff ɏnVIiTvWU|il&h=Ӊ6)iIwQ:.0zn ?M=#eZ⎙91+-tw+iϼ#7S`έҦi4&F]v|⩲$Y䈻ZteBHZ[v~/F_5 #u+t^pNÆ^7`ܺl gsZlw*uMž];ׁgmĎ5"X3L|r(*E@HP|G_Kζ_P5WZʊV-BWz%Ҏh_H(9>A*Qj4r*RJeK$ȫ}B^f\;竼(6y|J]ak m3H:=,"7 N ~`؅H> Vl-;p߄"Ė_Vrt v<``}Wm7⟝Ϯ&10>\,fyV$tX1;l4 c|:9/ * YZ