#-------------------------------------------------------------------------------
# Copyright (c) 2005, 2006 IBM Corporation and others.
# All rights reserved. This program and the accompanying materials
# are made available under the terms of the Eclipse Public License v1.0
# which accompanies this distribution, and is available at
# http://www.eclipse.org/legal/epl-v10.html
#
# Contributors:
# IBM Corporation - initial implementation.
#-------------------------------------------------------------------------------
# NLS_MESSAGEFORMAT_VAR

# Plug-in
pluginName=EPF \uac00\uc838\uc624\uae30
providerName=Eclipse.org

# Import Wizard Category
importCategoryName=\uba54\uc18c\ub4dc

# Import Library Configuration Wizard
importLibraryConfigurationWizardName=\ub77c\uc774\ube0c\ub7ec\ub9ac \uad6c\uc131
importLibraryConfigurationWizardText=\ub77c\uc774\ube0c\ub7ec\ub9ac \uad6c\uc131\uc744 \uac00\uc838\uc635\ub2c8\ub2e4.

# Import Method Plug-ins Wizard
importMethodPluginsWizardName=\uba54\uc18c\ub4dc \ud50c\ub7ec\uadf8\uc778
importMethodPluginsWizardText=\ud558\ub098 \uc774\uc0c1\uc758 \uba54\uc18c\ub4dc \ud50c\ub7ec\uadf8\uc778\uc744 \uac00\uc838\uc635\ub2c8\ub2e4.



               
