// /** @file
// This library is only intended to be used by PlatformBootManagerLib
//
// to show progress bar and logo.
//
// Copyright (c) 2015, Intel Corporation. All rights reserved.<BR>
//
// SPDX-License-Identifier: BSD-2-Clause-Patent
//
// **/

#string STR_MODULE_ABSTRACT
#language en-US
"This library is only intended to be used by PlatformBootManagerLib"

#string STR_MODULE_DESCRIPTION
#language en-US
"to show progress bar and logo."


