// /** @file
// HardwareErrorSourceTableDxe Localized Strings and Content
//
// Copyright (c) 2026, Qualcomm Technologies, Inc.<BR>
//
// SPDX-License-Identifier: BSD-2-Clause-Patent
//
// **/

#string STR_PROPERTIES_MODULE_NAME  #language en-US "ACPI Hardware Error Source Table DXE Driver"


