#-------------------------------------------------------------------------------
# Copyright (c) 2000, 2007 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 implementationCorporation. All Rights Reserved.
#-------------------------------------------------------------------------------
# NLS_MESSAGEFORMAT_VAR

# Search Stop Words
Search.stopWords=un, une, \u00e0 propos de, et, sont, comme, en tant que, \u00eatre, mais, par, pour, de, depuis, comment, je, si, dans, \u00e0 l'int\u00e9rieur de, est, \u00e7a, ce, c', l', non, pas, de, sur, ou, tel, tel que, cela, le, leur, leurs, puis, ensuite, l\u00e0, ces, ils, ceci, vers, en direction de, \u00e9tait, quel, quelle, quoi, quand, o\u00f9, qui, sera, avec


