/*******************************************************************************
 * Copyright (c) 2010, 2012 ACIN, Profactor GmbH
 * This program and the accompanying materials are made available under the
 * terms of the Eclipse Public License 2.0 which is available at
 * http://www.eclipse.org/legal/epl-2.0.
 *
 * SPDX-License-Identifier: EPL-2.0
 *
 * Contributors:
 *   Michael Hofmann, Alois Zoitl
 *     - initial API and implementation and/or initial documentation
 *******************************************************************************/

//!!!autogenerated code - DO NOT EDIT!!!

#ifndef STRINGLIST_H_
#define STRINGLIST_H_
#include <stringdict.h>

${STRINGLIST_H}

#endif /*STRINGLIST_H_*/
