###############################################################################
# Copyright (c) 2000, 2004 IBM Corporation and others.
# All rights reserved. This program and the accompanying materials 
# are made available under the terms of the Common Public License v1.0
# which accompanies this distribution, and is available at
# http://www.eclipse.org/legal/cpl-v10.html
# 
# Contributors:
#     IBM Corporation - initial API and implementation
###############################################################################

StringSubstitutionEngine.3=Reference to undefined variable {0}
StringSubstitutionEngine.4=Variable {0} does not accept arguments

StringVariableManager.26=Variables with the specified names are already registered.
StringVariableManager.27=Variable named {0} already registered

