#-------------------------------------------------------------------------------
# Copyright (c) 2000, 2008 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

featureName=Fonction de base EPF
providerName=Eclipse.org
description=Fonction de base EPF.
updateSiteName=Mises \u00e0 jour de la fonction EPF
copyright=(c) Copyright Eclipse contributors and others 2000, 2008.  All Rights Reserved.
licenseURL=license.html
licenseText=L'utilisation de cette fonction d\u00e9pend des m\u00eames termes et conditions qui r\u00e9gissent l'utilisation du produit incluant cette fonction.
