/*******************************************************************************
 * Copyright (c) 2008, 2011 IBM Corporation and others.
 *
 * This program and the accompanying materials
 * are made available under the terms of the Eclipse Public License 2.0
 * which accompanies this distribution, and is available at
 * https://www.eclipse.org/legal/epl-2.0/
 *
 * SPDX-License-Identifier: EPL-2.0
 *
 * Contributors:
 *     IBM Corporation - initial API and implementation
 *******************************************************************************/
package org.eclipse.compare.internal.win32;

import org.eclipse.osgi.util.NLS;

public class CompareWin32Messages extends NLS {
	private static final String BUNDLE_NAME = "org.eclipse.compare.internal.win32.messages"; //$NON-NLS-1$
	public static String WordComparison_0;
	public static String WordComparison_1;
	public static String WordComparison_16;
	public static String WordComparison_2;
	public static String WordComparison_3;
	public static String WordComparison_4;
	public static String WordComparison_6;
	public static String WordComparison_9;
	public static String WordMergeViewer_1;
	public static String WordMergeViewer_2;
	public static String WordMergeViewer_3;
	public static String WordMergeViewer_4;
	public static String WordMergeViewer_5;
	static {
		// initialize resource bundle
		NLS.initializeMessages(BUNDLE_NAME, CompareWin32Messages.class);
	}

	private CompareWin32Messages() {
	}
}
