# /**
#  * Copyright (c) 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 2.0
#  * which accompanies this distribution, and is available at
#  * https://www.eclipse.org/legal/epl-2.0/
#  *
#  * Contributors:
#  *   itemis - Initial API and implementation
#  */

# NLS_MESSAGEFORMAT_VAR

_UI_Tools_ExamplesCategory_name = APP4MC Tools Examples

_UI_Tools_WorkflowExamplesWizard_name = Workflow Examples
_UI_Tools_WorkflowExamplesWizard_desc = Create projects that contain the Workflow Examples

_UI_Tools_Example_Workflow_Project_desc = The project contains the EASE Workflow and its components to query/modify AMALTHEA models 
