From c73717599503a6ecc07464bc75d51eec0b218ee5 Mon Sep 17 00:00:00 2001
From: Tim Kluge <timklge@gmail.com>
Date: Mon, 28 Sep 2020 20:44:13 +0200
Subject: [PATCH] Add eclipse product configuration for deployment

---
 org.framed.iorm.featuremodel/build.properties |   3 +-
 .../test/TransformationTestSuite.java         |   4 +-
 .../test/testgeneration/TestGenerator.java    |   2 +-
 .../transformation/EpsilonStandalone.java     |  24 +-
 .../TransformationExecutor.java               |  62 +-
 org.framed.iorm.ui/META-INF/MANIFEST.MF       |   4 +-
 org.framed.iorm.ui/build.properties           |  26 +-
 .../core/model/ModelPattern.java              |   4 +-
 org.framed.iorm.ui/framed.product             | 515 +++++++++++++
 .../icons/icon_role_model_project_wizard.icns | Bin 0 -> 3377 bytes
 .../icons/icon_role_model_wizard.ico          | Bin 0 -> 12862 bytes
 .../icons/icon_role_model_wizard.xpm          | 724 ++++++++++++++++++
 .../icons/icon_role_model_wizard_16.png       | Bin 0 -> 2703 bytes
 .../icons/icon_role_model_wizard_32.png       | Bin 0 -> 8942 bytes
 org.framed.iorm.ui/icons/splash.png           | Bin 0 -> 5347 bytes
 org.framed.iorm.ui/plugin.xml                 |  53 +-
 org.framed.iorm.ui/plugin_customization.ini   |   1 +
 org.framed.iorm.ui/splash.bmp                 | Bin 0 -> 495122 bytes
 .../ui/subeditors/FRaMEDFeatureEditor.java    |   2 +-
 19 files changed, 1382 insertions(+), 42 deletions(-)
 create mode 100644 org.framed.iorm.ui/framed.product
 create mode 100644 org.framed.iorm.ui/icons/icon_role_model_project_wizard.icns
 create mode 100644 org.framed.iorm.ui/icons/icon_role_model_wizard.ico
 create mode 100644 org.framed.iorm.ui/icons/icon_role_model_wizard.xpm
 create mode 100644 org.framed.iorm.ui/icons/icon_role_model_wizard_16.png
 create mode 100644 org.framed.iorm.ui/icons/icon_role_model_wizard_32.png
 create mode 100644 org.framed.iorm.ui/icons/splash.png
 create mode 100644 org.framed.iorm.ui/plugin_customization.ini
 create mode 100644 org.framed.iorm.ui/splash.bmp

diff --git a/org.framed.iorm.featuremodel/build.properties b/org.framed.iorm.featuremodel/build.properties
index 076250ce..200d24e7 100644
--- a/org.framed.iorm.featuremodel/build.properties
+++ b/org.framed.iorm.featuremodel/build.properties
@@ -2,6 +2,7 @@ source.. = src/
 output.. = bin/
 bin.includes = META-INF/,\
                .,\
+               standardframedconfiguration/,\
                model.xml
 src.includes = model.xml,\
-               META-INF/
+               standardframedconfiguration/
\ No newline at end of file
diff --git a/org.framed.iorm.transformation.test/src/org/framed/iorm/transformation/test/TransformationTestSuite.java b/org.framed.iorm.transformation.test/src/org/framed/iorm/transformation/test/TransformationTestSuite.java
index e1bddb9a..dec35028 100644
--- a/org.framed.iorm.transformation.test/src/org/framed/iorm/transformation/test/TransformationTestSuite.java
+++ b/org.framed.iorm.transformation.test/src/org/framed/iorm/transformation/test/TransformationTestSuite.java
@@ -88,7 +88,7 @@ public class TransformationTestSuite {
     if (bundle != null) {
       // get dir out of bundle
       URL fileURL = bundle.getEntry("testcases");
-      file = new File(FileLocator.resolve(fileURL).toURI());
+      file = new File(FileLocator.toFileURL(fileURL).toURI());
     } else {
       // otherwise just load it from the working directory
       file = new File("testcases");
@@ -326,7 +326,7 @@ public class TransformationTestSuite {
 	  Bundle bundle = Platform.getBundle("org.framed.iorm.transformation.test");
 	  URL fileURL = bundle.getEntry("testcases/Generated/" + filename + ".xmi");
 	  try {
-		File file = new File(FileLocator.resolve(fileURL).toURI());
+		File file = new File(FileLocator.toFileURL(fileURL).toURI());
 		Files.delete(Paths.get(file.getPath()));
 	} catch (URISyntaxException | IOException e) {
 		e.printStackTrace();
diff --git a/org.framed.iorm.transformation.test/src/org/framed/iorm/transformation/test/model/test/testgeneration/TestGenerator.java b/org.framed.iorm.transformation.test/src/org/framed/iorm/transformation/test/model/test/testgeneration/TestGenerator.java
index 7f3f4304..64340ee1 100644
--- a/org.framed.iorm.transformation.test/src/org/framed/iorm/transformation/test/model/test/testgeneration/TestGenerator.java
+++ b/org.framed.iorm.transformation.test/src/org/framed/iorm/transformation/test/model/test/testgeneration/TestGenerator.java
@@ -48,7 +48,7 @@ public class TestGenerator {
 		configGenerator = new ConfigGenerator();
 		Bundle bundle = Platform.getBundle("org.framed.iorm.transformation.test");
 	    URL fileURL = bundle.getEntry("testcases/Generated/baseTest.xmi");
-		File file = new File(FileLocator.resolve(fileURL).toURI());
+		File file = new File(FileLocator.toFileURL(fileURL).toURI());
 		String str_config;
 		
 		TestCase testCase = loadTestCase(file);
diff --git a/org.framed.iorm.transformation/src/org/framed/iorm/transformation/EpsilonStandalone.java b/org.framed.iorm.transformation/src/org/framed/iorm/transformation/EpsilonStandalone.java
index 5b1faa99..daf0ab8c 100644
--- a/org.framed.iorm.transformation/src/org/framed/iorm/transformation/EpsilonStandalone.java
+++ b/org.framed.iorm.transformation/src/org/framed/iorm/transformation/EpsilonStandalone.java
@@ -1,15 +1,18 @@
 package org.framed.iorm.transformation;
 
+import java.io.File;
+import java.io.IOException;
+import java.net.MalformedURLException;
 import java.net.URI;
 import java.net.URISyntaxException;
 import java.net.URL;
 import java.util.List;
-import org.eclipse.core.runtime.Platform;
+
+import org.eclipse.core.runtime.FileLocator;
 import org.eclipse.epsilon.common.parse.problem.ParseProblem;
 import org.eclipse.epsilon.eol.IEolModule;
 import org.eclipse.epsilon.eol.exceptions.EolRuntimeException;
 import org.eclipse.epsilon.eol.models.IModel;
-import org.osgi.framework.Bundle;
 
 public abstract class EpsilonStandalone {
 
@@ -52,12 +55,21 @@ public abstract class EpsilonStandalone {
   }
 
   protected URI getTransformationFile() {
-    Bundle bundle = Platform.getBundle("org.framed.iorm.transformation");
-    URL fileURL = bundle.getEntry(getSource());
+    URL fileURL = null;
+	try {
+		fileURL = new File(getSource()).toURI().toURL();
+	} catch (MalformedURLException e1) {
+		e1.printStackTrace();
+	}
+	
 
     try {
-      return fileURL.toURI();
-    } catch (URISyntaxException e) { e.printStackTrace(); }
+  	  System.out.println("Output file is " + FileLocator.toFileURL(fileURL).toString());
+
+    	return FileLocator.toFileURL(fileURL).toURI();
+    } catch (URISyntaxException e) { e.printStackTrace(); } catch (IOException e) {
+		e.printStackTrace();
+	}
     return null;
   }
 }
diff --git a/org.framed.iorm.transformation/src/org/framed/iorm/transformation/TransformationExecutor.java b/org.framed.iorm.transformation/src/org/framed/iorm/transformation/TransformationExecutor.java
index 02a3cf9b..22530d9b 100644
--- a/org.framed.iorm.transformation/src/org/framed/iorm/transformation/TransformationExecutor.java
+++ b/org.framed.iorm.transformation/src/org/framed/iorm/transformation/TransformationExecutor.java
@@ -61,9 +61,15 @@ public class TransformationExecutor extends EpsilonStandalone {
 	 */
 	private final List<File> copiedAndGeneratedFiles;
 
-	private final String generatedFolder = "generated", generatedFile = "generatedORM2CROM.etl",
+	private final String generatedFile = "generatedORM2CROM.etl",
 			importMarker = "/*{generate imports here}*/";
 
+	private Path tempEpsilonFolder;
+	
+	public Path getTempGeneratedFolder() {
+		return tempEpsilonFolder;
+	}
+	
 	/**
 	 * class constructor
 	 * <p>
@@ -83,6 +89,17 @@ public class TransformationExecutor extends EpsilonStandalone {
 	 * need to be copied once.
 	 */
 	public TransformationExecutor() {
+		tempEpsilonFolder = null;
+		try {
+			tempEpsilonFolder = Files.createTempDirectory("framed");
+		} catch (IOException e2) {
+			e2.printStackTrace();
+		}
+		try {
+			Files.createDirectory(Paths.get(tempEpsilonFolder.toString(), "generated"));
+		} catch (IOException e2) {
+			e2.printStackTrace();
+		}
 		sourceModelFile = null;
 		targetModelFile = null;
 		copiedAndGeneratedFiles = new ArrayList<File>();
@@ -90,7 +107,7 @@ public class TransformationExecutor extends EpsilonStandalone {
 		URL epsilonFolderURL = TransformationBundle.getEntry("epsilon");
 		File epsilonFolder = null;
 		try {
-			epsilonFolder = new File(resolveURL(FileLocator.resolve(epsilonFolderURL)));
+			epsilonFolder = new File(resolveURL(epsilonFolderURL));
 		} catch (URISyntaxException | IOException e1) {
 			e1.printStackTrace();
 		}
@@ -99,6 +116,18 @@ public class TransformationExecutor extends EpsilonStandalone {
 			System.err.println("No folder 'epsilon' found");
 			return;
 		}
+		
+		final String[] epsilonFiles = {"AllFeatures.eol", "CardinalityParser.eol", "ORM2CROM.etl"};
+		for(String f : epsilonFiles) {
+			try {
+				File src = new File(FileLocator.toFileURL(TransformationBundle.getEntry("/epsilon/" + f)).toURI());
+				File dst = new File(Paths.get(tempEpsilonFolder.toString(), f).toString());
+				Files.copy(src.toPath(), dst.toPath(), StandardCopyOption.REPLACE_EXISTING);
+			} catch(IOException | URISyntaxException e) {
+				e.printStackTrace();
+			}
+		}
+		
 		// Step 2
 		List<URL> moduleFileURLs = null, coreFileURLs = null;
 		Enumeration<URL> moduleFileEnumeration = UIBundle.findEntries("/modules", "*.etl", true),
@@ -116,15 +145,15 @@ public class TransformationExecutor extends EpsilonStandalone {
 						&& !packageETLFilesMarkedAsNotUsed(url.toString(), "modules/")) {
 					// (a)
 					try {
-						etlFile = new File(resolveURL(FileLocator.resolve(url)));
+						etlFile = new File(resolveURL(url));
 					} catch (URISyntaxException | IOException e) {
 						e.printStackTrace();
 					}
 					try {
 						try {
-							Path path = Files.copy(Paths.get(etlFile.getPath()),
-									Paths.get(epsilonFolder.getPath() + File.separator + File.separator
-											+ generatedFolder + File.separator + etlFile.getName()),
+							File targetFile = new File(Paths.get(tempEpsilonFolder.toString(), "generated", etlFile.getName()).toString());
+							targetFile.mkdirs();
+							Path path = Files.copy(Paths.get(etlFile.getPath()), targetFile.toPath(),
 									StandardCopyOption.REPLACE_EXISTING);
 							copiedAndGeneratedFiles.add(new File(path.toString()));
 							// Note
@@ -144,15 +173,16 @@ public class TransformationExecutor extends EpsilonStandalone {
 						&& !packageETLFilesMarkedAsNotUsed(url.toString(), "core/")) {
 					// (a)
 					try {
-						etlFile = new File(resolveURL(FileLocator.resolve(url)));
+						etlFile = new File(resolveURL(url));
 					} catch (URISyntaxException | IOException e) {
 						e.printStackTrace();
 					}
 					try {
 						try {
+							File targetFile = new File(Paths.get(tempEpsilonFolder.toString(), "generated", etlFile.getName()).toString());
+
 							Path path = Files.copy(Paths.get(etlFile.getPath()),
-									Paths.get(epsilonFolder.getPath() + File.separator + File.separator
-											+ generatedFolder + File.separator + etlFile.getName()),
+									targetFile.toPath(),
 									StandardCopyOption.REPLACE_EXISTING);
 							copiedAndGeneratedFiles.add(new File(path.toString()));
 							// Note
@@ -167,8 +197,8 @@ public class TransformationExecutor extends EpsilonStandalone {
 			}
 		}
 		// Step 4
-		generateORM2CROMWithImports(importNames, epsilonFolder);
-		transformationFile = "epsilon/" + generatedFolder + "/" + generatedFile;
+		generateORM2CROMWithImports(importNames, tempEpsilonFolder.toFile());
+		transformationFile = Paths.get(tempEpsilonFolder.toString(), "generated", generatedFile.toString()).toString();
 	}
 
 	/**
@@ -225,7 +255,7 @@ public class TransformationExecutor extends EpsilonStandalone {
 		} else {
 			// Step 2
 			try {
-				File ORM2CROMUrl = new File(resolveURL(FileLocator.resolve(ORM2CROMUrls.get(0))));
+				File ORM2CROMUrl = new File(resolveURL(ORM2CROMUrls.get(0)));
 				BufferedReader buff = new BufferedReader(new FileReader(ORM2CROMUrl.getPath()));
 				String str = "";
 				while ((str = buff.readLine()) != null) {
@@ -240,8 +270,7 @@ public class TransformationExecutor extends EpsilonStandalone {
 				fileText = fileText.replace(importMarker, importMarker + "\n import \"" + s + "\";\n");
 			// Step 4
 			try {
-				String generatedORM2CROMPath = epsilonFolder.getPath() + File.separator + File.separator
-						+ generatedFolder + File.separator + generatedFile;
+				String generatedORM2CROMPath = Paths.get(tempEpsilonFolder.toString(), "generated", generatedFile.toString()).toString();
 				File generatedORM2CROM = new File(generatedORM2CROMPath);
 				generatedORM2CROM.createNewFile();
 				copiedAndGeneratedFiles.add(generatedORM2CROM);
@@ -382,8 +411,9 @@ public class TransformationExecutor extends EpsilonStandalone {
 	 * @param url the given URL
 	 * @return a new correctly initialized URI object
 	 * @throws URISyntaxException
+	 * @throws IOException 
 	 */
-	private static URI resolveURL(URL url) throws URISyntaxException {
-		return new URI(url.getProtocol(), url.getPath(), null);
+	private static URI resolveURL(URL url) throws URISyntaxException, IOException {
+		return FileLocator.toFileURL(url).toURI();
 	}
 }
diff --git a/org.framed.iorm.ui/META-INF/MANIFEST.MF b/org.framed.iorm.ui/META-INF/MANIFEST.MF
index e916b037..b52ced48 100644
--- a/org.framed.iorm.ui/META-INF/MANIFEST.MF
+++ b/org.framed.iorm.ui/META-INF/MANIFEST.MF
@@ -28,7 +28,9 @@ Require-Bundle: org.framed.iorm.featuremodel;bundle-version="1.0.0",
  org.eclipse.ui.workbench,
  org.eclipse.emf.ecore,
  org.framed.iorm.editpolicymodel;bundle-version="1.0.0",
- org.eclipse.osgi
+ org.eclipse.osgi,
+ org.apache.felix.scr;bundle-version="2.0.14",
+ org.eclipse.equinox.ds;bundle-version="1.5.100"
 Import-Package: org.eclipse.graphiti.features;version="0.13.2",
  org.framed.iorm.transformation
 Bundle-ClassPath: src/,
diff --git a/org.framed.iorm.ui/build.properties b/org.framed.iorm.ui/build.properties
index e8eacb21..98900e60 100644
--- a/org.framed.iorm.ui/build.properties
+++ b/org.framed.iorm.ui/build.properties
@@ -1,11 +1,15 @@
-source.. = src/,\
-           core/,\
-           modules/
-output.. = bin/
-bin.includes = META-INF/,\
-               plugin.xml,\
-               .,\
-               .classpath,\
-               src/,\
-               modules/
-jars.compile.order = .
+output.. = bin/
+bin.includes = META-INF/,\
+               plugin.xml,\
+               .,\
+               .classpath,\
+               src/,\
+               modules/,\
+               icons/,\
+               plugin_customization.ini,\
+               bin/,\
+               core/
+jars.compile.order = .
+source.. = src/,\
+           core/,\
+           modules/
diff --git a/org.framed.iorm.ui/core/model/ModelPattern.java b/org.framed.iorm.ui/core/model/ModelPattern.java
index 84658a16..93fde284 100644
--- a/org.framed.iorm.ui/core/model/ModelPattern.java
+++ b/org.framed.iorm.ui/core/model/ModelPattern.java
@@ -152,8 +152,10 @@ public class ModelPattern extends FRaMEDShapePattern implements IPattern {
 	 */
 	private void setStandartConfiguration(Model model) throws URISyntaxException, IOException {
 		ResourceSet resourceSet = new ResourceSetImpl();
+		System.out.println(UILiterals.URL_TO_STANDARD_CONFIGURATION.toURI().toString());
+		System.out.println(URI.createURI(UILiterals.URL_TO_STANDARD_CONFIGURATION.toURI().toString()).toString());
 		Resource resourceStandartConfiguration =
-			resourceSet.createResource(URI.createFileURI(FileLocator.resolve(UILiterals.URL_TO_STANDARD_CONFIGURATION).getFile()));
+			resourceSet.getResource(URI.createURI(UILiterals.URL_TO_STANDARD_CONFIGURATION.toURI().toString()), true);
 		try {
 			resourceStandartConfiguration.load(null);
 		} catch (IOException e) { 
diff --git a/org.framed.iorm.ui/framed.product b/org.framed.iorm.ui/framed.product
new file mode 100644
index 00000000..59a0aa0f
--- /dev/null
+++ b/org.framed.iorm.ui/framed.product
@@ -0,0 +1,515 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?pde version="3.5"?>
+
+<product name="FRaMED Editor" uid="org.framed.iorm.ui.product" id="org.framed.iorm.ui.framed" application="org.eclipse.ui.ide.workbench" version="2.2.0.qualifier" useFeatures="false" includeLaunchers="true">
+
+   <aboutInfo>
+      <image path="/org.framed.iorm.ui/icons/splash.png"/>
+      <text>
+         The Full-fledged Role Modeling EDitor Software Product Line (FRaMED SPL) (Version 2.0) is the reimplementation of FRaMED allowing the graphical specification of Role-based Software Systems by means of compartments (aka. contexts), objects, roles, and relationships. Moreover, it supports a varity of constraints upon roles and relationships.
+
+Contributors:
+Kevin Ivo Kassin
+Christian Deussen
+Thomas Kühn
+      </text>
+   </aboutInfo>
+
+   <configIni use="default">
+   </configIni>
+
+   <launcherArgs>
+      <vmArgsMac>-XstartOnFirstThread -Dorg.eclipse.swt.internal.carbon.smallFonts
+      </vmArgsMac>
+   </launcherArgs>
+
+   <windowImages/>
+
+   <splash
+      location="org.framed.iorm.ui"
+      startupProgressRect="5,275,445,15"
+      startupMessageRect="7,252,445,20"
+      startupForegroundColor="000000" />
+   <launcher name="framed">
+      <linux icon="/org.framed.iorm.ui/icons/icon_role_model_wizard.xpm"/>
+      <macosx icon="/org.framed.iorm.ui/icons/icon_role_model_project_wizard.icns"/>
+      <win useIco="true">
+         <ico path="/org.framed.iorm.ui/icons/icon_role_model_wizard.ico"/>
+         <bmp/>
+      </win>
+   </launcher>
+
+
+   <vm>
+      <linux include="true">org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8</linux>
+      <windows include="false">org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8</windows>
+   </vm>
+
+   <license>
+        <url>https://www.eclipse.org/legal/epl-2.0/</url>
+        <text>
+   Eclipse Public License - v 2.0
+
+    THE ACCOMPANYING PROGRAM IS PROVIDED UNDER THE TERMS OF THIS ECLIPSE
+    PUBLIC LICENSE (&quot;AGREEMENT&quot;). ANY USE, REPRODUCTION OR DISTRIBUTION
+    OF THE PROGRAM CONSTITUTES RECIPIENT&apos;S ACCEPTANCE OF THIS AGREEMENT.
+
+1. DEFINITIONS
+
+&quot;Contribution&quot; means:
+
+  a) in the case of the initial Contributor, the initial content
+     Distributed under this Agreement, and
+
+  b) in the case of each subsequent Contributor:
+     i) changes to the Program, and
+     ii) additions to the Program;
+  where such changes and/or additions to the Program originate from
+  and are Distributed by that particular Contributor. A Contribution
+  &quot;originates&quot; from a Contributor if it was added to the Program by
+  such Contributor itself or anyone acting on such Contributor&apos;s behalf.
+  Contributions do not include changes or additions to the Program that
+  are not Modified Works.
+
+&quot;Contributor&quot; means any person or entity that Distributes the Program.
+
+&quot;Licensed Patents&quot; mean patent claims licensable by a Contributor which
+are necessarily infringed by the use or sale of its Contribution alone
+or when combined with the Program.
+
+&quot;Program&quot; means the Contributions Distributed in accordance with this
+Agreement.
+
+&quot;Recipient&quot; means anyone who receives the Program under this Agreement
+or any Secondary License (as applicable), including Contributors.
+
+&quot;Derivative Works&quot; shall mean any work, whether in Source Code or other
+form, that is based on (or derived from) the Program and for which the
+editorial revisions, annotations, elaborations, or other modifications
+represent, as a whole, an original work of authorship.
+
+&quot;Modified Works&quot; shall mean any work in Source Code or other form that
+results from an addition to, deletion from, or modification of the
+contents of the Program, including, for purposes of clarity any new file
+in Source Code form that contains any contents of the Program. Modified
+Works shall not include works that contain only declarations,
+interfaces, types, classes, structures, or files of the Program solely
+in each case in order to link to, bind by name, or subclass the Program
+or Modified Works thereof.
+
+&quot;Distribute&quot; means the acts of a) distributing or b) making available
+in any manner that enables the transfer of a copy.
+
+&quot;Source Code&quot; means the form of a Program preferred for making
+modifications, including but not limited to software source code,
+documentation source, and configuration files.
+
+&quot;Secondary License&quot; means either the GNU General Public License,
+Version 2.0, or any later versions of that license, including any
+exceptions or additional permissions as identified by the initial
+Contributor.
+
+2. GRANT OF RIGHTS
+
+  a) Subject to the terms of this Agreement, each Contributor hereby
+  grants Recipient a non-exclusive, worldwide, royalty-free copyright
+  license to reproduce, prepare Derivative Works of, publicly display,
+  publicly perform, Distribute and sublicense the Contribution of such
+  Contributor, if any, and such Derivative Works.
+
+  b) Subject to the terms of this Agreement, each Contributor hereby
+  grants Recipient a non-exclusive, worldwide, royalty-free patent
+  license under Licensed Patents to make, use, sell, offer to sell,
+  import and otherwise transfer the Contribution of such Contributor,
+  if any, in Source Code or other form. This patent license shall
+  apply to the combination of the Contribution and the Program if, at
+  the time the Contribution is added by the Contributor, such addition
+  of the Contribution causes such combination to be covered by the
+  Licensed Patents. The patent license shall not apply to any other
+  combinations which include the Contribution. No hardware per se is
+  licensed hereunder.
+
+  c) Recipient understands that although each Contributor grants the
+  licenses to its Contributions set forth herein, no assurances are
+  provided by any Contributor that the Program does not infringe the
+  patent or other intellectual property rights of any other entity.
+  Each Contributor disclaims any liability to Recipient for claims
+  brought by any other entity based on infringement of intellectual
+  property rights or otherwise. As a condition to exercising the
+  rights and licenses granted hereunder, each Recipient hereby
+  assumes sole responsibility to secure any other intellectual
+  property rights needed, if any. For example, if a third party
+  patent license is required to allow Recipient to Distribute the
+  Program, it is Recipient&apos;s responsibility to acquire that license
+  before distributing the Program.
+
+  d) Each Contributor represents that to its knowledge it has
+  sufficient copyright rights in its Contribution, if any, to grant
+  the copyright license set forth in this Agreement.
+
+  e) Notwithstanding the terms of any Secondary License, no
+  Contributor makes additional grants to any Recipient (other than
+  those set forth in this Agreement) as a result of such Recipient&apos;s
+  receipt of the Program under the terms of a Secondary License
+  (if permitted under the terms of Section 3).
+
+3. REQUIREMENTS
+
+3.1 If a Contributor Distributes the Program in any form, then:
+
+  a) the Program must also be made available as Source Code, in
+  accordance with section 3.2, and the Contributor must accompany
+  the Program with a statement that the Source Code for the Program
+  is available under this Agreement, and informs Recipients how to
+  obtain it in a reasonable manner on or through a medium customarily
+  used for software exchange; and
+
+  b) the Contributor may Distribute the Program under a license
+  different than this Agreement, provided that such license:
+     i) effectively disclaims on behalf of all other Contributors all
+     warranties and conditions, express and implied, including
+     warranties or conditions of title and non-infringement, and
+     implied warranties or conditions of merchantability and fitness
+     for a particular purpose;
+
+     ii) effectively excludes on behalf of all other Contributors all
+     liability for damages, including direct, indirect, special,
+     incidental and consequential damages, such as lost profits;
+
+     iii) does not attempt to limit or alter the recipients&apos; rights
+     in the Source Code under section 3.2; and
+
+     iv) requires any subsequent distribution of the Program by any
+     party to be under a license that satisfies the requirements
+     of this section 3.
+
+3.2 When the Program is Distributed as Source Code:
+
+  a) it must be made available under this Agreement, or if the
+  Program (i) is combined with other material in a separate file or
+  files made available under a Secondary License, and (ii) the initial
+  Contributor attached to the Source Code the notice described in
+  Exhibit A of this Agreement, then the Program may be made available
+  under the terms of such Secondary Licenses, and
+
+  b) a copy of this Agreement must be included with each copy of
+  the Program.
+
+3.3 Contributors may not remove or alter any copyright, patent,
+trademark, attribution notices, disclaimers of warranty, or limitations
+of liability (&quot;notices&quot;) contained within the Program from any copy of
+the Program which they Distribute, provided that Contributors may add
+their own appropriate notices.
+
+4. COMMERCIAL DISTRIBUTION
+
+Commercial distributors of software may accept certain responsibilities
+with respect to end users, business partners and the like. While this
+license is intended to facilitate the commercial use of the Program,
+the Contributor who includes the Program in a commercial product
+offering should do so in a manner which does not create potential
+liability for other Contributors. Therefore, if a Contributor includes
+the Program in a commercial product offering, such Contributor
+(&quot;Commercial Contributor&quot;) hereby agrees to defend and indemnify every
+other Contributor (&quot;Indemnified Contributor&quot;) against any losses,
+damages and costs (collectively &quot;Losses&quot;) arising from claims, lawsuits
+and other legal actions brought by a third party against the Indemnified
+Contributor to the extent caused by the acts or omissions of such
+Commercial Contributor in connection with its distribution of the Program
+in a commercial product offering. The obligations in this section do not
+apply to any claims or Losses relating to any actual or alleged
+intellectual property infringement. In order to qualify, an Indemnified
+Contributor must: a) promptly notify the Commercial Contributor in
+writing of such claim, and b) allow the Commercial Contributor to control,
+and cooperate with the Commercial Contributor in, the defense and any
+related settlement negotiations. The Indemnified Contributor may
+participate in any such claim at its own expense.
+
+For example, a Contributor might include the Program in a commercial
+product offering, Product X. That Contributor is then a Commercial
+Contributor. If that Commercial Contributor then makes performance
+claims, or offers warranties related to Product X, those performance
+claims and warranties are such Commercial Contributor&apos;s responsibility
+alone. Under this section, the Commercial Contributor would have to
+defend claims against the other Contributors related to those performance
+claims and warranties, and if a court requires any other Contributor to
+pay any damages as a result, the Commercial Contributor must pay
+those damages.
+
+5. NO WARRANTY
+
+EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, AND TO THE EXTENT
+PERMITTED BY APPLICABLE LAW, THE PROGRAM IS PROVIDED ON AN &quot;AS IS&quot;
+BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, EITHER EXPRESS OR
+IMPLIED INCLUDING, WITHOUT LIMITATION, ANY WARRANTIES OR CONDITIONS OF
+TITLE, NON-INFRINGEMENT, MERCHANTABILITY OR FITNESS FOR A PARTICULAR
+PURPOSE. Each Recipient is solely responsible for determining the
+appropriateness of using and distributing the Program and assumes all
+risks associated with its exercise of rights under this Agreement,
+including but not limited to the risks and costs of program errors,
+compliance with applicable laws, damage to or loss of data, programs
+or equipment, and unavailability or interruption of operations.
+
+6. DISCLAIMER OF LIABILITY
+
+EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, AND TO THE EXTENT
+PERMITTED BY APPLICABLE LAW, NEITHER RECIPIENT NOR ANY CONTRIBUTORS
+SHALL HAVE ANY LIABILITY FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING WITHOUT LIMITATION LOST
+PROFITS), HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+ARISING IN ANY WAY OUT OF THE USE OR DISTRIBUTION OF THE PROGRAM OR THE
+EXERCISE OF ANY RIGHTS GRANTED HEREUNDER, EVEN IF ADVISED OF THE
+POSSIBILITY OF SUCH DAMAGES.
+
+7. GENERAL
+
+If any provision of this Agreement is invalid or unenforceable under
+applicable law, it shall not affect the validity or enforceability of
+the remainder of the terms of this Agreement, and without further
+action by the parties hereto, such provision shall be reformed to the
+minimum extent necessary to make such provision valid and enforceable.
+
+If Recipient institutes patent litigation against any entity
+(including a cross-claim or counterclaim in a lawsuit) alleging that the
+Program itself (excluding combinations of the Program with other software
+or hardware) infringes such Recipient&apos;s patent(s), then such Recipient&apos;s
+rights granted under Section 2(b) shall terminate as of the date such
+litigation is filed.
+
+All Recipient&apos;s rights under this Agreement shall terminate if it
+fails to comply with any of the material terms or conditions of this
+Agreement and does not cure such failure in a reasonable period of
+time after becoming aware of such noncompliance. If all Recipient&apos;s
+rights under this Agreement terminate, Recipient agrees to cease use
+and distribution of the Program as soon as reasonably practicable.
+However, Recipient&apos;s obligations under this Agreement and any licenses
+granted by Recipient relating to the Program shall continue and survive.
+
+Everyone is permitted to copy and distribute copies of this Agreement,
+but in order to avoid inconsistency the Agreement is copyrighted and
+may only be modified in the following manner. The Agreement Steward
+reserves the right to publish new versions (including revisions) of
+this Agreement from time to time. No one other than the Agreement
+Steward has the right to modify this Agreement. The Eclipse Foundation
+is the initial Agreement Steward. The Eclipse Foundation may assign the
+responsibility to serve as the Agreement Steward to a suitable separate
+entity. Each new version of the Agreement will be given a distinguishing
+version number. The Program (including Contributions) may always be
+Distributed subject to the version of the Agreement under which it was
+received. In addition, after a new version of the Agreement is published,
+Contributor may elect to Distribute the Program (including its
+Contributions) under the new version.
+
+Except as expressly stated in Sections 2(a) and 2(b) above, Recipient
+receives no rights or licenses to the intellectual property of any
+Contributor under this Agreement, whether expressly, by implication,
+estoppel or otherwise. All rights in the Program not expressly granted
+under this Agreement are reserved. Nothing in this Agreement is intended
+to be enforceable by any entity that is not a Contributor or Recipient.
+No third-party beneficiary rights are created under this Agreement.
+
+Exhibit A - Form of Secondary Licenses Notice
+
+&quot;This Source Code may also be made available under the following 
+Secondary Licenses when the conditions for such availability set forth 
+in the Eclipse Public License, v. 2.0 are satisfied: {name license(s),
+version(s), and exceptions or additional permissions here}.&quot;
+
+  Simply including a copy of this Agreement, including this Exhibit A
+  is not sufficient to license the Source Code under Secondary Licenses.
+
+  If it is not possible or desirable to put the notice in a particular
+  file, then You may include the notice in a location (such as a LICENSE
+  file in a relevant directory) where a recipient would be likely to
+  look for such a notice.
+
+  You may add additional accurate notices of copyright ownership.
+         </text>
+   </license>
+
+   <plugins>
+      <plugin id="com.google.inject"/>
+      <plugin id="com.ibm.icu"/>
+      <plugin id="de.ovgu.featureide.fm.core"/>
+      <plugin id="de.ovgu.featureide.fm.ui"/>
+      <plugin id="javax.annotation"/>
+      <plugin id="javax.inject"/>
+      <plugin id="javax.servlet"/>
+      <plugin id="javax.xml"/>
+      <plugin id="org.antlr.runtime_3.1.b1"/>
+      <plugin id="org.apache.batik.constants"/>
+      <plugin id="org.apache.batik.css"/>
+      <plugin id="org.apache.batik.i18n"/>
+      <plugin id="org.apache.batik.util"/>
+      <plugin id="org.apache.commons.io"/>
+      <plugin id="org.apache.commons.jxpath"/>
+      <plugin id="org.apache.commons.logging"/>
+      <plugin id="org.apache.felix.gogo.runtime"/>
+      <plugin id="org.apache.felix.scr"/>
+      <plugin id="org.apache.felix.scr.source"/>
+      <plugin id="org.apache.xmlgraphics"/>
+      <plugin id="org.eclipse.ant.core"/>
+      <plugin id="org.eclipse.compare"/>
+      <plugin id="org.eclipse.compare.core"/>
+      <plugin id="org.eclipse.core.commands"/>
+      <plugin id="org.eclipse.core.contenttype"/>
+      <plugin id="org.eclipse.core.databinding"/>
+      <plugin id="org.eclipse.core.databinding.observable"/>
+      <plugin id="org.eclipse.core.databinding.property"/>
+      <plugin id="org.eclipse.core.expressions"/>
+      <plugin id="org.eclipse.core.filebuffers"/>
+      <plugin id="org.eclipse.core.filesystem"/>
+      <plugin id="org.eclipse.core.filesystem.linux.x86_64" fragment="true"/>
+      <plugin id="org.eclipse.core.jobs"/>
+      <plugin id="org.eclipse.core.net"/>
+      <plugin id="org.eclipse.core.net.linux.x86_64" fragment="true"/>
+      <plugin id="org.eclipse.core.resources"/>
+      <plugin id="org.eclipse.core.runtime"/>
+      <plugin id="org.eclipse.core.variables"/>
+      <plugin id="org.eclipse.debug.core"/>
+      <plugin id="org.eclipse.debug.ui"/>
+      <plugin id="org.eclipse.draw2d"/>
+      <plugin id="org.eclipse.e4.core.commands"/>
+      <plugin id="org.eclipse.e4.core.contexts"/>
+      <plugin id="org.eclipse.e4.core.di"/>
+      <plugin id="org.eclipse.e4.core.di.annotations"/>
+      <plugin id="org.eclipse.e4.core.di.extensions"/>
+      <plugin id="org.eclipse.e4.core.di.extensions.supplier"/>
+      <plugin id="org.eclipse.e4.core.services"/>
+      <plugin id="org.eclipse.e4.emf.xpath"/>
+      <plugin id="org.eclipse.e4.ui.bindings"/>
+      <plugin id="org.eclipse.e4.ui.css.core"/>
+      <plugin id="org.eclipse.e4.ui.css.swt"/>
+      <plugin id="org.eclipse.e4.ui.css.swt.theme"/>
+      <plugin id="org.eclipse.e4.ui.di"/>
+      <plugin id="org.eclipse.e4.ui.model.workbench"/>
+      <plugin id="org.eclipse.e4.ui.services"/>
+      <plugin id="org.eclipse.e4.ui.swt.gtk" fragment="true"/>
+      <plugin id="org.eclipse.e4.ui.widgets"/>
+      <plugin id="org.eclipse.e4.ui.workbench"/>
+      <plugin id="org.eclipse.e4.ui.workbench.addons.swt"/>
+      <plugin id="org.eclipse.e4.ui.workbench.renderers.swt"/>
+      <plugin id="org.eclipse.e4.ui.workbench.renderers.swt.cocoa" fragment="true"/>
+      <plugin id="org.eclipse.e4.ui.workbench.swt"/>
+      <plugin id="org.eclipse.e4.ui.workbench3"/>
+      <plugin id="org.eclipse.emf"/>
+      <plugin id="org.eclipse.emf.codegen"/>
+      <plugin id="org.eclipse.emf.codegen.ecore"/>
+      <plugin id="org.eclipse.emf.common"/>
+      <plugin id="org.eclipse.emf.common.ui"/>
+      <plugin id="org.eclipse.emf.ecore"/>
+      <plugin id="org.eclipse.emf.ecore.change"/>
+      <plugin id="org.eclipse.emf.ecore.xmi"/>
+      <plugin id="org.eclipse.emf.edit"/>
+      <plugin id="org.eclipse.emf.edit.ui"/>
+      <plugin id="org.eclipse.emf.transaction"/>
+      <plugin id="org.eclipse.emf.validation"/>
+      <plugin id="org.eclipse.emf.workspace"/>
+      <plugin id="org.eclipse.epsilon.common"/>
+      <plugin id="org.eclipse.epsilon.common.dt"/>
+      <plugin id="org.eclipse.epsilon.dependencies"/>
+      <plugin id="org.eclipse.epsilon.emc.emf"/>
+      <plugin id="org.eclipse.epsilon.eol.dt"/>
+      <plugin id="org.eclipse.epsilon.eol.engine"/>
+      <plugin id="org.eclipse.epsilon.erl.engine"/>
+      <plugin id="org.eclipse.epsilon.etl.engine"/>
+      <plugin id="org.eclipse.equinox.app"/>
+      <plugin id="org.eclipse.equinox.bidi"/>
+      <plugin id="org.eclipse.equinox.common"/>
+      <plugin id="org.eclipse.equinox.ds"/>
+      <plugin id="org.eclipse.equinox.event"/>
+      <plugin id="org.eclipse.equinox.p2.core"/>
+      <plugin id="org.eclipse.equinox.p2.engine"/>
+      <plugin id="org.eclipse.equinox.p2.metadata"/>
+      <plugin id="org.eclipse.equinox.p2.metadata.repository"/>
+      <plugin id="org.eclipse.equinox.p2.repository"/>
+      <plugin id="org.eclipse.equinox.preferences"/>
+      <plugin id="org.eclipse.equinox.region" fragment="true"/>
+      <plugin id="org.eclipse.equinox.registry"/>
+      <plugin id="org.eclipse.equinox.security"/>
+      <plugin id="org.eclipse.equinox.security.linux.x86_64" fragment="true"/>
+      <plugin id="org.eclipse.equinox.security.macosx" fragment="true"/>
+      <plugin id="org.eclipse.equinox.security.win32.x86" fragment="true"/>
+      <plugin id="org.eclipse.equinox.security.win32.x86_64" fragment="true"/>
+      <plugin id="org.eclipse.equinox.supplement"/>
+      <plugin id="org.eclipse.equinox.transforms.hook" fragment="true"/>
+      <plugin id="org.eclipse.equinox.weaving.hook" fragment="true"/>
+      <plugin id="org.eclipse.gef"/>
+      <plugin id="org.eclipse.graphiti"/>
+      <plugin id="org.eclipse.graphiti.mm"/>
+      <plugin id="org.eclipse.graphiti.pattern"/>
+      <plugin id="org.eclipse.graphiti.ui"/>
+      <plugin id="org.eclipse.help"/>
+      <plugin id="org.eclipse.jdt.compiler.apt" fragment="true"/>
+      <plugin id="org.eclipse.jdt.compiler.tool" fragment="true"/>
+      <plugin id="org.eclipse.jdt.core"/>
+      <plugin id="org.eclipse.jdt.debug"/>
+      <plugin id="org.eclipse.jdt.launching"/>
+      <plugin id="org.eclipse.jface"/>
+      <plugin id="org.eclipse.jface.databinding"/>
+      <plugin id="org.eclipse.jface.text"/>
+      <plugin id="org.eclipse.ltk.core.refactoring"/>
+      <plugin id="org.eclipse.ltk.ui.refactoring"/>
+      <plugin id="org.eclipse.osgi"/>
+      <plugin id="org.eclipse.osgi.compatibility.state" fragment="true"/>
+      <plugin id="org.eclipse.osgi.services"/>
+      <plugin id="org.eclipse.osgi.util"/>
+      <plugin id="org.eclipse.pde.ds.lib"/>
+      <plugin id="org.eclipse.swt"/>
+      <plugin id="org.eclipse.swt.cocoa.macosx.x86_64" fragment="true"/>
+      <plugin id="org.eclipse.swt.gtk.linux.ppc64" fragment="true"/>
+      <plugin id="org.eclipse.swt.gtk.linux.ppc64le" fragment="true"/>
+      <plugin id="org.eclipse.swt.gtk.linux.x86" fragment="true"/>
+      <plugin id="org.eclipse.swt.gtk.linux.x86_64" fragment="true"/>
+      <plugin id="org.eclipse.swt.win32.win32.x86" fragment="true"/>
+      <plugin id="org.eclipse.swt.win32.win32.x86_64" fragment="true"/>
+      <plugin id="org.eclipse.team.core"/>
+      <plugin id="org.eclipse.team.ui"/>
+      <plugin id="org.eclipse.text"/>
+      <plugin id="org.eclipse.ui"/>
+      <plugin id="org.eclipse.ui.cocoa" fragment="true"/>
+      <plugin id="org.eclipse.ui.console"/>
+      <plugin id="org.eclipse.ui.editors"/>
+      <plugin id="org.eclipse.ui.forms"/>
+      <plugin id="org.eclipse.ui.genericeditor"/>
+      <plugin id="org.eclipse.ui.ide"/>
+      <plugin id="org.eclipse.ui.ide.application"/>
+      <plugin id="org.eclipse.ui.navigator"/>
+      <plugin id="org.eclipse.ui.navigator.resources"/>
+      <plugin id="org.eclipse.ui.views"/>
+      <plugin id="org.eclipse.ui.views.properties.tabbed"/>
+      <plugin id="org.eclipse.ui.workbench"/>
+      <plugin id="org.eclipse.ui.workbench.texteditor"/>
+      <plugin id="org.eclipse.xsd"/>
+      <plugin id="org.framed.iorm.editpolicymodel"/>
+      <plugin id="org.framed.iorm.featuremodel"/>
+      <plugin id="org.framed.iorm.model"/>
+      <plugin id="org.framed.iorm.model.edit"/>
+      <plugin id="org.framed.iorm.transformation"/>
+      <plugin id="org.framed.iorm.ui"/>
+      <plugin id="org.rosi.crom.metamodel"/>
+      <plugin id="org.tukaani.xz"/>
+      <plugin id="org.w3c.css.sac"/>
+      <plugin id="org.w3c.dom.events"/>
+      <plugin id="org.w3c.dom.smil"/>
+      <plugin id="org.w3c.dom.svg"/>
+   </plugins>
+
+   <configurations>
+      <plugin id="org.eclipse.core.runtime" autoStart="true" startLevel="0" />
+      <plugin id="org.eclipse.equinox.common" autoStart="true" startLevel="2" />
+      <plugin id="org.eclipse.equinox.ds" autoStart="true" startLevel="2" />
+      <plugin id="org.eclipse.equinox.event" autoStart="true" startLevel="2" />
+      <plugin id="org.eclipse.equinox.simpleconfigurator" autoStart="true" startLevel="1" />
+      <plugin id="org.framed.iorm.ui" autoStart="true" startLevel="3" />
+   </configurations>
+
+   <preferencesInfo>
+      <targetfile overwrite="false"/>
+   </preferencesInfo>
+
+   <cssInfo>
+   </cssInfo>
+
+</product>
diff --git a/org.framed.iorm.ui/icons/icon_role_model_project_wizard.icns b/org.framed.iorm.ui/icons/icon_role_model_project_wizard.icns
new file mode 100644
index 0000000000000000000000000000000000000000..df8eb63f68ef29aa21e85729dc162e6ae7215052
GIT binary patch
literal 3377
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
K7!83D8v+3QN_0H{

literal 0
HcmV?d00001

diff --git a/org.framed.iorm.ui/icons/icon_role_model_wizard.ico b/org.framed.iorm.ui/icons/icon_role_model_wizard.ico
new file mode 100644
index 0000000000000000000000000000000000000000..93a82140044e913fd6a49ed434c96d69e9457a3e
GIT binary patch
literal 12862
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

literal 0
HcmV?d00001

diff --git a/org.framed.iorm.ui/icons/icon_role_model_wizard.xpm b/org.framed.iorm.ui/icons/icon_role_model_wizard.xpm
new file mode 100644
index 00000000..9ab15aba
--- /dev/null
+++ b/org.framed.iorm.ui/icons/icon_role_model_wizard.xpm
@@ -0,0 +1,724 @@
+/* XPM */
+static char * icon_role_model_wizard_xpm[] = {
+"64 64 657 2",
+"  	c #FFFFFF",
+". 	c #FBFBFB",
+"+ 	c #CEDEDA",
+"@ 	c #C9DBD7",
+"# 	c #D9E4E0",
+"$ 	c #ECF0ED",
+"% 	c #FDFDFD",
+"& 	c #C2D8D6",
+"* 	c #9FD0DC",
+"= 	c #A1D0DB",
+"- 	c #AED2D6",
+"; 	c #BDD6D5",
+"> 	c #CEDDDA",
+", 	c #E1E9E4",
+"' 	c #F3F6F3",
+") 	c #A8D1D7",
+"! 	c #A5D0D8",
+"~ 	c #B3D3D5",
+"{ 	c #D3E1DC",
+"] 	c #EAEFEB",
+"^ 	c #FEFDFE",
+"/ 	c #A1D0DC",
+"( 	c #A7D0D8",
+"_ 	c #C0D7D5",
+": 	c #E1E9E5",
+"< 	c #F4F5F4",
+"[ 	c #AFD2D5",
+"} 	c #E7EDEA",
+"| 	c #E7EDE9",
+"1 	c #D8E4DF",
+"2 	c #DDE7E1",
+"3 	c #A0D0D7",
+"4 	c #ACB7B0",
+"5 	c #A1ABA8",
+"6 	c #9DA8A6",
+"7 	c #9DA7A5",
+"8 	c #9FAAA8",
+"9 	c #A7B0AA",
+"0 	c #AABEBC",
+"a 	c #A0D0DB",
+"b 	c #D6E2DE",
+"c 	c #FCF9F5",
+"d 	c #F9F1E6",
+"e 	c #FAF4EC",
+"f 	c #D3E0DC",
+"g 	c #AEC3BE",
+"h 	c #BFC5BA",
+"i 	c #DDDCD1",
+"j 	c #E8E2D6",
+"k 	c #EAE2D6",
+"l 	c #E1DED2",
+"m 	c #C4C5B9",
+"n 	c #A9B2AC",
+"o 	c #AAB4AD",
+"p 	c #DFE7E3",
+"q 	c #FFFEFE",
+"r 	c #FAF5ED",
+"s 	c #F5E9D7",
+"t 	c #F0DEC3",
+"u 	c #EBD4B1",
+"v 	c #E9CFA9",
+"w 	c #FBF5ED",
+"x 	c #CADBD7",
+"y 	c #B0C3BC",
+"z 	c #BED7D5",
+"A 	c #F9FBFA",
+"B 	c #FEFFFE",
+"C 	c #BFD7D5",
+"D 	c #AAD1D6",
+"E 	c #A4D0D9",
+"F 	c #F6EBDC",
+"G 	c #F0DDC3",
+"H 	c #EAD1AD",
+"I 	c #F5EADA",
+"J 	c #C0D7D4",
+"K 	c #85BEC8",
+"L 	c #B0C1B8",
+"M 	c #BDD7D6",
+"N 	c #EBF0ED",
+"O 	c #B0D2D6",
+"P 	c #BAD4D5",
+"Q 	c #FEFCFA",
+"R 	c #EEDABC",
+"S 	c #F2E3CD",
+"T 	c #BBCDC6",
+"U 	c #78BFD0",
+"V 	c #91BDC1",
+"W 	c #B0C2BB",
+"X 	c #A6D0D8",
+"Y 	c #FAFBF9",
+"Z 	c #D1DFDB",
+"` 	c #EDF0ED",
+" .	c #FDFAF6",
+"..	c #F3E5D0",
+"+.	c #EAD2AE",
+"@.	c #E6CBAB",
+"#.	c #CEC1A8",
+"$.	c #EFDCC0",
+"%.	c #B8C6BA",
+"&.	c #A4BCB5",
+"*.	c #A9C4C3",
+"=.	c #9ED0DB",
+"-.	c #F6ECDE",
+";.	c #A3ADA7",
+">.	c #B3C0B6",
+",.	c #E3EBE8",
+"'.	c #ACC6C4",
+").	c #A3CFD6",
+"!.	c #A7C7C9",
+"~.	c #AAD1D7",
+"{.	c #F3E4CF",
+"].	c #ADB3A9",
+"^.	c #B2B4A8",
+"/.	c #FDFBF8",
+"(.	c #AEBEB4",
+"_.	c #A5BCB5",
+":.	c #F5F8F7",
+"<.	c #EBF0EC",
+"[.	c #B1C1B7",
+"}.	c #79BFCF",
+"|.	c #80BECA",
+"1.	c #A6BDB5",
+"2.	c #ACC8C6",
+"3.	c #F1F4F2",
+"4.	c #F4E8D6",
+"5.	c #E9CFAA",
+"6.	c #EFEADE",
+"7.	c #9DA7A7",
+"8.	c #CBC0A9",
+"9.	c #F9F3E9",
+"0.	c #ABBDB4",
+"a.	c #B6CCC7",
+"b.	c #81BECA",
+"c.	c #98BDBC",
+"d.	c #B0C1B7",
+"e.	c #A1D0DA",
+"f.	c #A2D0DA",
+"g.	c #E6EDE8",
+"h.	c #DDE7E2",
+"i.	c #E9D0AA",
+"j.	c #F9F1E7",
+"k.	c #C7C7BB",
+"l.	c #9DA6A5",
+"m.	c #C5BDA7",
+"n.	c #F6EADA",
+"o.	c #EFF4F0",
+"p.	c #A9BDB4",
+"q.	c #A2BCB6",
+"r.	c #D1DED9",
+"s.	c #9CBCB8",
+"t.	c #85BEC7",
+"u.	c #A8BDB5",
+"v.	c #A6BAB3",
+"w.	c #9CB4B2",
+"x.	c #ABB9B0",
+"y.	c #DBE5E1",
+"z.	c #D2E0DC",
+"A.	c #EFDCC1",
+"B.	c #F0DEC4",
+"C.	c #C4C2B5",
+"D.	c #9DA5A5",
+"E.	c #A9AFA7",
+"F.	c #D5C6AA",
+"G.	c #E7CEAA",
+"H.	c #F2E4CE",
+"I.	c #EAEFED",
+"J.	c #A6BCB5",
+"K.	c #9DBCB9",
+"L.	c #B0C0B7",
+"M.	c #7CBCCB",
+"N.	c #97ADAF",
+"O.	c #AEBBB4",
+"P.	c #C8DBD7",
+"Q.	c #FCF9F4",
+"R.	c #F8EFE3",
+"S.	c #E2E3D9",
+"T.	c #A5AFA9",
+"U.	c #A3ABA7",
+"V.	c #B9B4A1",
+"W.	c #D4BB9E",
+"X.	c #D8C2A4",
+"Y.	c #D8C7A9",
+"Z.	c #F0DFC5",
+"`.	c #ECF0EE",
+" +	c #A5BCB4",
+".+	c #81BFCA",
+"++	c #7DBFCC",
+"@+	c #93BDBE",
+"#+	c #ADBDB4",
+"$+	c #AEC4BE",
+"%+	c #DAC7A9",
+"&+	c #DAC3A5",
+"*+	c #DAC2A4",
+"=+	c #D8C2A5",
+"-+	c #D9C1A3",
+";+	c #D9C0A2",
+">+	c #DBBF9E",
+",+	c #DEBD9A",
+"'+	c #E0BB96",
+")+	c #E5B991",
+"!+	c #DFBC99",
+"~+	c #DECBAC",
+"{+	c #F6EBDB",
+"]+	c #FFFFFE",
+"^+	c #FEFEFD",
+"/+	c #E5E2D6",
+"(+	c #B5B8AD",
+"_+	c #A2ADA7",
+":+	c #9CA6A5",
+"<+	c #9EA7A6",
+"[+	c #E7B68E",
+"}+	c #E1D1B7",
+"|+	c #F8F9F6",
+"1+	c #A6B6AF",
+"2+	c #A6BDB4",
+"3+	c #ADC6C3",
+"4+	c #F1F5F2",
+"5+	c #F0DFC7",
+"6+	c #E9B88D",
+"7+	c #EBB78A",
+"8+	c #CBB397",
+"9+	c #A6ACA6",
+"0+	c #A4ABA6",
+"a+	c #B6B09F",
+"b+	c #DABF9F",
+"c+	c #DECDB3",
+"d+	c #F2E4D0",
+"e+	c #F4E7D3",
+"f+	c #EAD9BE",
+"g+	c #DBC9AD",
+"h+	c #E1BB96",
+"i+	c #D9C6AA",
+"j+	c #EEEEEE",
+"k+	c #A6B1AB",
+"l+	c #78BFCF",
+"m+	c #7CBFCD",
+"n+	c #AFBEB4",
+"o+	c #7EBECC",
+"p+	c #98BCBB",
+"q+	c #AEC5BF",
+"r+	c #ADD1D5",
+"s+	c #E5D6BC",
+"t+	c #E8B789",
+"u+	c #CBB79E",
+"v+	c #BCB9A7",
+"w+	c #9FA9A7",
+"x+	c #AAAEA4",
+"y+	c #E9B78B",
+"z+	c #E6B98F",
+"A+	c #EAB88B",
+"B+	c #D8C2A3",
+"C+	c #DFDFDF",
+"D+	c #ACB1A6",
+"E+	c #84B6C2",
+"F+	c #A4CFD6",
+"G+	c #ADBEB4",
+"H+	c #C8DAD6",
+"I+	c #DDD1B8",
+"J+	c #E1BA95",
+"K+	c #DBC7AC",
+"L+	c #9EA9A7",
+"M+	c #D9B391",
+"N+	c #EBB789",
+"O+	c #ECB788",
+"P+	c #EDB687",
+"Q+	c #EEB585",
+"R+	c #EFB583",
+"S+	c #EFB482",
+"T+	c #F0B481",
+"U+	c #F1B480",
+"V+	c #F2B37F",
+"W+	c #FEFDFB",
+"X+	c #7D7C77",
+"Y+	c #97AAAD",
+"Z+	c #9AA8A5",
+"`+	c #B3BEB5",
+" @	c #ADBEB3",
+".@	c #EEF2F0",
+"+@	c #CCC5B2",
+"@@	c #EEB584",
+"#@	c #EFB582",
+"$@	c #EAB78A",
+"%@	c #C6B89F",
+"&@	c #D0B495",
+"*@	c #F2B37E",
+"=@	c #F3B27C",
+"-@	c #E1BC98",
+";@	c #FDFBF9",
+">@	c #4F4F50",
+",@	c #A7AEA7",
+"'@	c #86B5BF",
+")@	c #7EBBC9",
+"!@	c #8BB1B9",
+"~@	c #9DAFAD",
+"{@	c #C7D7D0",
+"]@	c #D7DEDB",
+"^@	c #9ABCBB",
+"/@	c #7DBECC",
+"(@	c #C0CFC7",
+"_@	c #C0C0B3",
+":@	c #F0B380",
+"<@	c #F1B380",
+"[@	c #DCC09E",
+"}@	c #FEFDFC",
+"|@	c #737470",
+"1@	c #9BA8A8",
+"2@	c #7DBCCB",
+"3@	c #A7B7AF",
+"4@	c #A0D0DA",
+"5@	c #B9C9C0",
+"6@	c #9EBCB9",
+"7@	c #B0BEB4",
+"8@	c #F4F5F5",
+"9@	c #E8DFCF",
+"0@	c #ABADA3",
+"a@	c #F3B27D",
+"b@	c #F2B27F",
+"c@	c #ECB383",
+"d@	c #E7B485",
+"e@	c #F2B37D",
+"f@	c #DDCEB4",
+"g@	c #C2C6BB",
+"h@	c #98A8A9",
+"i@	c #7ABECE",
+"j@	c #7ABFCF",
+"k@	c #7EBECB",
+"l@	c #9DBCB8",
+"m@	c #E0E7E2",
+"n@	c #FEFCF9",
+"o@	c #A2ABA8",
+"p@	c #EAB483",
+"q@	c #CCB497",
+"r@	c #9EA9A6",
+"s@	c #9DA4A3",
+"t@	c #9EA8A6",
+"u@	c #E2B387",
+"v@	c #E9B78A",
+"w@	c #F7EDE2",
+"x@	c #F0F0F0",
+"y@	c #B7BDB1",
+"z@	c #97A8AB",
+"A@	c #7BBDCB",
+"B@	c #95BCBD",
+"C@	c #CFDBD4",
+"D@	c #BABDAF",
+"E@	c #ACADA3",
+"F@	c #F2B27D",
+"G@	c #D9C3A3",
+"H@	c #B4B6A8",
+"I@	c #A3ACA6",
+"J@	c #F3B37C",
+"K@	c #F1F1F1",
+"L@	c #BCC1B5",
+"M@	c #9AA8A8",
+"N@	c #82B7C4",
+"O@	c #97BCBC",
+"P@	c #D6DAD3",
+"Q@	c #FBF8F5",
+"R@	c #C9B196",
+"S@	c #E1BA94",
+"T@	c #A5ACA7",
+"U@	c #E9B285",
+"V@	c #F2F2F2",
+"W@	c #D2D4CC",
+"X@	c #9DAAA9",
+"Y@	c #92ABB0",
+"Z@	c #80B9C6",
+"`@	c #79BFD0",
+" #	c #83B7C3",
+".#	c #A7B6AF",
+"+#	c #D2D5CE",
+"@#	c #D5D7CD",
+"##	c #9CA7A6",
+"$#	c #D0B192",
+"%#	c #F2B27C",
+"&#	c #E4B48A",
+"*#	c #ECB382",
+"=#	c #E7B88D",
+"-#	c #F0E3D0",
+";#	c #F3F3F3",
+">#	c #FAF9F7",
+",#	c #BBBDB2",
+"'#	c #8CB0B7",
+")#	c #82B7C3",
+"!#	c #7FB9C7",
+"~#	c #7DBBC9",
+"{#	c #91B0B4",
+"]#	c #A2B0AB",
+"^#	c #B4B7AA",
+"/#	c #595757",
+"(#	c #959596",
+"_#	c #CBCCC3",
+":#	c #C3B098",
+"<#	c #E7B98E",
+"[#	c #E4D7BF",
+"}#	c #D6D6CC",
+"|#	c #AFB5AB",
+"1#	c #A4ACA8",
+"2#	c #A0AAA7",
+"3#	c #9FAAA7",
+"4#	c #A0ACA9",
+"5#	c #A7AEA8",
+"6#	c #B6BBB1",
+"7#	c #DFE0D8",
+"8#	c #CBCBCC",
+"9#	c #656566",
+"0#	c #DCD8CB",
+"a#	c #A0ABA7",
+"b#	c #A5ACA5",
+"c#	c #DDB289",
+"d#	c #E4B287",
+"e#	c #C8B69E",
+"f#	c #E4DBC4",
+"g#	c #F4F4F4",
+"h#	c #F9F9F9",
+"i#	c #505051",
+"j#	c #EEEEEF",
+"k#	c #FAF6F1",
+"l#	c #BBBCAE",
+"m#	c #B4AF9F",
+"n#	c #BAB19C",
+"o#	c #BAB09C",
+"p#	c #B5AF9E",
+"q#	c #AEAEA2",
+"r#	c #A8AFA7",
+"s#	c #B6B7AA",
+"t#	c #F7F0E7",
+"u#	c #FDFAF7",
+"v#	c #F1E1C9",
+"w#	c #F1E0C7",
+"x#	c #F5E9D8",
+"y#	c #F5F5F5",
+"z#	c #606061",
+"A#	c #D7D7D7",
+"B#	c #FAF7F2",
+"C#	c #CACABD",
+"D#	c #ACB3AA",
+"E#	c #A3ACA8",
+"F#	c #A2ADA8",
+"G#	c #A4ADA8",
+"H#	c #B2B6AB",
+"I#	c #D5D0C0",
+"J#	c #FBF6EE",
+"K#	c #F5E8D7",
+"L#	c #E4CFA6",
+"M#	c #DBC8AA",
+"N#	c #FCF8F2",
+"O#	c #727272",
+"P#	c #D1D1D1",
+"Q#	c #F0DFC6",
+"R#	c #A4AEA8",
+"S#	c #9EA2A1",
+"T#	c #C9C1A9",
+"U#	c #FAF4EB",
+"V#	c #666667",
+"W#	c #CFCFCF",
+"X#	c #ECE0CA",
+"Y#	c #C1BBA9",
+"Z#	c #F7EFE2",
+"`#	c #B6BAAE",
+" $	c #B8B8A7",
+".$	c #ECD5B4",
+"+$	c #FEFEFE",
+"@$	c #575758",
+"#$	c #E5E5E6",
+"$$	c #FBF5EE",
+"%$	c #9FA2A0",
+"&$	c #B9B7A8",
+"*$	c #EBD3B0",
+"=$	c #DADADB",
+"-$	c #555555",
+";$	c #C6C1AF",
+">$	c #A0A1A0",
+",$	c #A0A19F",
+"'$	c #B1B3A6",
+")$	c #E7CEA8",
+"!$	c #B8AB98",
+"~$	c #E6CDA9",
+"{$	c #FBF6EF",
+"]$	c #A7A7A8",
+"^$	c #7A7A7B",
+"/$	c #C9C9C9",
+"($	c #717172",
+"_$	c #A6ADA7",
+":$	c #9FA19F",
+"<$	c #E7CFA8",
+"[$	c #C4BDA8",
+"}$	c #A7AFA8",
+"|$	c #A8AFA8",
+"1$	c #BEBBA8",
+"2$	c #EEDBBE",
+"3$	c #F8F8F8",
+"4$	c #626263",
+"5$	c #B4B4B4",
+"6$	c #838384",
+"7$	c #615E5B",
+"8$	c #A4ACA7",
+"9$	c #E3CBAA",
+"0$	c #ABB1A8",
+"a$	c #9FABA8",
+"b$	c #E4CFA8",
+"c$	c #F8F0E5",
+"d$	c #AAAAAB",
+"e$	c #5B5B5C",
+"f$	c #F7F7F7",
+"g$	c #E9E9E9",
+"h$	c #686869",
+"i$	c #525253",
+"j$	c #A9A5A0",
+"k$	c #ABB1AA",
+"l$	c #9EA3A3",
+"m$	c #A1ABA7",
+"n$	c #E8CEA8",
+"o$	c #B6B0A7",
+"p$	c #565657",
+"q$	c #8D8C82",
+"r$	c #9EAAA7",
+"s$	c #A7AEA9",
+"t$	c #EDD7B8",
+"u$	c #D9D9D9",
+"v$	c #B4B4B5",
+"w$	c #636364",
+"x$	c #5D5D5E",
+"y$	c #D6D6D6",
+"z$	c #C0BCAE",
+"A$	c #AEB2A7",
+"B$	c #F7EDDF",
+"C$	c #DDDDDD",
+"D$	c #99958A",
+"E$	c #A5AEA8",
+"F$	c #F7EEE1",
+"G$	c #EFEFEF",
+"H$	c #EAEAEA",
+"I$	c #E6E6E6",
+"J$	c #B2B6AC",
+"K$	c #9FA2A1",
+"L$	c #EBD9BF",
+"M$	c #9EA3A2",
+"N$	c #C5BDA9",
+"O$	c #EDECEB",
+"P$	c #686868",
+"Q$	c #A59681",
+"R$	c #EFDBBF",
+"S$	c #D2D2D2",
+"T$	c #5E5E5F",
+"U$	c #BABABA",
+"V$	c #EAE9DF",
+"W$	c #9DA4A4",
+"X$	c #A3AEA7",
+"Y$	c #ACB2A8",
+"Z$	c #9EA2A2",
+"`$	c #ACB0A7",
+" %	c #DAC8AB",
+".%	c #E9D0AC",
+"+%	c #E4CEA7",
+"@%	c #BDBAA8",
+"#%	c #A5ADA8",
+"$%	c #CDC5AF",
+"%%	c #EBEBEB",
+"&%	c #9A9A9A",
+"*%	c #646465",
+"=%	c #FCFCFC",
+"-%	c #616162",
+";%	c #ABABAC",
+">%	c #BBBEB3",
+",%	c #9FA1A0",
+"'%	c #9EA3A1",
+")%	c #ADAD9F",
+"!%	c #F7F5F2",
+"~%	c #D4D4D4",
+"{%	c #E8E8E8",
+"]%	c #E5E5E5",
+"^%	c #DCDCDC",
+"/%	c #DADADA",
+"(%	c #BDBDBD",
+"_%	c #8C8C8C",
+":%	c #535354",
+"<%	c #848485",
+"[%	c #C8C8C9",
+"}%	c #5F5F60",
+"|%	c #FFFEFD",
+"1%	c #B3B8AD",
+"2%	c #9EA4A3",
+"3%	c #CFCFC5",
+"4%	c #6B6A69",
+"5%	c #676768",
+"6%	c #C1C1C1",
+"7%	c #939394",
+"8%	c #9B9B9B",
+"9%	c #C8C7BA",
+"0%	c #E7E7DD",
+"a%	c #A6A6A6",
+"b%	c #8A8A8A",
+"c%	c #69696A",
+"d%	c #C0C0C1",
+"e%	c #6E6E6F",
+"f%	c #C4C4C5",
+"g%	c #E6E1D8",
+"h%	c #C8C7B8",
+"i%	c #D0CFC0",
+"j%	c #E9E7E0",
+"k%	c #D3D3D3",
+"l%	c #79797A",
+"m%	c #CCCCCC",
+"n%	c #B8B8B8",
+"o%	c #515152",
+"p%	c #E1E1E1",
+"q%	c #8B8B8C",
+"r%	c #59595A",
+"s%	c #DEDEDE",
+"t%	c #545455",
+"u%	c #8E8E8F",
+"v%	c #6B6B6B",
+"w%	c #CFCFD0",
+"x%	c #BFBFBF",
+"y%	c #D0D0D0",
+"z%	c #8A8A8B",
+"A%	c #ADADAD",
+"B%	c #B7B7B7",
+"C%	c #7C7C7D",
+"D%	c #818181",
+"E%	c #696969",
+"F%	c #F9F9FA",
+"G%	c #7B7B7C",
+"H%	c #ACACAD",
+"I%	c #555556",
+"J%	c #E7E7E7",
+"K%	c #ABABAB",
+"L%	c #CDCDCD",
+"M%	c #EDEDED",
+"N%	c #B0B0B0",
+"O%	c #F6F6F6",
+"P%	c #6F6F70",
+"Q%	c #9A9A9B",
+"R%	c #585859",
+"S%	c #787878",
+"T%	c #767676",
+"U%	c #868687",
+"V%	c #878788",
+"W%	c #E3E3E4",
+"X%	c #B7B7B8",
+"Y%	c #DCDCDD",
+"Z%	c #858586",
+"`%	c #909091",
+" &	c #D1D1D2",
+".&	c #A7A7A7",
+"+&	c #ECECEC",
+"@&	c #6A6A6B",
+"#&	c #C6C6C7",
+"$&	c #5C5C5D",
+"%&	c #6D6D6E",
+"&&	c #7E7E7F",
+"*&	c #CBCBCB",
+"=&	c #C6C6C6",
+"-&	c #979798",
+";&	c #E4E4E4",
+">&	c #9D9D9E",
+"                                                                                                                                ",
+"      . + @ # $ %                                                                                                               ",
+"      & * * * * = - ; > , '                                                                                                     ",
+"      ) * * * * * * * * * * ! ~ & { ]                                                                                           ",
+"    ^ / * * * * * * * * * * * * * * * ( _ :                                                                                     ",
+"    < * * * * * * * * * * * * * * * * * * * [ }                                                                                 ",
+"    | * * * * * * * * * * * * * * * * * * * * = 1                                                                               ",
+"    2 * * * * * * * 3 4 5 6 7 7 8 9 0 * * * * * a b                                             c d e                           ",
+"    f * * * * * * * g h i j k l m n 5 o * * * * * / p                                 q r s t u v v v w                         ",
+"    x y * * * * * z A     B p C D * * * * * * * * * E '                         c F G H v v v v v v v I                         ",
+"    J K L * * * M       N O * * * * * * * * * * * * * P                   Q F R v v v v v v v v v v v S                         ",
+"    T U U V W X Y     Z = * * * * * * * * * * * * * * * `              ...+.v v @.#.v v v v v v v v v $.                        ",
+"    %.U U U &.@     + * * * * * * * * * * * * * *.=.* * &           -.H v v v v v ;.v v v v v v v v v u                         ",
+"    >.U U U &.,.  f '.).* * * * * * * * * * * * !.* * * ~.        {.v v v v v v H ].^.v v v v v v v v v /.                      ",
+"    (.U U U _.:.<.[.}.|.1.2.* * * * * * * * * X ) * * * * 3.    4.v v v v v v v 5.6.7.8.v v v v v v v v 9.                      ",
+"  Y 0.U U U &.B a.b.U U U }.c.d.e.* * * * * f.g.) * * * * h.  w i.v v v v v v v v j.k.l.m.v v v v v v v n.                      ",
+"  o.p.U U U q.r.s.U U U U U U U t.&.u.v.w.x.p y.* * * * * z.  A.v v v v v v v v v B.  C.D.E.F.G.v v v v H.                      ",
+"  I.J.U U U K.L.U U U U U U U U U U M.N.O.z P.= * * * * * f Q.v v v v v v v v v v v R.  S.T.l.U.V.W.X.Y.Z.                      ",
+"  `. +U U U .+++U U U U U U U U U U U @+#+$+=.* * * * * * p n.%+&+*+=+-+;+>+,+'+)+!+~+{+]+^+/+(+_+:+<+[+}+                      ",
+"  |+1+U U U U U U U U U U U U M.}.U U U U U K 2+3+* * * * 4+5+6+7+8+9+0+a+7+7+7+7+7+7+b+c+d+s e+f+g+h+7+i+                      ",
+"  j+k+l+U U U U U U U U U U m+n+o+U U U U U U U U p+q+* r+  s+7+7+t+u+v+w+x+7+7+7+7+7+7+7+y+z+z+A+7+7+7+B+                      ",
+"  C+D+E+U U U U U U U U U U #+F+|.U U U U U U U U U }.G+H+  I+7+7+7+7+J+K+L+M+7+7+N+O+P+P+Q+Q+R+S+T+U+V+!+W+                    ",
+"  C+X+Y+U U U U U U U U U c.Z+`+U U U U U U U U U U U  @.@  +@7+@@T+#@R+$@%@&@*@=@=@=@=@=@=@=@=@=@=@=@=@-@;@                    ",
+"  C+>@,@'@U U U U U )@!@~@{@]@^@U U U U U U U U U U /@(@    _@M+=@=@=@=@=@:@<@=@=@=@=@=@=@=@=@=@=@=@=@=@[@}@                    ",
+"  C+>@|@1@2@U U U U '@3@4@5@6@U U U U U U U U U U U 7@8@    9@0@a@=@=@=@=@=@=@=@=@b@c@d@b@=@=@=@=@=@=@e@f@                      ",
+"  C+>@>@g@h@i@U U U U j@k@U U U U U U U U U U U U l@m@      n@o@p@=@=@=@=@=@=@=@a@q@r@s@t@u@=@=@=@=@=@v@w@                      ",
+"  C+>@>@x@y@z@A@U U U U U U U U U U U U U U U U B@C@          D@E@=@=@=@=@=@=@=@=@F@@@G@H@I@J@=@=@=@*@c+                        ",
+"  C+>@>@K@  L@M@N@U U U U U U U U U U U U U U O@P@            Q@w+R@=@=@=@=@=@=@=@=@=@F@S@T@U@=@=@a@,+r                         ",
+"  C+>@>@V@    W@X@Y@Z@U U U U U U U U U `@ #.#+#                @###$#=@=@=@=@=@=@=@=@=@%#&#*#=@%#=#-#                          ",
+"  C+>@>@;#      >#,#t@h@'#)#!#~#~#!#'@{#]#^#/#(#                  _###:#F@=@=@=@=@=@=@=@=@=@=@*@<#[#q                           ",
+"  C+>@>@;#          ;@}#|#1#2#3#4#5#6#7#}@8#>@9#                    0#a#b#c#a@=@=@=@=@=@=@F@d#e#f#q                             ",
+"  C+>@>@g#                                h#i#>@j#                    k#l#L+t@0@m#n#o#p#q#r#s#t#  u#{+v#w#x#c                   ",
+"  C+>@>@y#                                  z#>@A#                        B#C#D#E#F#G#H#I#J#    K#H v L#M#v 5.B.N#              ",
+"  C+>@>@y#                                  O#>@P#                                          q Q#v v v R#S#T#v v H U#            ",
+"  C+>@>@y#                                  V#>@W#                                          X#Y#v v v Z#`# $v v v .$Q           ",
+"  C+>@>@g#                                +$@$>@#$                                        $$G#%$&$v *$  H.v v v v v S           ",
+"  C+>@>@;#                                =$>@-$+$                                      +$;$>$,$%$'$)$!$~$v v v v v i.{$        ",
+"  C+>@>@;#                                ]$>@^$                                    +$/$($_$,$,$,$:$E.<$v v [$}$|$1$v 2$        ",
+"  C+>@>@V@                              3$4$>@5$                                  ;#6$>@7$L+,$,$,$,$,$8$9$@.r#0$}$D.a$b$c$      ",
+"  C+>@>@K@                              d$>@e$f$                                g$h$>@i$j$6 ,$,$s@k$l$,$m$n$o$p$>@q$r$s$t$q     ",
+"  C+>@>@x@                            u$-$>@v$                                j+w$>@x$y$^+8 ,$,$z$  R#,$,$A$B$C$4$>@D$E$v F$    ",
+"  C+>@>@G$                          H$z#>@^$+$                              +$^$>@4$I$    J$,$K$L$U#E#,$,$M$N$x#O$P$Q$v v R$    ",
+"  C+>@>@j#                        S$T$>@w$j+                                U$>@-$C+      V$W$,$X$Y$%$,$,$,$Z$`$ %.%+%@%#%$%    ",
+"  C+>@>@j+                    %%&%i$>@*%I$                                =%-%>@;%          >%:$,$,$,$,$,$,$,$,$,%'%K$5 )%!%    ",
+"  C+>@>@~%{%{%{%{%{%]%^%/%(%_%:%>@>@<%V@                                  [%>@}%3$          |%1%K$,$,$,$,$,$,$,$2%E$3%4%>@(%    ",
+"  C+>@>@>@>@>@>@>@>@>@>@>@>@>@>@5%6%                                      7%>@8%              q 9%2#%$,$,$M$3#H#0%]+  a%>@b%    ",
+"  C+>@>@>@>@>@>@>@>@>@>@>@>@c%d%%                                         e%>@f%                  }@g%h%i%j%W+        k%>@c%    ",
+"  C+>@>@V@;#;#V@{%{%{%P#z#>@l%+$                                          e$>@=$                                      H$>@e$    ",
+"  C+>@>@                m%>@>@n%                                          o%>@p%                                      G$>@i$    ",
+"  C+>@i#                  q%>@r%j+                                        r%>@s%                                      H$>@t%    ",
+"  C+>@i$                  K@x$>@u%                                        v%>@w%                                      u$>@4$    ",
+"  C+>@:%                    x%>@>@y%                                      z%>@A%                                      B%>@C%    ",
+"  C+>@t%                      D%>@E%F%                                    v$>@($                                      G%>@H%    ",
+"  C+>@I%                      J%p$>@K%                                    K@:%>@L%                                  y$>@i$M%    ",
+"  C+>@@$                        N%>@I%I$                                    &%>@c%O%                              f$P%>@Q%      ",
+"  C+>@R%                        +$S%>@T%+$                                  y#w$>@U%=%                          +$V%>@*%O%      ",
+"  C+>@r%                          W%-$>@X%                                    Y%@$>@Z%O%                      3$`%>@:% &        ",
+"  C+>@e$                            .&>@r%+&                                    8#I%>@@&~%                  p%e%>@i$#&          ",
+"  C+>@$&                            . %&>@6$                                      /%z#>@i#&&x%x@      M%*&U%i#>@e$=&            ",
+"  C+>@x$                              u$o%>@#&                                      ;#`%i#>@>@i#e$e$p$>@>@>@>@V%j+              ",
+"  C+>@}%                                -&>@w$O%                                        ;&>&%&i#>@>@>@i$h$-&^%                  ",
+"  f$ &C+                                3$^%^%f$                                              ;#{%{%+&%                         ",
+"                                                                                                                                ",
+"                                                                                                                                "};
diff --git a/org.framed.iorm.ui/icons/icon_role_model_wizard_16.png b/org.framed.iorm.ui/icons/icon_role_model_wizard_16.png
new file mode 100644
index 0000000000000000000000000000000000000000..0245931a5954cc15cdd7dad2ff38a2c98bd105fe
GIT binary patch
literal 2703
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

literal 0
HcmV?d00001

diff --git a/org.framed.iorm.ui/icons/icon_role_model_wizard_32.png b/org.framed.iorm.ui/icons/icon_role_model_wizard_32.png
new file mode 100644
index 0000000000000000000000000000000000000000..49ff5fa1a2ecae3d4fc5f52e55a8a875b77c8d15
GIT binary patch
literal 8942
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

literal 0
HcmV?d00001

diff --git a/org.framed.iorm.ui/icons/splash.png b/org.framed.iorm.ui/icons/splash.png
new file mode 100644
index 0000000000000000000000000000000000000000..99e2a35c8befac296959c23f37213ad5c9674c31
GIT binary patch
literal 5347
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

literal 0
HcmV?d00001

diff --git a/org.framed.iorm.ui/plugin.xml b/org.framed.iorm.ui/plugin.xml
index 1bdcc103..f205d058 100644
--- a/org.framed.iorm.ui/plugin.xml
+++ b/org.framed.iorm.ui/plugin.xml
@@ -1,7 +1,8 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <?eclipse version="3.0"?>
 <plugin>
- 	<extension point="org.eclipse.graphiti.ui.diagramTypes">
+ 	<extension
+        point="org.eclipse.graphiti.ui.diagramTypes">
     	<diagramType
       		description="This is a Compartment Role Object Model Diagram."
      		id="CROM_Diagram"
@@ -47,7 +48,7 @@
        <wizard
              category="org.framed.iorm.ui.wizard_category"
              class="org.framed.iorm.ui.wizards.RoleModelWizard"
-             icon="icons/icon_role_model_wizard.png"
+             icon="icons/icon_role_model_wizard_16.png"
              id="org.framed.iorm.ui.model_wizard"
              name="Compartment Role Object Model">
        </wizard>
@@ -67,4 +68,52 @@
              id="org.framed.iorm.ui.imageProvider">
        </imageProvider>
     </extension>
+    <extension
+          id="framed"
+          point="org.eclipse.core.runtime.products">
+       <product
+             application="org.eclipse.ui.ide.workbench"
+             name="FRaMED Editor">
+          <property
+                name="appName"
+                value="FRaMED Editor">
+          </property>
+          <property
+                name="aboutImage"
+                value="icons/splash.png">
+          </property>
+          <property
+                name="aboutText"
+                value="The Full-fledged Role Modeling EDitor Software Product Line (FRaMED SPL) (Version 2.0) is the reimplementation of FRaMED allowing the graphical specification of Role-based Software Systems by means of compartments (aka. contexts), objects, roles, and relationships. Moreover, it supports a varity of constraints upon roles and relationships.&#x0A;&#x0A;Contributors:&#x0A;Kevin Ivo Kassin&#x0A;Christian Deussen&#x0A;Thomas Kühn">
+          </property>
+          <property
+                name="startupForegroundColor"
+                value="000000">
+          </property>
+          <property
+                name="startupMessageRect"
+                value="7,252,445,20">
+          </property>
+          <property
+                name="startupProgressRect"
+                value="5,275,445,15">
+          </property>
+          <property
+                name="preferenceCustomization"
+                value="plugin_customization.ini">
+          </property>
+       </product>
+    </extension>
+    <extension
+          point="org.eclipse.ui.perspectiveExtensions">
+       <perspectiveExtension
+             targetID="*">
+          <newWizardShortcut
+                id="org.framed.iorm.ui.project_wizard">
+          </newWizardShortcut>
+          <newWizardShortcut
+                id="org.framed.iorm.ui.model_wizard">
+          </newWizardShortcut>
+       </perspectiveExtension>
+    </extension>
 </plugin>
diff --git a/org.framed.iorm.ui/plugin_customization.ini b/org.framed.iorm.ui/plugin_customization.ini
new file mode 100644
index 00000000..333fab9d
--- /dev/null
+++ b/org.framed.iorm.ui/plugin_customization.ini
@@ -0,0 +1 @@
+org.eclipse.ui/SHOW_PROGRESS_ON_STARTUP = true
diff --git a/org.framed.iorm.ui/splash.bmp b/org.framed.iorm.ui/splash.bmp
new file mode 100644
index 0000000000000000000000000000000000000000..655f3448567562f6275ec8f4ffbff847f9605d21
GIT binary patch
literal 495122
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
JLtrF^008O-KD+<`

literal 0
HcmV?d00001

diff --git a/org.framed.iorm.ui/src/org/framed/iorm/ui/subeditors/FRaMEDFeatureEditor.java b/org.framed.iorm.ui/src/org/framed/iorm/ui/subeditors/FRaMEDFeatureEditor.java
index 796dd92d..3ba054aa 100644
--- a/org.framed.iorm.ui/src/org/framed/iorm/ui/subeditors/FRaMEDFeatureEditor.java
+++ b/org.framed.iorm.ui/src/org/framed/iorm/ui/subeditors/FRaMEDFeatureEditor.java
@@ -194,7 +194,7 @@ public class FRaMEDFeatureEditor extends EditorPart {
 	private IFeatureModel readFeatureModel() {
 		File featureModelFile = null;
 		try {
-			featureModelFile = new File(resolveURL(FileLocator.resolve(URL_TO_FEATUREMODEL)));
+			featureModelFile = new File(resolveURL(FileLocator.toFileURL(URL_TO_FEATUREMODEL)));
 		} catch (URISyntaxException | IOException e) {
 			e.printStackTrace();
 		}
-- 
GitLab