From 592208dcc865f9a97efb9f0d6edc3546676b48ec Mon Sep 17 00:00:00 2001
From: Fabian Brosig <fabian.brosig@uni-wuerzburg.de>
Date: Mon, 10 Dec 2012 09:05:50 +0000
Subject: [PATCH] removed old XText prototypes

git-svn-id: https://se1.informatik.uni-wuerzburg.de/usvn/svn/code/code/DMM/trunk@9455 9e42b895-fcda-4063-8a3b-11be15eb1bbd
---
 org.xtext.example.mydslTest.tests/.classpath  |     8 -
 org.xtext.example.mydslTest.tests/.project    |    28 -
 .../META-INF/MANIFEST.MF                      |    18 -
 .../build.properties                          |     4 -
 org.xtext.example.mydslTest.ui/.classpath     |     8 -
 org.xtext.example.mydslTest.ui/.project       |    28 -
 .../META-INF/MANIFEST.MF                      |    22 -
 .../build.properties                          |     5 -
 org.xtext.example.mydslTest.ui/plugin.xml     |   215 -
 org.xtext.example.mydslTest.ui/plugin.xml_gen |   258 -
 .../mydsl/ui/AbstractMyDslTestUiModule.java   |   127 -
 .../MyDslTestExecutableExtensionFactory.java  |    29 -
 .../AbstractMyDslTestProposalProvider.java    |   285 -
 .../contentassist/antlr/MyDslTestParser.java  |   237 -
 .../antlr/internal/InternalMyDslTest.g        | 11888 ------
 .../antlr/internal/InternalMyDslTest.tokens   |   133 -
 .../internal/InternalMyDslTestLexer.java      |  3362 --
 .../internal/InternalMyDslTestParser.java     | 31810 ----------------
 .../mydsl/ui/internal/MyDslTestActivator.java |    95 -
 .../example/mydsl/ui/MyDslTestUiModule.java   |    15 -
 .../MyDslTestProposalProvider.java            |    12 -
 .../MyDslTestDescriptionLabelProvider.java    |    27 -
 .../ui/labeling/MyDslTestLabelProvider.java   |    34 -
 .../outline/MyDslTestOutlineTreeProvider.java |    14 -
 .../quickfix/MyDslTestQuickfixProvider.java   |    19 -
 org.xtext.example.mydslTest/.classpath        |     9 -
 org.xtext.example.mydslTest/.project          |    34 -
 .../META-INF/MANIFEST.MF                      |    29 -
 org.xtext.example.mydslTest/build.properties  |     6 -
 .../mydsl/AbstractMyDslTestRuntimeModule.java |   147 -
 .../org/xtext/example/mydsl/MyDslTest.xmi     |  1083 -
 .../MyDslTestStandaloneSetupGenerated.java    |    40 -
 .../MyDslTestParsetreeConstructor.java        |  9535 -----
 .../MyDslTestAntlrTokenFileProvider.java      |    15 -
 .../mydsl/parser/antlr/MyDslTestParser.java   |    39 -
 .../parser/antlr/internal/InternalMyDslTest.g |  2875 --
 .../antlr/internal/InternalMyDslTest.tokens   |   133 -
 .../internal/InternalMyDslTestLexer.java      |  3362 --
 .../internal/InternalMyDslTestParser.java     |  7394 ----
 .../services/MyDslTestGrammarAccess.java      |  2762 --
 .../AbstractMyDslTestJavaValidator.java       |    21 -
 .../example/mydsl/GenerateMyDslTest.mwe2      |   122 -
 .../org/xtext/example/mydsl/MyDslTest.xtext   |   213 -
 .../example/mydsl/MyDslTestRuntimeModule.java |    11 -
 .../mydsl/MyDslTestStandaloneSetup.java       |    14 -
 .../example/mydsl/PrimitiveTypeConverter.java |    33 -
 .../mydsl/formatting/MyDslTestFormatter.java  |    39 -
 .../mydsl/scoping/MyDslTestScopeProvider.java |    17 -
 .../validation/MyDslTestJavaValidator.java    |    13 -
 49 files changed, 76627 deletions(-)
 delete mode 100644 org.xtext.example.mydslTest.tests/.classpath
 delete mode 100644 org.xtext.example.mydslTest.tests/.project
 delete mode 100644 org.xtext.example.mydslTest.tests/META-INF/MANIFEST.MF
 delete mode 100644 org.xtext.example.mydslTest.tests/build.properties
 delete mode 100644 org.xtext.example.mydslTest.ui/.classpath
 delete mode 100644 org.xtext.example.mydslTest.ui/.project
 delete mode 100644 org.xtext.example.mydslTest.ui/META-INF/MANIFEST.MF
 delete mode 100644 org.xtext.example.mydslTest.ui/build.properties
 delete mode 100644 org.xtext.example.mydslTest.ui/plugin.xml
 delete mode 100644 org.xtext.example.mydslTest.ui/plugin.xml_gen
 delete mode 100644 org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/AbstractMyDslTestUiModule.java
 delete mode 100644 org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/MyDslTestExecutableExtensionFactory.java
 delete mode 100644 org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/AbstractMyDslTestProposalProvider.java
 delete mode 100644 org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/MyDslTestParser.java
 delete mode 100644 org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g
 delete mode 100644 org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.tokens
 delete mode 100644 org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTestLexer.java
 delete mode 100644 org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTestParser.java
 delete mode 100644 org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/internal/MyDslTestActivator.java
 delete mode 100644 org.xtext.example.mydslTest.ui/src/org/xtext/example/mydsl/ui/MyDslTestUiModule.java
 delete mode 100644 org.xtext.example.mydslTest.ui/src/org/xtext/example/mydsl/ui/contentassist/MyDslTestProposalProvider.java
 delete mode 100644 org.xtext.example.mydslTest.ui/src/org/xtext/example/mydsl/ui/labeling/MyDslTestDescriptionLabelProvider.java
 delete mode 100644 org.xtext.example.mydslTest.ui/src/org/xtext/example/mydsl/ui/labeling/MyDslTestLabelProvider.java
 delete mode 100644 org.xtext.example.mydslTest.ui/src/org/xtext/example/mydsl/ui/outline/MyDslTestOutlineTreeProvider.java
 delete mode 100644 org.xtext.example.mydslTest.ui/src/org/xtext/example/mydsl/ui/quickfix/MyDslTestQuickfixProvider.java
 delete mode 100644 org.xtext.example.mydslTest/.classpath
 delete mode 100644 org.xtext.example.mydslTest/.project
 delete mode 100644 org.xtext.example.mydslTest/META-INF/MANIFEST.MF
 delete mode 100644 org.xtext.example.mydslTest/build.properties
 delete mode 100644 org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/AbstractMyDslTestRuntimeModule.java
 delete mode 100644 org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/MyDslTest.xmi
 delete mode 100644 org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/MyDslTestStandaloneSetupGenerated.java
 delete mode 100644 org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parseTreeConstruction/MyDslTestParsetreeConstructor.java
 delete mode 100644 org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/MyDslTestAntlrTokenFileProvider.java
 delete mode 100644 org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/MyDslTestParser.java
 delete mode 100644 org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g
 delete mode 100644 org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.tokens
 delete mode 100644 org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTestLexer.java
 delete mode 100644 org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTestParser.java
 delete mode 100644 org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/services/MyDslTestGrammarAccess.java
 delete mode 100644 org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/validation/AbstractMyDslTestJavaValidator.java
 delete mode 100644 org.xtext.example.mydslTest/src/org/xtext/example/mydsl/GenerateMyDslTest.mwe2
 delete mode 100644 org.xtext.example.mydslTest/src/org/xtext/example/mydsl/MyDslTest.xtext
 delete mode 100644 org.xtext.example.mydslTest/src/org/xtext/example/mydsl/MyDslTestRuntimeModule.java
 delete mode 100644 org.xtext.example.mydslTest/src/org/xtext/example/mydsl/MyDslTestStandaloneSetup.java
 delete mode 100644 org.xtext.example.mydslTest/src/org/xtext/example/mydsl/PrimitiveTypeConverter.java
 delete mode 100644 org.xtext.example.mydslTest/src/org/xtext/example/mydsl/formatting/MyDslTestFormatter.java
 delete mode 100644 org.xtext.example.mydslTest/src/org/xtext/example/mydsl/scoping/MyDslTestScopeProvider.java
 delete mode 100644 org.xtext.example.mydslTest/src/org/xtext/example/mydsl/validation/MyDslTestJavaValidator.java

diff --git a/org.xtext.example.mydslTest.tests/.classpath b/org.xtext.example.mydslTest.tests/.classpath
deleted file mode 100644
index e5fbd3dd..00000000
--- a/org.xtext.example.mydslTest.tests/.classpath
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
-	<classpathentry kind="src" path="src"/>
-	<classpathentry kind="src" path="src-gen"/>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/>
-	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
-	<classpathentry kind="output" path="bin"/>
-</classpath>
diff --git a/org.xtext.example.mydslTest.tests/.project b/org.xtext.example.mydslTest.tests/.project
deleted file mode 100644
index 5f6affe3..00000000
--- a/org.xtext.example.mydslTest.tests/.project
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
-	<name>org.xtext.example.mydslTest.tests</name>
-	<comment></comment>
-	<projects>
-	</projects>
-	<buildSpec>
-		<buildCommand>
-			<name>org.eclipse.jdt.core.javabuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-		<buildCommand>
-			<name>org.eclipse.pde.ManifestBuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-		<buildCommand>
-			<name>org.eclipse.pde.SchemaBuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-	</buildSpec>
-	<natures>
-		<nature>org.eclipse.jdt.core.javanature</nature>
-		<nature>org.eclipse.pde.PluginNature</nature>
-	</natures>
-</projectDescription>
diff --git a/org.xtext.example.mydslTest.tests/META-INF/MANIFEST.MF b/org.xtext.example.mydslTest.tests/META-INF/MANIFEST.MF
deleted file mode 100644
index 34eacd78..00000000
--- a/org.xtext.example.mydslTest.tests/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,18 +0,0 @@
-Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: org.xtext.example.mydslTest.tests
-Bundle-Vendor: My Company
-Bundle-Version: 1.0.0
-Bundle-SymbolicName: org.xtext.example.mydslTest.tests; singleton:=true
-Bundle-ActivationPolicy: lazy
-Require-Bundle: org.xtext.example.mydslTest,
- org.xtext.example.mydslTest.ui,
- org.eclipse.core.runtime,
- org.eclipse.xtext,
- org.eclipse.xtext.junit4,
- org.eclipse.xtext.ui.junit,
- org.junit4,
- org.eclipse.ui.workbench;resolution:=optional
-Import-Package: org.apache.log4j,
- org.apache.commons.logging
-Bundle-RequiredExecutionEnvironment: J2SE-1.5
diff --git a/org.xtext.example.mydslTest.tests/build.properties b/org.xtext.example.mydslTest.tests/build.properties
deleted file mode 100644
index 7ed56c2b..00000000
--- a/org.xtext.example.mydslTest.tests/build.properties
+++ /dev/null
@@ -1,4 +0,0 @@
-source.. = src/,\
-          src-gen/
-bin.includes = META-INF/,\
-               .
diff --git a/org.xtext.example.mydslTest.ui/.classpath b/org.xtext.example.mydslTest.ui/.classpath
deleted file mode 100644
index e5fbd3dd..00000000
--- a/org.xtext.example.mydslTest.ui/.classpath
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
-	<classpathentry kind="src" path="src"/>
-	<classpathentry kind="src" path="src-gen"/>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/>
-	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
-	<classpathentry kind="output" path="bin"/>
-</classpath>
diff --git a/org.xtext.example.mydslTest.ui/.project b/org.xtext.example.mydslTest.ui/.project
deleted file mode 100644
index 530ecb96..00000000
--- a/org.xtext.example.mydslTest.ui/.project
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
-	<name>org.xtext.example.mydslTest.ui</name>
-	<comment></comment>
-	<projects>
-	</projects>
-	<buildSpec>
-		<buildCommand>
-			<name>org.eclipse.jdt.core.javabuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-		<buildCommand>
-			<name>org.eclipse.pde.ManifestBuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-		<buildCommand>
-			<name>org.eclipse.pde.SchemaBuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-	</buildSpec>
-	<natures>
-		<nature>org.eclipse.jdt.core.javanature</nature>
-		<nature>org.eclipse.pde.PluginNature</nature>
-	</natures>
-</projectDescription>
diff --git a/org.xtext.example.mydslTest.ui/META-INF/MANIFEST.MF b/org.xtext.example.mydslTest.ui/META-INF/MANIFEST.MF
deleted file mode 100644
index d18c0ee7..00000000
--- a/org.xtext.example.mydslTest.ui/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,22 +0,0 @@
-Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: org.xtext.example.mydslTest.ui
-Bundle-Vendor: My Company
-Bundle-Version: 1.0.0
-Bundle-SymbolicName: org.xtext.example.mydslTest.ui; singleton:=true
-Bundle-ActivationPolicy: lazy
-Require-Bundle: org.xtext.example.mydslTest;visibility:=reexport,
- org.eclipse.xtext.ui,
- org.eclipse.ui.editors;bundle-version="3.5.0",
- org.eclipse.ui.ide;bundle-version="3.5.0",
- org.eclipse.xtext.ui.shared,
- org.eclipse.ui,
- org.antlr.runtime,
- org.eclipse.compare,
- org.eclipse.xtext.builder
-Import-Package: org.apache.log4j,
- org.apache.commons.logging
-Bundle-RequiredExecutionEnvironment: J2SE-1.5
-Export-Package: org.xtext.example.mydsl.ui.contentassist.antlr,
- org.xtext.example.mydsl.ui.contentassist
-Bundle-Activator: org.xtext.example.mydsl.ui.internal.MyDslTestActivator
diff --git a/org.xtext.example.mydslTest.ui/build.properties b/org.xtext.example.mydslTest.ui/build.properties
deleted file mode 100644
index e10dcceb..00000000
--- a/org.xtext.example.mydslTest.ui/build.properties
+++ /dev/null
@@ -1,5 +0,0 @@
-source.. = src/,\
-          src-gen/
-bin.includes = META-INF/,\
-               .,\
-               plugin.xml
\ No newline at end of file
diff --git a/org.xtext.example.mydslTest.ui/plugin.xml b/org.xtext.example.mydslTest.ui/plugin.xml
deleted file mode 100644
index 4f3ea02a..00000000
--- a/org.xtext.example.mydslTest.ui/plugin.xml
+++ /dev/null
@@ -1,215 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?eclipse version="3.0"?>
-
-<plugin>
-
-    <extension
-            point="org.eclipse.ui.editors">
-        <editor
-            class="org.xtext.example.mydsl.ui.MyDslTestExecutableExtensionFactory:org.eclipse.xtext.ui.editor.XtextEditor"
-            contributorClass="org.eclipse.ui.editors.text.TextEditorActionContributor"
-            default="true"
-            extensions="mydslTest"
-            id="org.xtext.example.mydsl.MyDslTest"
-            name="MyDslTest Editor">
-        </editor>
-    </extension>
-    <extension
-        point="org.eclipse.ui.handlers">
-        <handler
-            class="org.xtext.example.mydsl.ui.MyDslTestExecutableExtensionFactory:org.eclipse.xtext.ui.editor.hyperlinking.OpenDeclarationHandler"
-            commandId="org.eclipse.xtext.ui.editor.hyperlinking.OpenDeclaration">
-            <activeWhen>
-                <reference
-                    definitionId="org.xtext.example.mydsl.MyDslTest.Editor.opened">
-                </reference>
-            </activeWhen>
-        </handler>
-        <handler
-            class="org.xtext.example.mydsl.ui.MyDslTestExecutableExtensionFactory:org.eclipse.xtext.ui.editor.handler.ValidateActionHandler"
-            commandId="org.xtext.example.mydsl.MyDslTest.validate">
-         <activeWhen>
-            <reference
-                    definitionId="org.xtext.example.mydsl.MyDslTest.Editor.opened">
-            </reference>
-         </activeWhen>
-      </handler>
-    </extension>
-    <extension point="org.eclipse.core.expressions.definitions">
-        <definition id="org.xtext.example.mydsl.MyDslTest.Editor.opened">
-            <and>
-                <reference definitionId="isActiveEditorAnInstanceOfXtextEditor"/>
-                <with variable="activeEditor">
-                    <test property="org.eclipse.xtext.ui.editor.XtextEditor.languageName" 
-                        value="org.xtext.example.mydsl.MyDslTest" 
-                        forcePluginActivation="true"/>
-                </with>        
-            </and>
-        </definition>
-    </extension>
-    <extension
-            point="org.eclipse.ui.preferencePages">
-        <page
-            class="org.xtext.example.mydsl.ui.MyDslTestExecutableExtensionFactory:org.eclipse.xtext.ui.editor.preferences.LanguageRootPreferencePage"
-            id="org.xtext.example.mydsl.MyDslTest"
-            name="MyDslTest">
-            <keywordReference id="org.xtext.example.mydsl.ui.keyword_MyDslTest"/>
-        </page>
-        <page
-            category="org.xtext.example.mydsl.MyDslTest"
-            class="org.xtext.example.mydsl.ui.MyDslTestExecutableExtensionFactory:org.eclipse.xtext.ui.editor.syntaxcoloring.SyntaxColoringPreferencePage"
-            id="org.xtext.example.mydsl.MyDslTest.coloring"
-            name="Syntax Coloring">
-            <keywordReference id="org.xtext.example.mydsl.ui.keyword_MyDslTest"/>
-        </page>
-        <page
-            category="org.xtext.example.mydsl.MyDslTest"
-            class="org.xtext.example.mydsl.ui.MyDslTestExecutableExtensionFactory:org.eclipse.xtext.ui.editor.templates.XtextTemplatePreferencePage"
-            id="org.xtext.example.mydsl.MyDslTest.templates"
-            name="Templates">
-            <keywordReference id="org.xtext.example.mydsl.ui.keyword_MyDslTest"/>
-        </page>
-    </extension>
-    <extension
-            point="org.eclipse.ui.propertyPages">
-        <page
-            class="org.xtext.example.mydsl.ui.MyDslTestExecutableExtensionFactory:org.eclipse.xtext.ui.editor.preferences.LanguageRootPreferencePage"
-            id="org.xtext.example.mydsl.MyDslTest"
-            name="MyDslTest">
-            <keywordReference id="org.xtext.example.mydsl.ui.keyword_MyDslTest"/>
-            <enabledWhen>
-	            <adapt type="org.eclipse.core.resources.IProject"/>
-			</enabledWhen>
-	        <filter name="projectNature" value="org.eclipse.xtext.ui.shared.xtextNature"/>
-        </page>
-    </extension>
-    <extension
-        point="org.eclipse.ui.keywords">
-        <keyword
-            id="org.xtext.example.mydsl.ui.keyword_MyDslTest"
-            label="MyDslTest"/>
-    </extension>
-    <extension
-         point="org.eclipse.ui.commands">
-      <command
-            description="Trigger expensive validation"
-            id="org.xtext.example.mydsl.MyDslTest.validate"
-            name="Validate">
-      </command>
-    </extension>
-    <extension point="org.eclipse.ui.menus">
-        <menuContribution
-            locationURI="popup:#TextEditorContext?after=group.edit">
-             <command
-                 commandId="org.xtext.example.mydsl.MyDslTest.validate"
-                 style="push"
-                 tooltip="Trigger expensive validation">
-            <visibleWhen checkEnabled="false">
-                <reference
-                    definitionId="org.xtext.example.mydsl.MyDslTest.Editor.opened">
-                </reference>
-            </visibleWhen>
-         </command>  
-         </menuContribution>
-    </extension>
-    <extension point="org.eclipse.ui.menus">
-		<menuContribution locationURI="popup:#TextEditorContext?endof=group.find">
-			<command commandId="org.eclipse.xtext.ui.editor.FindReferences">
-				<visibleWhen checkEnabled="false">
-                	<reference definitionId="org.xtext.example.mydsl.MyDslTest.Editor.opened">
-                	</reference>
-            	</visibleWhen>
-			</command>
-		</menuContribution>
-	</extension>
-	<extension point="org.eclipse.ui.handlers">
-	    <handler
-            class="org.xtext.example.mydsl.ui.MyDslTestExecutableExtensionFactory:org.eclipse.xtext.ui.editor.findrefs.FindReferencesHandler"
-            commandId="org.eclipse.xtext.ui.editor.FindReferences">
-            <activeWhen>
-                <reference
-                    definitionId="org.xtext.example.mydsl.MyDslTest.Editor.opened">
-                </reference>
-            </activeWhen>
-        </handler>
-    </extension>   
-
-<!-- adding resource factories -->
-
-	<extension
-		point="org.eclipse.emf.ecore.extension_parser">
-		<parser
-			class="org.xtext.example.mydsl.ui.MyDslTestExecutableExtensionFactory:org.eclipse.xtext.resource.IResourceFactory"
-			type="mydslTest">
-		</parser>
-	</extension>
-	<extension point="org.eclipse.xtext.extension_resourceServiceProvider">
-        <resourceServiceProvider
-            class="org.xtext.example.mydsl.ui.MyDslTestExecutableExtensionFactory:org.eclipse.xtext.ui.resource.IResourceUIServiceProvider"
-            uriExtension="mydslTest">
-        </resourceServiceProvider>
-    </extension>
-
-
-
-	<!-- Quick Outline -->
-	<extension
-		point="org.eclipse.ui.handlers">
-		<handler 
-			class="org.xtext.example.mydsl.ui.MyDslTestExecutableExtensionFactory:org.eclipse.xtext.ui.editor.outline.quickoutline.ShowQuickOutlineActionHandler"
-			commandId="org.eclipse.xtext.ui.editor.outline.QuickOutline">
-			<activeWhen>
-				<reference
-					definitionId="org.xtext.example.mydsl.MyDslTest.Editor.opened">
-				</reference>
-			</activeWhen>
-		</handler>
-	</extension>
-	<extension
-		point="org.eclipse.ui.commands">
-		<command
-			description="Open the quick outline."
-			id="org.eclipse.xtext.ui.editor.outline.QuickOutline"
-			name="Quick Outline">
-		</command>
-	</extension>
-	<extension point="org.eclipse.ui.menus">
-		<menuContribution
-			locationURI="popup:#TextEditorContext?after=group.open">
-			<command commandId="org.eclipse.xtext.ui.editor.outline.QuickOutline"
-				style="push"
-				tooltip="Open Quick Outline">
-				<visibleWhen checkEnabled="false">
-					<reference definitionId="org.xtext.example.mydsl.MyDslTest.Editor.opened"/>
-				</visibleWhen>
-			</command>
-		</menuContribution>
-	</extension>
-
-  <extension point="org.eclipse.compare.contentViewers">
-    <viewer id="org.xtext.example.mydsl.MyDslTest.compare.contentViewers"
-            class="org.xtext.example.mydsl.ui.MyDslTestExecutableExtensionFactory:org.eclipse.xtext.ui.compare.InjectableViewerCreator"
-            extensions="mydslTest">
-    </viewer>
-  </extension>
-  <extension point="org.eclipse.compare.contentMergeViewers">
-    <viewer id="org.xtext.example.mydsl.MyDslTest.compare.contentMergeViewers"
-            class="org.xtext.example.mydsl.ui.MyDslTestExecutableExtensionFactory:org.eclipse.xtext.ui.compare.InjectableViewerCreator"
-            extensions="mydslTest" label="MyDslTest Compare">
-     </viewer>
-  </extension>
-  <extension point="org.eclipse.ui.editors.documentProviders">
-    <provider id="org.xtext.example.mydsl.MyDslTest.editors.documentProviders"
-            class="org.xtext.example.mydsl.ui.MyDslTestExecutableExtensionFactory:org.eclipse.xtext.ui.editor.model.XtextDocumentProvider"
-            extensions="mydslTest">
-    </provider>
-  </extension>
-   <!-- quickfix marker resolution generator -->
-   <extension
-         point="org.eclipse.ui.ide.markerResolution">
-      <markerResolutionGenerator
-            class="org.xtext.example.mydsl.ui.MyDslTestExecutableExtensionFactory:org.eclipse.xtext.ui.editor.quickfix.MarkerResolutionGenerator">
-      </markerResolutionGenerator>
-   </extension>
-
-</plugin>
diff --git a/org.xtext.example.mydslTest.ui/plugin.xml_gen b/org.xtext.example.mydslTest.ui/plugin.xml_gen
deleted file mode 100644
index 42a607a1..00000000
--- a/org.xtext.example.mydslTest.ui/plugin.xml_gen
+++ /dev/null
@@ -1,258 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?eclipse version="3.0"?>
-
-<plugin>
-
-    <extension
-            point="org.eclipse.ui.editors">
-        <editor
-            class="org.xtext.example.mydsl.ui.MyDslTestExecutableExtensionFactory:org.eclipse.xtext.ui.editor.XtextEditor"
-            contributorClass="org.eclipse.ui.editors.text.TextEditorActionContributor"
-            default="true"
-            extensions="mydslTest"
-            id="org.xtext.example.mydsl.MyDslTest"
-            name="MyDslTest Editor">
-        </editor>
-    </extension>
-    <extension
-        point="org.eclipse.ui.handlers">
-        <handler
-            class="org.xtext.example.mydsl.ui.MyDslTestExecutableExtensionFactory:org.eclipse.xtext.ui.editor.hyperlinking.OpenDeclarationHandler"
-            commandId="org.eclipse.xtext.ui.editor.hyperlinking.OpenDeclaration">
-            <activeWhen>
-                <reference
-                    definitionId="org.xtext.example.mydsl.MyDslTest.Editor.opened">
-                </reference>
-            </activeWhen>
-        </handler>
-        <handler
-            class="org.xtext.example.mydsl.ui.MyDslTestExecutableExtensionFactory:org.eclipse.xtext.ui.editor.handler.ValidateActionHandler"
-            commandId="org.xtext.example.mydsl.MyDslTest.validate">
-         <activeWhen>
-            <reference
-                    definitionId="org.xtext.example.mydsl.MyDslTest.Editor.opened">
-            </reference>
-         </activeWhen>
-      </handler>
-    </extension>
-    <extension point="org.eclipse.core.expressions.definitions">
-        <definition id="org.xtext.example.mydsl.MyDslTest.Editor.opened">
-            <and>
-                <reference definitionId="isActiveEditorAnInstanceOfXtextEditor"/>
-                <with variable="activeEditor">
-                    <test property="org.eclipse.xtext.ui.editor.XtextEditor.languageName" 
-                        value="org.xtext.example.mydsl.MyDslTest" 
-                        forcePluginActivation="true"/>
-                </with>        
-            </and>
-        </definition>
-    </extension>
-    <extension
-            point="org.eclipse.ui.preferencePages">
-        <page
-            class="org.xtext.example.mydsl.ui.MyDslTestExecutableExtensionFactory:org.eclipse.xtext.ui.editor.preferences.LanguageRootPreferencePage"
-            id="org.xtext.example.mydsl.MyDslTest"
-            name="MyDslTest">
-            <keywordReference id="org.xtext.example.mydsl.ui.keyword_MyDslTest"/>
-        </page>
-        <page
-            category="org.xtext.example.mydsl.MyDslTest"
-            class="org.xtext.example.mydsl.ui.MyDslTestExecutableExtensionFactory:org.eclipse.xtext.ui.editor.syntaxcoloring.SyntaxColoringPreferencePage"
-            id="org.xtext.example.mydsl.MyDslTest.coloring"
-            name="Syntax Coloring">
-            <keywordReference id="org.xtext.example.mydsl.ui.keyword_MyDslTest"/>
-        </page>
-        <page
-            category="org.xtext.example.mydsl.MyDslTest"
-            class="org.xtext.example.mydsl.ui.MyDslTestExecutableExtensionFactory:org.eclipse.xtext.ui.editor.templates.XtextTemplatePreferencePage"
-            id="org.xtext.example.mydsl.MyDslTest.templates"
-            name="Templates">
-            <keywordReference id="org.xtext.example.mydsl.ui.keyword_MyDslTest"/>
-        </page>
-    </extension>
-    <extension
-            point="org.eclipse.ui.propertyPages">
-        <page
-            class="org.xtext.example.mydsl.ui.MyDslTestExecutableExtensionFactory:org.eclipse.xtext.ui.editor.preferences.LanguageRootPreferencePage"
-            id="org.xtext.example.mydsl.MyDslTest"
-            name="MyDslTest">
-            <keywordReference id="org.xtext.example.mydsl.ui.keyword_MyDslTest"/>
-            <enabledWhen>
-	            <adapt type="org.eclipse.core.resources.IProject"/>
-			</enabledWhen>
-	        <filter name="projectNature" value="org.eclipse.xtext.ui.shared.xtextNature"/>
-        </page>
-    </extension>
-    <extension
-        point="org.eclipse.ui.keywords">
-        <keyword
-            id="org.xtext.example.mydsl.ui.keyword_MyDslTest"
-            label="MyDslTest"/>
-    </extension>
-    <extension
-         point="org.eclipse.ui.commands">
-      <command
-            description="Trigger expensive validation"
-            id="org.xtext.example.mydsl.MyDslTest.validate"
-            name="Validate">
-      </command>
-    </extension>
-    <extension point="org.eclipse.ui.menus">
-        <menuContribution
-            locationURI="popup:#TextEditorContext?after=group.edit">
-             <command
-                 commandId="org.xtext.example.mydsl.MyDslTest.validate"
-                 style="push"
-                 tooltip="Trigger expensive validation">
-            <visibleWhen checkEnabled="false">
-                <reference
-                    definitionId="org.xtext.example.mydsl.MyDslTest.Editor.opened">
-                </reference>
-            </visibleWhen>
-         </command>  
-         </menuContribution>
-    </extension>
-    <extension point="org.eclipse.ui.menus">
-		<menuContribution locationURI="popup:#TextEditorContext?endof=group.find">
-			<command commandId="org.eclipse.xtext.ui.editor.FindReferences">
-				<visibleWhen checkEnabled="false">
-                	<reference definitionId="org.xtext.example.mydsl.MyDslTest.Editor.opened">
-                	</reference>
-            	</visibleWhen>
-			</command>
-		</menuContribution>
-	</extension>
-	<extension point="org.eclipse.ui.handlers">
-	    <handler
-            class="org.xtext.example.mydsl.ui.MyDslTestExecutableExtensionFactory:org.eclipse.xtext.ui.editor.findrefs.FindReferencesHandler"
-            commandId="org.eclipse.xtext.ui.editor.FindReferences">
-            <activeWhen>
-                <reference
-                    definitionId="org.xtext.example.mydsl.MyDslTest.Editor.opened">
-                </reference>
-            </activeWhen>
-        </handler>
-    </extension>   
-
-<!-- adding resource factories -->
-
-	<extension
-		point="org.eclipse.emf.ecore.extension_parser">
-		<parser
-			class="org.xtext.example.mydsl.ui.MyDslTestExecutableExtensionFactory:org.eclipse.xtext.resource.IResourceFactory"
-			type="mydslTest">
-		</parser>
-	</extension>
-	<extension point="org.eclipse.xtext.extension_resourceServiceProvider">
-        <resourceServiceProvider
-            class="org.xtext.example.mydsl.ui.MyDslTestExecutableExtensionFactory:org.eclipse.xtext.ui.resource.IResourceUIServiceProvider"
-            uriExtension="mydslTest">
-        </resourceServiceProvider>
-    </extension>
-
-
-    <!-- marker definitions for org.xtext.example.mydsl.MyDslTest -->
-    <extension
-            id="mydsltest.check.fast"
-            name="MyDslTest Problem"
-            point="org.eclipse.core.resources.markers">
-        <super type="org.eclipse.xtext.ui.check.fast"/>
-        <persistent value="true"/>
-    </extension>
-    <extension
-            id="mydsltest.check.normal"
-            name="MyDslTest Problem"
-            point="org.eclipse.core.resources.markers">
-        <super type="org.eclipse.xtext.ui.check.normal"/>
-        <persistent value="true"/>
-    </extension>
-    <extension
-            id="mydsltest.check.expensive"
-            name="MyDslTest Problem"
-            point="org.eclipse.core.resources.markers">
-        <super type="org.eclipse.xtext.ui.check.expensive"/>
-        <persistent value="true"/>
-    </extension>
-
-	<!-- Quick Outline -->
-	<extension
-		point="org.eclipse.ui.handlers">
-		<handler 
-			class="org.xtext.example.mydsl.ui.MyDslTestExecutableExtensionFactory:org.eclipse.xtext.ui.editor.outline.quickoutline.ShowQuickOutlineActionHandler"
-			commandId="org.eclipse.xtext.ui.editor.outline.QuickOutline">
-			<activeWhen>
-				<reference
-					definitionId="org.xtext.example.mydsl.MyDslTest.Editor.opened">
-				</reference>
-			</activeWhen>
-		</handler>
-	</extension>
-	<extension
-		point="org.eclipse.ui.commands">
-		<command
-			description="Open the quick outline."
-			id="org.eclipse.xtext.ui.editor.outline.QuickOutline"
-			name="Quick Outline">
-		</command>
-	</extension>
-	<extension point="org.eclipse.ui.menus">
-		<menuContribution
-			locationURI="popup:#TextEditorContext?after=group.open">
-			<command commandId="org.eclipse.xtext.ui.editor.outline.QuickOutline"
-				style="push"
-				tooltip="Open Quick Outline">
-				<visibleWhen checkEnabled="false">
-					<reference definitionId="org.xtext.example.mydsl.MyDslTest.Editor.opened"/>
-				</visibleWhen>
-			</command>
-		</menuContribution>
-	</extension>
-
-  <extension point="org.eclipse.compare.contentViewers">
-    <viewer id="org.xtext.example.mydsl.MyDslTest.compare.contentViewers"
-            class="org.xtext.example.mydsl.ui.MyDslTestExecutableExtensionFactory:org.eclipse.xtext.ui.compare.InjectableViewerCreator"
-            extensions="mydslTest">
-    </viewer>
-  </extension>
-  <extension point="org.eclipse.compare.contentMergeViewers">
-    <viewer id="org.xtext.example.mydsl.MyDslTest.compare.contentMergeViewers"
-            class="org.xtext.example.mydsl.ui.MyDslTestExecutableExtensionFactory:org.eclipse.xtext.ui.compare.InjectableViewerCreator"
-            extensions="mydslTest" label="MyDslTest Compare">
-     </viewer>
-  </extension>
-  <extension point="org.eclipse.ui.editors.documentProviders">
-    <provider id="org.xtext.example.mydsl.MyDslTest.editors.documentProviders"
-            class="org.xtext.example.mydsl.ui.MyDslTestExecutableExtensionFactory:org.eclipse.xtext.ui.editor.model.XtextDocumentProvider"
-            extensions="mydslTest">
-    </provider>
-  </extension>
-    <!-- quickfix marker resolution generator for org.xtext.example.mydsl.MyDslTest -->
-    <extension
-            point="org.eclipse.ui.ide.markerResolution">
-        <markerResolutionGenerator
-            class="org.xtext.example.mydsl.ui.MyDslTestExecutableExtensionFactory:org.eclipse.xtext.ui.editor.quickfix.MarkerResolutionGenerator"
-            markerType="org.xtext.example.mydsl.ui.mydsltest.check.fast">
-            <attribute
-                name="FIXABLE_KEY"
-                value="true">
-            </attribute>
-        </markerResolutionGenerator>
-        <markerResolutionGenerator
-            class="org.xtext.example.mydsl.ui.MyDslTestExecutableExtensionFactory:org.eclipse.xtext.ui.editor.quickfix.MarkerResolutionGenerator"
-            markerType="org.xtext.example.mydsl.ui.mydsltest.check.normal">
-            <attribute
-                name="FIXABLE_KEY"
-                value="true">
-            </attribute>
-        </markerResolutionGenerator>
-        <markerResolutionGenerator
-            class="org.xtext.example.mydsl.ui.MyDslTestExecutableExtensionFactory:org.eclipse.xtext.ui.editor.quickfix.MarkerResolutionGenerator"
-            markerType="org.xtext.example.mydsl.ui.mydsltest.check.expensive">
-            <attribute
-                name="FIXABLE_KEY"
-                value="true">
-            </attribute>
-        </markerResolutionGenerator>
-    </extension>
-
-</plugin>
diff --git a/org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/AbstractMyDslTestUiModule.java b/org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/AbstractMyDslTestUiModule.java
deleted file mode 100644
index b2d5922d..00000000
--- a/org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/AbstractMyDslTestUiModule.java
+++ /dev/null
@@ -1,127 +0,0 @@
-
-/*
- * generated by Xtext
- */
-package org.xtext.example.mydsl.ui;
-
-import org.eclipse.xtext.ui.DefaultUiModule;
-import org.eclipse.ui.plugin.AbstractUIPlugin;
-
-/**
- * Manual modifications go to {org.xtext.example.mydsl.ui.MyDslTestUiModule}
- */
-@SuppressWarnings("all")
-public abstract class AbstractMyDslTestUiModule extends DefaultUiModule {
-	
-	public AbstractMyDslTestUiModule(AbstractUIPlugin plugin) {
-		super(plugin);
-	}
-	
-	
-	// contributed by org.eclipse.xtext.ui.generator.ImplicitUiFragment
-	public com.google.inject.Provider<org.eclipse.xtext.resource.containers.IAllContainersState> provideIAllContainersState() {
-		return org.eclipse.xtext.ui.shared.Access.getJavaProjectsState();
-	}
-
-	// contributed by org.eclipse.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment
-	public Class<? extends org.eclipse.xtext.ui.editor.contentassist.IProposalConflictHelper> bindIProposalConflictHelper() {
-		return org.eclipse.xtext.ui.editor.contentassist.antlr.AntlrProposalConflictHelper.class;
-	}
-
-	// contributed by org.eclipse.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment
-	public void configureHighlightingLexer(com.google.inject.Binder binder) {
-		binder.bind(org.eclipse.xtext.parser.antlr.Lexer.class).annotatedWith(com.google.inject.name.Names.named(org.eclipse.xtext.ui.LexerUIBindings.HIGHLIGHTING)).to(org.xtext.example.mydsl.parser.antlr.internal.InternalMyDslTestLexer.class);
-	}
-
-	// contributed by org.eclipse.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment
-	public void configureHighlightingTokenDefProvider(com.google.inject.Binder binder) {
-		binder.bind(org.eclipse.xtext.parser.antlr.ITokenDefProvider.class).annotatedWith(com.google.inject.name.Names.named(org.eclipse.xtext.ui.LexerUIBindings.HIGHLIGHTING)).to(org.eclipse.xtext.parser.antlr.AntlrTokenDefProvider.class);
-	}
-
-	// contributed by org.eclipse.xtext.generator.exporting.QualifiedNamesFragment
-	public Class<? extends org.eclipse.xtext.ui.editor.contentassist.PrefixMatcher> bindPrefixMatcher() {
-		return org.eclipse.xtext.ui.editor.contentassist.FQNPrefixMatcher.class;
-	}
-
-	// contributed by org.eclipse.xtext.generator.exporting.QualifiedNamesFragment
-	public Class<? extends org.eclipse.xtext.ui.refactoring.IDependentElementsCalculator> bindIDependentElementsCalculator() {
-		return org.eclipse.xtext.ui.refactoring.impl.DefaultDependentElementsCalculator.class;
-	}
-
-	// contributed by org.eclipse.xtext.ui.generator.labeling.LabelProviderFragment
-	public Class<? extends org.eclipse.jface.viewers.ILabelProvider> bindILabelProvider() {
-		return org.xtext.example.mydsl.ui.labeling.MyDslTestLabelProvider.class;
-	}
-
-	// contributed by org.eclipse.xtext.ui.generator.labeling.LabelProviderFragment
-	public void configureResourceUIServiceLabelProvider(com.google.inject.Binder binder) {
-		binder.bind(org.eclipse.jface.viewers.ILabelProvider.class).annotatedWith(org.eclipse.xtext.ui.resource.ResourceServiceDescriptionLabelProvider.class).to(org.xtext.example.mydsl.ui.labeling.MyDslTestDescriptionLabelProvider.class);
-	}
-
-	// contributed by org.eclipse.xtext.ui.generator.outline.OutlineTreeProviderFragment
-	public Class<? extends org.eclipse.xtext.ui.editor.outline.IOutlineTreeProvider> bindIOutlineTreeProvider() {
-		return org.xtext.example.mydsl.ui.outline.MyDslTestOutlineTreeProvider.class;
-	}
-
-	// contributed by org.eclipse.xtext.ui.generator.outline.OutlineTreeProviderFragment
-	public Class<? extends org.eclipse.xtext.ui.editor.outline.impl.IOutlineTreeStructureProvider> bindIOutlineTreeStructureProvider() {
-		return org.xtext.example.mydsl.ui.outline.MyDslTestOutlineTreeProvider.class;
-	}
-
-	// contributed by org.eclipse.xtext.ui.generator.contentAssist.JavaBasedContentAssistFragment
-	public Class<? extends org.eclipse.xtext.ui.editor.contentassist.IContentProposalProvider> bindIContentProposalProvider() {
-		return org.xtext.example.mydsl.ui.contentassist.MyDslTestProposalProvider.class;
-	}
-
-	// contributed by org.eclipse.xtext.generator.parser.antlr.XtextAntlrUiGeneratorFragment
-	public Class<? extends org.eclipse.xtext.ui.editor.contentassist.ContentAssistContext.Factory> bindContentAssistContext$Factory() {
-		return org.eclipse.xtext.ui.editor.contentassist.antlr.ParserBasedContentAssistContextFactory.class;
-	}
-
-	// contributed by org.eclipse.xtext.generator.parser.antlr.XtextAntlrUiGeneratorFragment
-	public Class<? extends org.eclipse.xtext.ui.editor.contentassist.antlr.IContentAssistParser> bindIContentAssistParser() {
-		return org.xtext.example.mydsl.ui.contentassist.antlr.MyDslTestParser.class;
-	}
-
-	// contributed by org.eclipse.xtext.generator.parser.antlr.XtextAntlrUiGeneratorFragment
-	public void configureContentAssistLexerProvider(com.google.inject.Binder binder) {
-		binder.bind(org.xtext.example.mydsl.ui.contentassist.antlr.internal.InternalMyDslTestLexer.class).toProvider(org.eclipse.xtext.parser.antlr.LexerProvider.create(org.xtext.example.mydsl.ui.contentassist.antlr.internal.InternalMyDslTestLexer.class));
-	}
-
-	// contributed by org.eclipse.xtext.generator.parser.antlr.XtextAntlrUiGeneratorFragment
-	public void configureContentAssistLexer(com.google.inject.Binder binder) {
-		binder.bind(org.eclipse.xtext.ui.editor.contentassist.antlr.internal.Lexer.class).annotatedWith(com.google.inject.name.Names.named(org.eclipse.xtext.ui.LexerUIBindings.CONTENT_ASSIST)).to(org.xtext.example.mydsl.ui.contentassist.antlr.internal.InternalMyDslTestLexer.class);
-	}
-
-	// contributed by org.eclipse.xtext.ui.generator.compare.CompareFragment
-	public Class<? extends org.eclipse.compare.IViewerCreator> bindIViewerCreator() {
-		return org.eclipse.xtext.ui.compare.DefaultViewerCreator.class;
-	}
-
-	// contributed by org.eclipse.xtext.generator.builder.BuilderIntegrationFragment
-	public void configureIResourceDescriptionsBuilderScope(com.google.inject.Binder binder) {
-		binder.bind(org.eclipse.xtext.resource.IResourceDescriptions.class).annotatedWith(com.google.inject.name.Names.named(org.eclipse.xtext.resource.impl.ResourceDescriptionsProvider.NAMED_BUILDER_SCOPE)).to(org.eclipse.xtext.builder.clustering.CurrentDescriptions.ResourceSetAware.class);
-	}
-
-	// contributed by org.eclipse.xtext.generator.builder.BuilderIntegrationFragment
-	public Class<? extends org.eclipse.xtext.ui.editor.IXtextEditorCallback> bindIXtextEditorCallback() {
-		return org.eclipse.xtext.builder.nature.NatureAddingEditorCallback.class;
-	}
-
-	// contributed by org.eclipse.xtext.generator.builder.BuilderIntegrationFragment
-	public void configureIResourceDescriptionsPersisted(com.google.inject.Binder binder) {
-		binder.bind(org.eclipse.xtext.resource.IResourceDescriptions.class).annotatedWith(com.google.inject.name.Names.named(org.eclipse.xtext.builder.impl.PersistentDataAwareDirtyResource.PERSISTED_DESCRIPTIONS)).to(org.eclipse.xtext.builder.builderState.IBuilderState.class);
-	}
-
-	// contributed by org.eclipse.xtext.generator.builder.BuilderIntegrationFragment
-	public Class<? extends org.eclipse.xtext.ui.editor.DocumentBasedDirtyResource> bindDocumentBasedDirtyResource() {
-		return org.eclipse.xtext.builder.impl.PersistentDataAwareDirtyResource.class;
-	}
-
-	// contributed by org.eclipse.xtext.ui.generator.quickfix.QuickfixProviderFragment
-	public Class<? extends org.eclipse.xtext.ui.editor.quickfix.IssueResolutionProvider> bindIssueResolutionProvider() {
-		return org.xtext.example.mydsl.ui.quickfix.MyDslTestQuickfixProvider.class;
-	}
-
-
-}
diff --git a/org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/MyDslTestExecutableExtensionFactory.java b/org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/MyDslTestExecutableExtensionFactory.java
deleted file mode 100644
index 74f78f46..00000000
--- a/org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/MyDslTestExecutableExtensionFactory.java
+++ /dev/null
@@ -1,29 +0,0 @@
-/*
- * generated by Xtext
- */
-package org.xtext.example.mydsl.ui;
-
-import org.eclipse.xtext.ui.guice.AbstractGuiceAwareExecutableExtensionFactory;
-import org.osgi.framework.Bundle;
-
-import com.google.inject.Injector;
-
-import org.xtext.example.mydsl.ui.internal.MyDslTestActivator;
-
-/**
- * This class was generated. Customizations should only happen in a newly
- * introduced subclass. 
- */
-public class MyDslTestExecutableExtensionFactory extends AbstractGuiceAwareExecutableExtensionFactory {
-
-	@Override
-	protected Bundle getBundle() {
-		return MyDslTestActivator.getInstance().getBundle();
-	}
-	
-	@Override
-	protected Injector getInjector() {
-		return MyDslTestActivator.getInstance().getInjector(MyDslTestActivator.ORG_XTEXT_EXAMPLE_MYDSL_MYDSLTEST);
-	}
-	
-}
diff --git a/org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/AbstractMyDslTestProposalProvider.java b/org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/AbstractMyDslTestProposalProvider.java
deleted file mode 100644
index 187ca081..00000000
--- a/org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/AbstractMyDslTestProposalProvider.java
+++ /dev/null
@@ -1,285 +0,0 @@
-/*
-* generated by Xtext
-*/
-package org.xtext.example.mydsl.ui.contentassist;
-
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.xtext.*;
-import org.eclipse.xtext.common.ui.contentassist.TerminalsProposalProvider;
-import org.eclipse.xtext.ui.editor.contentassist.ICompletionProposalAcceptor;
-import org.eclipse.xtext.ui.editor.contentassist.ContentAssistContext;
-
-/**
- * Represents a generated, default implementation of interface {@link IProposalProvider}.
- * Methods are dynamically dispatched on the first parameter, i.e., you can override them 
- * with a more concrete subtype. 
- */
-@SuppressWarnings("all")
-public class AbstractMyDslTestProposalProvider extends TerminalsProposalProvider {
-		
-	public void completeRepository_Name(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
-		completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
-	}
-	public void completeRepository_Imports(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
-		completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
-	}
-	public void completeRepository_Datatypes(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
-		completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
-	}
-	public void completeRepository_Components(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
-		completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
-	}
-	public void completeRepository_Interfaces(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
-		completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
-	}
-	public void completeImport_ImportedNamespace(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
-		completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
-	}
-	public void completeInterface_Name(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
-		completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
-	}
-	public void completeInterface_ParentInterfaces(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
-		lookupCrossReference(((CrossReference)assignment.getTerminal()), context, acceptor);
-	}
-	public void completeInterface_Signatures(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
-		completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
-	}
-	public void completeRepositoryComponent_Impl_Name(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
-		completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
-	}
-	public void completeRepositoryComponent_Impl_Relationship(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
-		lookupCrossReference(((CrossReference)assignment.getTerminal()), context, acceptor);
-	}
-	public void completeRepositoryComponent_Impl_ProvidedRoles(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
-		completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
-	}
-	public void completeRepositoryComponent_Impl_RequiredRoles(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
-		completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
-	}
-	public void completeCollectionDataType_Name(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
-		completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
-	}
-	public void completeCollectionDataType_InnerType(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
-		lookupCrossReference(((CrossReference)assignment.getTerminal()), context, acceptor);
-	}
-	public void completeCompositeDataType_Name(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
-		completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
-	}
-	public void completeCompositeDataType_ParentTypes(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
-		lookupCrossReference(((CrossReference)assignment.getTerminal()), context, acceptor);
-	}
-	public void completeCompositeDataType_InnerDeclarations(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
-		completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
-	}
-	public void completePrimitiveDataType_Type(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
-		completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
-	}
-	public void completePrimitiveDataType_Name(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
-		completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
-	}
-	public void completeInnerDeclaration_Name(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
-		completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
-	}
-	public void completeInnerDeclaration_DataType(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
-		lookupCrossReference(((CrossReference)assignment.getTerminal()), context, acceptor);
-	}
-	public void completeSignature_ReturnType(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
-		lookupCrossReference(((CrossReference)assignment.getTerminal()), context, acceptor);
-	}
-	public void completeSignature_Name(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
-		completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
-	}
-	public void completeSignature_Parameters(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
-		completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
-	}
-	public void completeParameter_DataType(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
-		lookupCrossReference(((CrossReference)assignment.getTerminal()), context, acceptor);
-	}
-	public void completeParameter_Name(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
-		completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
-	}
-	public void completeProvidedRole_Interface(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
-		lookupCrossReference(((CrossReference)assignment.getTerminal()), context, acceptor);
-	}
-	public void completeRequiredRole_Interface(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
-		lookupCrossReference(((CrossReference)assignment.getTerminal()), context, acceptor);
-	}
-	public void completeBasicComponent_Name(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
-		completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
-	}
-	public void completeBasicComponent_ProvidedRoles(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
-		completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
-	}
-	public void completeBasicComponent_RequiredRoles(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
-		completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
-	}
-	public void completeBasicComponent_Relationship(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
-		lookupCrossReference(((CrossReference)assignment.getTerminal()), context, acceptor);
-	}
-	public void completeCompositeComponent_Name(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
-		completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
-	}
-	public void completeCompositeComponent_ProvidedRoles(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
-		completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
-	}
-	public void completeCompositeComponent_RequiredRoles(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
-		completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
-	}
-	public void completeCompositeComponent_Relationship(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
-		lookupCrossReference(((CrossReference)assignment.getTerminal()), context, acceptor);
-	}
-	public void completeCompositeComponent_Assembly(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
-		completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
-	}
-	public void completeSubSystem_Name(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
-		completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
-	}
-	public void completeSubSystem_ProvidedRoles(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
-		completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
-	}
-	public void completeSubSystem_RequiredRoles(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
-		completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
-	}
-	public void completeSubSystem_Relationship(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
-		lookupCrossReference(((CrossReference)assignment.getTerminal()), context, acceptor);
-	}
-	public void completeSubSystem_Assembly(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
-		completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
-	}
-	public void completeComposedStructureAssembly_AssemblyContexts(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
-		completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
-	}
-	public void completeComposedStructureAssembly_AssemblyConnectors(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
-		completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
-	}
-	public void completeComposedStructureAssembly_ProvidedDelegationConnectors(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
-		completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
-	}
-	public void completeComposedStructureAssembly_RequiredDelegationConnectors(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
-		completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
-	}
-	public void completeAssemblyContext_Name(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
-		completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
-	}
-	public void completeAssemblyContext_EncapsulatedComponent(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
-		lookupCrossReference(((CrossReference)assignment.getTerminal()), context, acceptor);
-	}
-	public void completeAssemblyConnector_Name(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
-		completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
-	}
-	public void completeAssemblyConnector_RequiredRole(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
-		lookupCrossReference(((CrossReference)assignment.getTerminal()), context, acceptor);
-	}
-	public void completeAssemblyConnector_ProvidedRole(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
-		lookupCrossReference(((CrossReference)assignment.getTerminal()), context, acceptor);
-	}
-	public void completeAssemblyConnector_ProvidingAssemblyContext(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
-		lookupCrossReference(((CrossReference)assignment.getTerminal()), context, acceptor);
-	}
-	public void completeAssemblyConnector_RequiringAssemblyContext(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
-		lookupCrossReference(((CrossReference)assignment.getTerminal()), context, acceptor);
-	}
-	public void completeProvidedDelegationConnector_Name(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
-		completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
-	}
-	public void completeProvidedDelegationConnector_AssemblyContext(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
-		lookupCrossReference(((CrossReference)assignment.getTerminal()), context, acceptor);
-	}
-	public void completeProvidedDelegationConnector_InnerProvidedRole(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
-		lookupCrossReference(((CrossReference)assignment.getTerminal()), context, acceptor);
-	}
-	public void completeProvidedDelegationConnector_OuterProvidedRole(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
-		lookupCrossReference(((CrossReference)assignment.getTerminal()), context, acceptor);
-	}
-	public void completeRequiredDelegationConnector_Name(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
-		completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
-	}
-	public void completeRequiredDelegationConnector_AssemblyContext(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
-		lookupCrossReference(((CrossReference)assignment.getTerminal()), context, acceptor);
-	}
-	public void completeRequiredDelegationConnector_InnerRequiredRole(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
-		lookupCrossReference(((CrossReference)assignment.getTerminal()), context, acceptor);
-	}
-	public void completeRequiredDelegationConnector_OuterRequiredRole(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
-		lookupCrossReference(((CrossReference)assignment.getTerminal()), context, acceptor);
-	}
-    
-	public void complete_Repository(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
-		// subclasses may override
-	}
-	public void complete_Import(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
-		// subclasses may override
-	}
-	public void complete_QualifiedNameWithWildCard(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
-		// subclasses may override
-	}
-	public void complete_QualifiedName(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
-		// subclasses may override
-	}
-	public void complete_DataType(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
-		// subclasses may override
-	}
-	public void complete_RepositoryComponent(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
-		// subclasses may override
-	}
-	public void complete_EString(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
-		// subclasses may override
-	}
-	public void complete_Interface(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
-		// subclasses may override
-	}
-	public void complete_RepositoryComponent_Impl(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
-		// subclasses may override
-	}
-	public void complete_CollectionDataType(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
-		// subclasses may override
-	}
-	public void complete_CompositeDataType(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
-		// subclasses may override
-	}
-	public void complete_PrimitiveDataType(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
-		// subclasses may override
-	}
-	public void complete_InnerDeclaration(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
-		// subclasses may override
-	}
-	public void complete_PrimitiveTypeEnum(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
-		// subclasses may override
-	}
-	public void complete_Signature(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
-		// subclasses may override
-	}
-	public void complete_Parameter(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
-		// subclasses may override
-	}
-	public void complete_ProvidedRole(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
-		// subclasses may override
-	}
-	public void complete_RequiredRole(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
-		// subclasses may override
-	}
-	public void complete_BasicComponent(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
-		// subclasses may override
-	}
-	public void complete_CompositeComponent(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
-		// subclasses may override
-	}
-	public void complete_SubSystem(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
-		// subclasses may override
-	}
-	public void complete_ComposedStructureAssembly(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
-		// subclasses may override
-	}
-	public void complete_AssemblyContext(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
-		// subclasses may override
-	}
-	public void complete_AssemblyConnector(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
-		// subclasses may override
-	}
-	public void complete_ProvidedDelegationConnector(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
-		// subclasses may override
-	}
-	public void complete_RequiredDelegationConnector(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
-		// subclasses may override
-	}
-}
diff --git a/org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/MyDslTestParser.java b/org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/MyDslTestParser.java
deleted file mode 100644
index 6d93f449..00000000
--- a/org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/MyDslTestParser.java
+++ /dev/null
@@ -1,237 +0,0 @@
-/*
-* generated by Xtext
-*/
-package org.xtext.example.mydsl.ui.contentassist.antlr;
-
-import java.util.Collection;
-import java.util.Map;
-import java.util.HashMap;
-
-import org.antlr.runtime.RecognitionException;
-import org.eclipse.xtext.AbstractElement;
-import org.eclipse.xtext.ui.editor.contentassist.antlr.AbstractContentAssistParser;
-import org.eclipse.xtext.ui.editor.contentassist.antlr.FollowElement;
-import org.eclipse.xtext.ui.editor.contentassist.antlr.internal.AbstractInternalContentAssistParser;
-
-import com.google.inject.Inject;
-
-import org.xtext.example.mydsl.services.MyDslTestGrammarAccess;
-
-public class MyDslTestParser extends AbstractContentAssistParser {
-	
-	@Inject
-	private MyDslTestGrammarAccess grammarAccess;
-	
-	private Map<AbstractElement, String> nameMappings;
-	
-	@Override
-	protected org.xtext.example.mydsl.ui.contentassist.antlr.internal.InternalMyDslTestParser createParser() {
-		org.xtext.example.mydsl.ui.contentassist.antlr.internal.InternalMyDslTestParser result = new org.xtext.example.mydsl.ui.contentassist.antlr.internal.InternalMyDslTestParser(null);
-		result.setGrammarAccess(grammarAccess);
-		return result;
-	}
-	
-	@Override
-	protected String getRuleName(AbstractElement element) {
-		if (nameMappings == null) {
-			nameMappings = new HashMap<AbstractElement, String>() {
-				private static final long serialVersionUID = 1L;
-				{
-					put(grammarAccess.getDataTypeAccess().getAlternatives(), "rule__DataType__Alternatives");
-					put(grammarAccess.getRepositoryComponentAccess().getAlternatives(), "rule__RepositoryComponent__Alternatives");
-					put(grammarAccess.getEStringAccess().getAlternatives(), "rule__EString__Alternatives");
-					put(grammarAccess.getSignatureAccess().getAlternatives_0(), "rule__Signature__Alternatives_0");
-					put(grammarAccess.getPrimitiveTypeEnumAccess().getAlternatives(), "rule__PrimitiveTypeEnum__Alternatives");
-					put(grammarAccess.getRepositoryAccess().getGroup(), "rule__Repository__Group__0");
-					put(grammarAccess.getRepositoryAccess().getGroup_3(), "rule__Repository__Group_3__0");
-					put(grammarAccess.getRepositoryAccess().getGroup_3_3(), "rule__Repository__Group_3_3__0");
-					put(grammarAccess.getRepositoryAccess().getGroup_4(), "rule__Repository__Group_4__0");
-					put(grammarAccess.getRepositoryAccess().getGroup_4_3(), "rule__Repository__Group_4_3__0");
-					put(grammarAccess.getRepositoryAccess().getGroup_5(), "rule__Repository__Group_5__0");
-					put(grammarAccess.getRepositoryAccess().getGroup_5_3(), "rule__Repository__Group_5_3__0");
-					put(grammarAccess.getRepositoryAccess().getGroup_6(), "rule__Repository__Group_6__0");
-					put(grammarAccess.getRepositoryAccess().getGroup_6_3(), "rule__Repository__Group_6_3__0");
-					put(grammarAccess.getImportAccess().getGroup(), "rule__Import__Group__0");
-					put(grammarAccess.getQualifiedNameWithWildCardAccess().getGroup(), "rule__QualifiedNameWithWildCard__Group__0");
-					put(grammarAccess.getQualifiedNameWithWildCardAccess().getGroup_1(), "rule__QualifiedNameWithWildCard__Group_1__0");
-					put(grammarAccess.getQualifiedNameAccess().getGroup(), "rule__QualifiedName__Group__0");
-					put(grammarAccess.getQualifiedNameAccess().getGroup_1(), "rule__QualifiedName__Group_1__0");
-					put(grammarAccess.getInterfaceAccess().getGroup(), "rule__Interface__Group__0");
-					put(grammarAccess.getInterfaceAccess().getGroup_3(), "rule__Interface__Group_3__0");
-					put(grammarAccess.getInterfaceAccess().getGroup_3_3(), "rule__Interface__Group_3_3__0");
-					put(grammarAccess.getInterfaceAccess().getGroup_4(), "rule__Interface__Group_4__0");
-					put(grammarAccess.getInterfaceAccess().getGroup_4_1(), "rule__Interface__Group_4_1__0");
-					put(grammarAccess.getRepositoryComponent_ImplAccess().getGroup(), "rule__RepositoryComponent_Impl__Group__0");
-					put(grammarAccess.getRepositoryComponent_ImplAccess().getGroup_3(), "rule__RepositoryComponent_Impl__Group_3__0");
-					put(grammarAccess.getRepositoryComponent_ImplAccess().getGroup_3_3(), "rule__RepositoryComponent_Impl__Group_3_3__0");
-					put(grammarAccess.getRepositoryComponent_ImplAccess().getGroup_4(), "rule__RepositoryComponent_Impl__Group_4__0");
-					put(grammarAccess.getRepositoryComponent_ImplAccess().getGroup_4_3(), "rule__RepositoryComponent_Impl__Group_4_3__0");
-					put(grammarAccess.getRepositoryComponent_ImplAccess().getGroup_5(), "rule__RepositoryComponent_Impl__Group_5__0");
-					put(grammarAccess.getRepositoryComponent_ImplAccess().getGroup_5_3(), "rule__RepositoryComponent_Impl__Group_5_3__0");
-					put(grammarAccess.getCollectionDataTypeAccess().getGroup(), "rule__CollectionDataType__Group__0");
-					put(grammarAccess.getCompositeDataTypeAccess().getGroup(), "rule__CompositeDataType__Group__0");
-					put(grammarAccess.getCompositeDataTypeAccess().getGroup_3(), "rule__CompositeDataType__Group_3__0");
-					put(grammarAccess.getCompositeDataTypeAccess().getGroup_3_3(), "rule__CompositeDataType__Group_3_3__0");
-					put(grammarAccess.getCompositeDataTypeAccess().getGroup_4(), "rule__CompositeDataType__Group_4__0");
-					put(grammarAccess.getCompositeDataTypeAccess().getGroup_4_3(), "rule__CompositeDataType__Group_4_3__0");
-					put(grammarAccess.getPrimitiveDataTypeAccess().getGroup(), "rule__PrimitiveDataType__Group__0");
-					put(grammarAccess.getInnerDeclarationAccess().getGroup(), "rule__InnerDeclaration__Group__0");
-					put(grammarAccess.getSignatureAccess().getGroup(), "rule__Signature__Group__0");
-					put(grammarAccess.getSignatureAccess().getGroup_3(), "rule__Signature__Group_3__0");
-					put(grammarAccess.getSignatureAccess().getGroup_3_1(), "rule__Signature__Group_3_1__0");
-					put(grammarAccess.getParameterAccess().getGroup(), "rule__Parameter__Group__0");
-					put(grammarAccess.getProvidedRoleAccess().getGroup(), "rule__ProvidedRole__Group__0");
-					put(grammarAccess.getRequiredRoleAccess().getGroup(), "rule__RequiredRole__Group__0");
-					put(grammarAccess.getBasicComponentAccess().getGroup(), "rule__BasicComponent__Group__0");
-					put(grammarAccess.getBasicComponentAccess().getGroup_2(), "rule__BasicComponent__Group_2__0");
-					put(grammarAccess.getBasicComponentAccess().getGroup_2_1(), "rule__BasicComponent__Group_2_1__0");
-					put(grammarAccess.getBasicComponentAccess().getGroup_3(), "rule__BasicComponent__Group_3__0");
-					put(grammarAccess.getBasicComponentAccess().getGroup_3_1(), "rule__BasicComponent__Group_3_1__0");
-					put(grammarAccess.getBasicComponentAccess().getGroup_5(), "rule__BasicComponent__Group_5__0");
-					put(grammarAccess.getBasicComponentAccess().getGroup_5_3(), "rule__BasicComponent__Group_5_3__0");
-					put(grammarAccess.getCompositeComponentAccess().getGroup(), "rule__CompositeComponent__Group__0");
-					put(grammarAccess.getCompositeComponentAccess().getGroup_2(), "rule__CompositeComponent__Group_2__0");
-					put(grammarAccess.getCompositeComponentAccess().getGroup_2_1(), "rule__CompositeComponent__Group_2_1__0");
-					put(grammarAccess.getCompositeComponentAccess().getGroup_3(), "rule__CompositeComponent__Group_3__0");
-					put(grammarAccess.getCompositeComponentAccess().getGroup_3_1(), "rule__CompositeComponent__Group_3_1__0");
-					put(grammarAccess.getCompositeComponentAccess().getGroup_5(), "rule__CompositeComponent__Group_5__0");
-					put(grammarAccess.getCompositeComponentAccess().getGroup_5_3(), "rule__CompositeComponent__Group_5_3__0");
-					put(grammarAccess.getCompositeComponentAccess().getGroup_6(), "rule__CompositeComponent__Group_6__0");
-					put(grammarAccess.getSubSystemAccess().getGroup(), "rule__SubSystem__Group__0");
-					put(grammarAccess.getSubSystemAccess().getGroup_2(), "rule__SubSystem__Group_2__0");
-					put(grammarAccess.getSubSystemAccess().getGroup_2_3(), "rule__SubSystem__Group_2_3__0");
-					put(grammarAccess.getSubSystemAccess().getGroup_3(), "rule__SubSystem__Group_3__0");
-					put(grammarAccess.getSubSystemAccess().getGroup_3_3(), "rule__SubSystem__Group_3_3__0");
-					put(grammarAccess.getSubSystemAccess().getGroup_5(), "rule__SubSystem__Group_5__0");
-					put(grammarAccess.getSubSystemAccess().getGroup_5_3(), "rule__SubSystem__Group_5_3__0");
-					put(grammarAccess.getSubSystemAccess().getGroup_6(), "rule__SubSystem__Group_6__0");
-					put(grammarAccess.getComposedStructureAssemblyAccess().getGroup(), "rule__ComposedStructureAssembly__Group__0");
-					put(grammarAccess.getComposedStructureAssemblyAccess().getGroup_3(), "rule__ComposedStructureAssembly__Group_3__0");
-					put(grammarAccess.getComposedStructureAssemblyAccess().getGroup_3_3(), "rule__ComposedStructureAssembly__Group_3_3__0");
-					put(grammarAccess.getComposedStructureAssemblyAccess().getGroup_4(), "rule__ComposedStructureAssembly__Group_4__0");
-					put(grammarAccess.getComposedStructureAssemblyAccess().getGroup_4_3(), "rule__ComposedStructureAssembly__Group_4_3__0");
-					put(grammarAccess.getComposedStructureAssemblyAccess().getGroup_5(), "rule__ComposedStructureAssembly__Group_5__0");
-					put(grammarAccess.getComposedStructureAssemblyAccess().getGroup_5_3(), "rule__ComposedStructureAssembly__Group_5_3__0");
-					put(grammarAccess.getComposedStructureAssemblyAccess().getGroup_6(), "rule__ComposedStructureAssembly__Group_6__0");
-					put(grammarAccess.getComposedStructureAssemblyAccess().getGroup_6_3(), "rule__ComposedStructureAssembly__Group_6_3__0");
-					put(grammarAccess.getAssemblyContextAccess().getGroup(), "rule__AssemblyContext__Group__0");
-					put(grammarAccess.getAssemblyConnectorAccess().getGroup(), "rule__AssemblyConnector__Group__0");
-					put(grammarAccess.getProvidedDelegationConnectorAccess().getGroup(), "rule__ProvidedDelegationConnector__Group__0");
-					put(grammarAccess.getRequiredDelegationConnectorAccess().getGroup(), "rule__RequiredDelegationConnector__Group__0");
-					put(grammarAccess.getRepositoryAccess().getNameAssignment_1(), "rule__Repository__NameAssignment_1");
-					put(grammarAccess.getRepositoryAccess().getImportsAssignment_3_2(), "rule__Repository__ImportsAssignment_3_2");
-					put(grammarAccess.getRepositoryAccess().getImportsAssignment_3_3_1(), "rule__Repository__ImportsAssignment_3_3_1");
-					put(grammarAccess.getRepositoryAccess().getDatatypesAssignment_4_2(), "rule__Repository__DatatypesAssignment_4_2");
-					put(grammarAccess.getRepositoryAccess().getDatatypesAssignment_4_3_1(), "rule__Repository__DatatypesAssignment_4_3_1");
-					put(grammarAccess.getRepositoryAccess().getComponentsAssignment_5_2(), "rule__Repository__ComponentsAssignment_5_2");
-					put(grammarAccess.getRepositoryAccess().getComponentsAssignment_5_3_1(), "rule__Repository__ComponentsAssignment_5_3_1");
-					put(grammarAccess.getRepositoryAccess().getInterfacesAssignment_6_2(), "rule__Repository__InterfacesAssignment_6_2");
-					put(grammarAccess.getRepositoryAccess().getInterfacesAssignment_6_3_1(), "rule__Repository__InterfacesAssignment_6_3_1");
-					put(grammarAccess.getImportAccess().getImportedNamespaceAssignment_1(), "rule__Import__ImportedNamespaceAssignment_1");
-					put(grammarAccess.getInterfaceAccess().getNameAssignment_1(), "rule__Interface__NameAssignment_1");
-					put(grammarAccess.getInterfaceAccess().getParentInterfacesAssignment_3_2(), "rule__Interface__ParentInterfacesAssignment_3_2");
-					put(grammarAccess.getInterfaceAccess().getParentInterfacesAssignment_3_3_1(), "rule__Interface__ParentInterfacesAssignment_3_3_1");
-					put(grammarAccess.getInterfaceAccess().getSignaturesAssignment_4_0(), "rule__Interface__SignaturesAssignment_4_0");
-					put(grammarAccess.getInterfaceAccess().getSignaturesAssignment_4_1_1(), "rule__Interface__SignaturesAssignment_4_1_1");
-					put(grammarAccess.getRepositoryComponent_ImplAccess().getNameAssignment_1(), "rule__RepositoryComponent_Impl__NameAssignment_1");
-					put(grammarAccess.getRepositoryComponent_ImplAccess().getRelationshipAssignment_3_2(), "rule__RepositoryComponent_Impl__RelationshipAssignment_3_2");
-					put(grammarAccess.getRepositoryComponent_ImplAccess().getRelationshipAssignment_3_3_1(), "rule__RepositoryComponent_Impl__RelationshipAssignment_3_3_1");
-					put(grammarAccess.getRepositoryComponent_ImplAccess().getProvidedRolesAssignment_4_2(), "rule__RepositoryComponent_Impl__ProvidedRolesAssignment_4_2");
-					put(grammarAccess.getRepositoryComponent_ImplAccess().getProvidedRolesAssignment_4_3_1(), "rule__RepositoryComponent_Impl__ProvidedRolesAssignment_4_3_1");
-					put(grammarAccess.getRepositoryComponent_ImplAccess().getRequiredRolesAssignment_5_2(), "rule__RepositoryComponent_Impl__RequiredRolesAssignment_5_2");
-					put(grammarAccess.getRepositoryComponent_ImplAccess().getRequiredRolesAssignment_5_3_1(), "rule__RepositoryComponent_Impl__RequiredRolesAssignment_5_3_1");
-					put(grammarAccess.getCollectionDataTypeAccess().getNameAssignment_1(), "rule__CollectionDataType__NameAssignment_1");
-					put(grammarAccess.getCollectionDataTypeAccess().getInnerTypeAssignment_4(), "rule__CollectionDataType__InnerTypeAssignment_4");
-					put(grammarAccess.getCompositeDataTypeAccess().getNameAssignment_1(), "rule__CompositeDataType__NameAssignment_1");
-					put(grammarAccess.getCompositeDataTypeAccess().getParentTypesAssignment_3_2(), "rule__CompositeDataType__ParentTypesAssignment_3_2");
-					put(grammarAccess.getCompositeDataTypeAccess().getParentTypesAssignment_3_3_1(), "rule__CompositeDataType__ParentTypesAssignment_3_3_1");
-					put(grammarAccess.getCompositeDataTypeAccess().getInnerDeclarationsAssignment_4_2(), "rule__CompositeDataType__InnerDeclarationsAssignment_4_2");
-					put(grammarAccess.getCompositeDataTypeAccess().getInnerDeclarationsAssignment_4_3_1(), "rule__CompositeDataType__InnerDeclarationsAssignment_4_3_1");
-					put(grammarAccess.getPrimitiveDataTypeAccess().getTypeAssignment_3(), "rule__PrimitiveDataType__TypeAssignment_3");
-					put(grammarAccess.getPrimitiveDataTypeAccess().getNameAssignment_5(), "rule__PrimitiveDataType__NameAssignment_5");
-					put(grammarAccess.getInnerDeclarationAccess().getNameAssignment_1(), "rule__InnerDeclaration__NameAssignment_1");
-					put(grammarAccess.getInnerDeclarationAccess().getDataTypeAssignment_4(), "rule__InnerDeclaration__DataTypeAssignment_4");
-					put(grammarAccess.getSignatureAccess().getReturnTypeAssignment_0_0(), "rule__Signature__ReturnTypeAssignment_0_0");
-					put(grammarAccess.getSignatureAccess().getNameAssignment_1(), "rule__Signature__NameAssignment_1");
-					put(grammarAccess.getSignatureAccess().getParametersAssignment_3_0(), "rule__Signature__ParametersAssignment_3_0");
-					put(grammarAccess.getSignatureAccess().getParametersAssignment_3_1_1(), "rule__Signature__ParametersAssignment_3_1_1");
-					put(grammarAccess.getParameterAccess().getDataTypeAssignment_0(), "rule__Parameter__DataTypeAssignment_0");
-					put(grammarAccess.getParameterAccess().getNameAssignment_1(), "rule__Parameter__NameAssignment_1");
-					put(grammarAccess.getProvidedRoleAccess().getInterfaceAssignment_1(), "rule__ProvidedRole__InterfaceAssignment_1");
-					put(grammarAccess.getRequiredRoleAccess().getInterfaceAssignment_1(), "rule__RequiredRole__InterfaceAssignment_1");
-					put(grammarAccess.getBasicComponentAccess().getNameAssignment_1(), "rule__BasicComponent__NameAssignment_1");
-					put(grammarAccess.getBasicComponentAccess().getProvidedRolesAssignment_2_0(), "rule__BasicComponent__ProvidedRolesAssignment_2_0");
-					put(grammarAccess.getBasicComponentAccess().getProvidedRolesAssignment_2_1_1(), "rule__BasicComponent__ProvidedRolesAssignment_2_1_1");
-					put(grammarAccess.getBasicComponentAccess().getRequiredRolesAssignment_3_0(), "rule__BasicComponent__RequiredRolesAssignment_3_0");
-					put(grammarAccess.getBasicComponentAccess().getRequiredRolesAssignment_3_1_1(), "rule__BasicComponent__RequiredRolesAssignment_3_1_1");
-					put(grammarAccess.getBasicComponentAccess().getRelationshipAssignment_5_2(), "rule__BasicComponent__RelationshipAssignment_5_2");
-					put(grammarAccess.getBasicComponentAccess().getRelationshipAssignment_5_3_1(), "rule__BasicComponent__RelationshipAssignment_5_3_1");
-					put(grammarAccess.getCompositeComponentAccess().getNameAssignment_1(), "rule__CompositeComponent__NameAssignment_1");
-					put(grammarAccess.getCompositeComponentAccess().getProvidedRolesAssignment_2_0(), "rule__CompositeComponent__ProvidedRolesAssignment_2_0");
-					put(grammarAccess.getCompositeComponentAccess().getProvidedRolesAssignment_2_1_1(), "rule__CompositeComponent__ProvidedRolesAssignment_2_1_1");
-					put(grammarAccess.getCompositeComponentAccess().getRequiredRolesAssignment_3_0(), "rule__CompositeComponent__RequiredRolesAssignment_3_0");
-					put(grammarAccess.getCompositeComponentAccess().getRequiredRolesAssignment_3_1_1(), "rule__CompositeComponent__RequiredRolesAssignment_3_1_1");
-					put(grammarAccess.getCompositeComponentAccess().getRelationshipAssignment_5_2(), "rule__CompositeComponent__RelationshipAssignment_5_2");
-					put(grammarAccess.getCompositeComponentAccess().getRelationshipAssignment_5_3_1(), "rule__CompositeComponent__RelationshipAssignment_5_3_1");
-					put(grammarAccess.getCompositeComponentAccess().getAssemblyAssignment_6_1(), "rule__CompositeComponent__AssemblyAssignment_6_1");
-					put(grammarAccess.getSubSystemAccess().getNameAssignment_1(), "rule__SubSystem__NameAssignment_1");
-					put(grammarAccess.getSubSystemAccess().getProvidedRolesAssignment_2_2(), "rule__SubSystem__ProvidedRolesAssignment_2_2");
-					put(grammarAccess.getSubSystemAccess().getProvidedRolesAssignment_2_3_1(), "rule__SubSystem__ProvidedRolesAssignment_2_3_1");
-					put(grammarAccess.getSubSystemAccess().getRequiredRolesAssignment_3_2(), "rule__SubSystem__RequiredRolesAssignment_3_2");
-					put(grammarAccess.getSubSystemAccess().getRequiredRolesAssignment_3_3_1(), "rule__SubSystem__RequiredRolesAssignment_3_3_1");
-					put(grammarAccess.getSubSystemAccess().getRelationshipAssignment_5_2(), "rule__SubSystem__RelationshipAssignment_5_2");
-					put(grammarAccess.getSubSystemAccess().getRelationshipAssignment_5_3_1(), "rule__SubSystem__RelationshipAssignment_5_3_1");
-					put(grammarAccess.getSubSystemAccess().getAssemblyAssignment_6_1(), "rule__SubSystem__AssemblyAssignment_6_1");
-					put(grammarAccess.getComposedStructureAssemblyAccess().getAssemblyContextsAssignment_3_2(), "rule__ComposedStructureAssembly__AssemblyContextsAssignment_3_2");
-					put(grammarAccess.getComposedStructureAssemblyAccess().getAssemblyContextsAssignment_3_3_1(), "rule__ComposedStructureAssembly__AssemblyContextsAssignment_3_3_1");
-					put(grammarAccess.getComposedStructureAssemblyAccess().getAssemblyConnectorsAssignment_4_2(), "rule__ComposedStructureAssembly__AssemblyConnectorsAssignment_4_2");
-					put(grammarAccess.getComposedStructureAssemblyAccess().getAssemblyConnectorsAssignment_4_3_1(), "rule__ComposedStructureAssembly__AssemblyConnectorsAssignment_4_3_1");
-					put(grammarAccess.getComposedStructureAssemblyAccess().getProvidedDelegationConnectorsAssignment_5_2(), "rule__ComposedStructureAssembly__ProvidedDelegationConnectorsAssignment_5_2");
-					put(grammarAccess.getComposedStructureAssemblyAccess().getProvidedDelegationConnectorsAssignment_5_3_1(), "rule__ComposedStructureAssembly__ProvidedDelegationConnectorsAssignment_5_3_1");
-					put(grammarAccess.getComposedStructureAssemblyAccess().getRequiredDelegationConnectorsAssignment_6_2(), "rule__ComposedStructureAssembly__RequiredDelegationConnectorsAssignment_6_2");
-					put(grammarAccess.getComposedStructureAssemblyAccess().getRequiredDelegationConnectorsAssignment_6_3_1(), "rule__ComposedStructureAssembly__RequiredDelegationConnectorsAssignment_6_3_1");
-					put(grammarAccess.getAssemblyContextAccess().getNameAssignment_1(), "rule__AssemblyContext__NameAssignment_1");
-					put(grammarAccess.getAssemblyContextAccess().getEncapsulatedComponentAssignment_4(), "rule__AssemblyContext__EncapsulatedComponentAssignment_4");
-					put(grammarAccess.getAssemblyConnectorAccess().getNameAssignment_1(), "rule__AssemblyConnector__NameAssignment_1");
-					put(grammarAccess.getAssemblyConnectorAccess().getRequiredRoleAssignment_4(), "rule__AssemblyConnector__RequiredRoleAssignment_4");
-					put(grammarAccess.getAssemblyConnectorAccess().getProvidedRoleAssignment_6(), "rule__AssemblyConnector__ProvidedRoleAssignment_6");
-					put(grammarAccess.getAssemblyConnectorAccess().getProvidingAssemblyContextAssignment_8(), "rule__AssemblyConnector__ProvidingAssemblyContextAssignment_8");
-					put(grammarAccess.getAssemblyConnectorAccess().getRequiringAssemblyContextAssignment_10(), "rule__AssemblyConnector__RequiringAssemblyContextAssignment_10");
-					put(grammarAccess.getProvidedDelegationConnectorAccess().getNameAssignment_1(), "rule__ProvidedDelegationConnector__NameAssignment_1");
-					put(grammarAccess.getProvidedDelegationConnectorAccess().getAssemblyContextAssignment_4(), "rule__ProvidedDelegationConnector__AssemblyContextAssignment_4");
-					put(grammarAccess.getProvidedDelegationConnectorAccess().getInnerProvidedRoleAssignment_6(), "rule__ProvidedDelegationConnector__InnerProvidedRoleAssignment_6");
-					put(grammarAccess.getProvidedDelegationConnectorAccess().getOuterProvidedRoleAssignment_8(), "rule__ProvidedDelegationConnector__OuterProvidedRoleAssignment_8");
-					put(grammarAccess.getRequiredDelegationConnectorAccess().getNameAssignment_1(), "rule__RequiredDelegationConnector__NameAssignment_1");
-					put(grammarAccess.getRequiredDelegationConnectorAccess().getAssemblyContextAssignment_4(), "rule__RequiredDelegationConnector__AssemblyContextAssignment_4");
-					put(grammarAccess.getRequiredDelegationConnectorAccess().getInnerRequiredRoleAssignment_6(), "rule__RequiredDelegationConnector__InnerRequiredRoleAssignment_6");
-					put(grammarAccess.getRequiredDelegationConnectorAccess().getOuterRequiredRoleAssignment_8(), "rule__RequiredDelegationConnector__OuterRequiredRoleAssignment_8");
-				}
-			};
-		}
-		return nameMappings.get(element);
-	}
-	
-	@Override
-	protected Collection<FollowElement> getFollowElements(AbstractInternalContentAssistParser parser) {
-		try {
-			org.xtext.example.mydsl.ui.contentassist.antlr.internal.InternalMyDslTestParser typedParser = (org.xtext.example.mydsl.ui.contentassist.antlr.internal.InternalMyDslTestParser) parser;
-			typedParser.entryRuleRepository();
-			return typedParser.getFollowElements();
-		} catch(RecognitionException ex) {
-			throw new RuntimeException(ex);
-		}		
-	}
-	
-	@Override
-	protected String[] getInitialHiddenTokens() {
-		return new String[] { "RULE_WS", "RULE_ML_COMMENT", "RULE_SL_COMMENT" };
-	}
-	
-	public MyDslTestGrammarAccess getGrammarAccess() {
-		return this.grammarAccess;
-	}
-	
-	public void setGrammarAccess(MyDslTestGrammarAccess grammarAccess) {
-		this.grammarAccess = grammarAccess;
-	}
-}
diff --git a/org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g b/org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g
deleted file mode 100644
index c0692bb6..00000000
--- a/org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g
+++ /dev/null
@@ -1,11888 +0,0 @@
-/*
-* generated by Xtext
-*/
-grammar InternalMyDslTest;
-
-options {
-	superClass=AbstractInternalContentAssistParser;
-	
-}
-
-@lexer::header {
-package org.xtext.example.mydsl.ui.contentassist.antlr.internal;
-
-// Hack: Use our own Lexer superclass by means of import. 
-// Currently there is no other way to specify the superclass for the lexer.
-import org.eclipse.xtext.ui.editor.contentassist.antlr.internal.Lexer;
-}
-
-@parser::header {
-package org.xtext.example.mydsl.ui.contentassist.antlr.internal; 
-
-import java.io.InputStream;
-import org.eclipse.xtext.*;
-import org.eclipse.xtext.parser.*;
-import org.eclipse.xtext.parser.impl.*;
-import org.eclipse.emf.ecore.util.EcoreUtil;
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.xtext.parser.antlr.XtextTokenStream;
-import org.eclipse.xtext.parser.antlr.XtextTokenStream.HiddenTokens;
-import org.eclipse.xtext.ui.editor.contentassist.antlr.internal.AbstractInternalContentAssistParser;
-import org.eclipse.xtext.ui.editor.contentassist.antlr.internal.DFA;
-import org.xtext.example.mydsl.services.MyDslTestGrammarAccess;
-
-}
-
-@parser::members {
- 
- 	private MyDslTestGrammarAccess grammarAccess;
- 	
-    public void setGrammarAccess(MyDslTestGrammarAccess grammarAccess) {
-    	this.grammarAccess = grammarAccess;
-    }
-    
-    @Override
-    protected Grammar getGrammar() {
-    	return grammarAccess.getGrammar();
-    }
-    
-    @Override
-    protected String getValueForTokenName(String tokenName) {
-    	return tokenName;
-    }
-
-}
-
-
-
-
-// Entry rule entryRuleRepository
-entryRuleRepository 
-:
-{ before(grammarAccess.getRepositoryRule()); }
-	 ruleRepository
-{ after(grammarAccess.getRepositoryRule()); } 
-	 EOF 
-;
-
-// Rule Repository
-ruleRepository
-    @init {
-		int stackSize = keepStackSize();
-    }
-	:
-(
-{ before(grammarAccess.getRepositoryAccess().getGroup()); }
-(rule__Repository__Group__0)
-{ after(grammarAccess.getRepositoryAccess().getGroup()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-
-// Entry rule entryRuleImport
-entryRuleImport 
-:
-{ before(grammarAccess.getImportRule()); }
-	 ruleImport
-{ after(grammarAccess.getImportRule()); } 
-	 EOF 
-;
-
-// Rule Import
-ruleImport
-    @init {
-		int stackSize = keepStackSize();
-    }
-	:
-(
-{ before(grammarAccess.getImportAccess().getGroup()); }
-(rule__Import__Group__0)
-{ after(grammarAccess.getImportAccess().getGroup()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-
-// Entry rule entryRuleQualifiedNameWithWildCard
-entryRuleQualifiedNameWithWildCard 
-:
-{ before(grammarAccess.getQualifiedNameWithWildCardRule()); }
-	 ruleQualifiedNameWithWildCard
-{ after(grammarAccess.getQualifiedNameWithWildCardRule()); } 
-	 EOF 
-;
-
-// Rule QualifiedNameWithWildCard
-ruleQualifiedNameWithWildCard
-    @init {
-		int stackSize = keepStackSize();
-    }
-	:
-(
-{ before(grammarAccess.getQualifiedNameWithWildCardAccess().getGroup()); }
-(rule__QualifiedNameWithWildCard__Group__0)
-{ after(grammarAccess.getQualifiedNameWithWildCardAccess().getGroup()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-
-// Entry rule entryRuleQualifiedName
-entryRuleQualifiedName 
-:
-{ before(grammarAccess.getQualifiedNameRule()); }
-	 ruleQualifiedName
-{ after(grammarAccess.getQualifiedNameRule()); } 
-	 EOF 
-;
-
-// Rule QualifiedName
-ruleQualifiedName
-    @init {
-		int stackSize = keepStackSize();
-    }
-	:
-(
-{ before(grammarAccess.getQualifiedNameAccess().getGroup()); }
-(rule__QualifiedName__Group__0)
-{ after(grammarAccess.getQualifiedNameAccess().getGroup()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-
-// Entry rule entryRuleDataType
-entryRuleDataType 
-:
-{ before(grammarAccess.getDataTypeRule()); }
-	 ruleDataType
-{ after(grammarAccess.getDataTypeRule()); } 
-	 EOF 
-;
-
-// Rule DataType
-ruleDataType
-    @init {
-		int stackSize = keepStackSize();
-    }
-	:
-(
-{ before(grammarAccess.getDataTypeAccess().getAlternatives()); }
-(rule__DataType__Alternatives)
-{ after(grammarAccess.getDataTypeAccess().getAlternatives()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-
-// Entry rule entryRuleRepositoryComponent
-entryRuleRepositoryComponent 
-:
-{ before(grammarAccess.getRepositoryComponentRule()); }
-	 ruleRepositoryComponent
-{ after(grammarAccess.getRepositoryComponentRule()); } 
-	 EOF 
-;
-
-// Rule RepositoryComponent
-ruleRepositoryComponent
-    @init {
-		int stackSize = keepStackSize();
-    }
-	:
-(
-{ before(grammarAccess.getRepositoryComponentAccess().getAlternatives()); }
-(rule__RepositoryComponent__Alternatives)
-{ after(grammarAccess.getRepositoryComponentAccess().getAlternatives()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-
-// Entry rule entryRuleEString
-entryRuleEString 
-:
-{ before(grammarAccess.getEStringRule()); }
-	 ruleEString
-{ after(grammarAccess.getEStringRule()); } 
-	 EOF 
-;
-
-// Rule EString
-ruleEString
-    @init {
-		int stackSize = keepStackSize();
-    }
-	:
-(
-{ before(grammarAccess.getEStringAccess().getAlternatives()); }
-(rule__EString__Alternatives)
-{ after(grammarAccess.getEStringAccess().getAlternatives()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-
-// Entry rule entryRuleInterface
-entryRuleInterface 
-:
-{ before(grammarAccess.getInterfaceRule()); }
-	 ruleInterface
-{ after(grammarAccess.getInterfaceRule()); } 
-	 EOF 
-;
-
-// Rule Interface
-ruleInterface
-    @init {
-		int stackSize = keepStackSize();
-    }
-	:
-(
-{ before(grammarAccess.getInterfaceAccess().getGroup()); }
-(rule__Interface__Group__0)
-{ after(grammarAccess.getInterfaceAccess().getGroup()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-
-// Entry rule entryRuleRepositoryComponent_Impl
-entryRuleRepositoryComponent_Impl 
-:
-{ before(grammarAccess.getRepositoryComponent_ImplRule()); }
-	 ruleRepositoryComponent_Impl
-{ after(grammarAccess.getRepositoryComponent_ImplRule()); } 
-	 EOF 
-;
-
-// Rule RepositoryComponent_Impl
-ruleRepositoryComponent_Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-	:
-(
-{ before(grammarAccess.getRepositoryComponent_ImplAccess().getGroup()); }
-(rule__RepositoryComponent_Impl__Group__0)
-{ after(grammarAccess.getRepositoryComponent_ImplAccess().getGroup()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-
-// Entry rule entryRuleCollectionDataType
-entryRuleCollectionDataType 
-:
-{ before(grammarAccess.getCollectionDataTypeRule()); }
-	 ruleCollectionDataType
-{ after(grammarAccess.getCollectionDataTypeRule()); } 
-	 EOF 
-;
-
-// Rule CollectionDataType
-ruleCollectionDataType
-    @init {
-		int stackSize = keepStackSize();
-    }
-	:
-(
-{ before(grammarAccess.getCollectionDataTypeAccess().getGroup()); }
-(rule__CollectionDataType__Group__0)
-{ after(grammarAccess.getCollectionDataTypeAccess().getGroup()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-
-// Entry rule entryRuleCompositeDataType
-entryRuleCompositeDataType 
-:
-{ before(grammarAccess.getCompositeDataTypeRule()); }
-	 ruleCompositeDataType
-{ after(grammarAccess.getCompositeDataTypeRule()); } 
-	 EOF 
-;
-
-// Rule CompositeDataType
-ruleCompositeDataType
-    @init {
-		int stackSize = keepStackSize();
-    }
-	:
-(
-{ before(grammarAccess.getCompositeDataTypeAccess().getGroup()); }
-(rule__CompositeDataType__Group__0)
-{ after(grammarAccess.getCompositeDataTypeAccess().getGroup()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-
-// Entry rule entryRulePrimitiveDataType
-entryRulePrimitiveDataType 
-:
-{ before(grammarAccess.getPrimitiveDataTypeRule()); }
-	 rulePrimitiveDataType
-{ after(grammarAccess.getPrimitiveDataTypeRule()); } 
-	 EOF 
-;
-
-// Rule PrimitiveDataType
-rulePrimitiveDataType
-    @init {
-		int stackSize = keepStackSize();
-    }
-	:
-(
-{ before(grammarAccess.getPrimitiveDataTypeAccess().getGroup()); }
-(rule__PrimitiveDataType__Group__0)
-{ after(grammarAccess.getPrimitiveDataTypeAccess().getGroup()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-
-// Entry rule entryRuleInnerDeclaration
-entryRuleInnerDeclaration 
-:
-{ before(grammarAccess.getInnerDeclarationRule()); }
-	 ruleInnerDeclaration
-{ after(grammarAccess.getInnerDeclarationRule()); } 
-	 EOF 
-;
-
-// Rule InnerDeclaration
-ruleInnerDeclaration
-    @init {
-		int stackSize = keepStackSize();
-    }
-	:
-(
-{ before(grammarAccess.getInnerDeclarationAccess().getGroup()); }
-(rule__InnerDeclaration__Group__0)
-{ after(grammarAccess.getInnerDeclarationAccess().getGroup()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-
-// Entry rule entryRuleSignature
-entryRuleSignature 
-:
-{ before(grammarAccess.getSignatureRule()); }
-	 ruleSignature
-{ after(grammarAccess.getSignatureRule()); } 
-	 EOF 
-;
-
-// Rule Signature
-ruleSignature
-    @init {
-		int stackSize = keepStackSize();
-    }
-	:
-(
-{ before(grammarAccess.getSignatureAccess().getGroup()); }
-(rule__Signature__Group__0)
-{ after(grammarAccess.getSignatureAccess().getGroup()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-
-// Entry rule entryRuleParameter
-entryRuleParameter 
-:
-{ before(grammarAccess.getParameterRule()); }
-	 ruleParameter
-{ after(grammarAccess.getParameterRule()); } 
-	 EOF 
-;
-
-// Rule Parameter
-ruleParameter
-    @init {
-		int stackSize = keepStackSize();
-    }
-	:
-(
-{ before(grammarAccess.getParameterAccess().getGroup()); }
-(rule__Parameter__Group__0)
-{ after(grammarAccess.getParameterAccess().getGroup()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-
-// Entry rule entryRuleProvidedRole
-entryRuleProvidedRole 
-:
-{ before(grammarAccess.getProvidedRoleRule()); }
-	 ruleProvidedRole
-{ after(grammarAccess.getProvidedRoleRule()); } 
-	 EOF 
-;
-
-// Rule ProvidedRole
-ruleProvidedRole
-    @init {
-		int stackSize = keepStackSize();
-    }
-	:
-(
-{ before(grammarAccess.getProvidedRoleAccess().getGroup()); }
-(rule__ProvidedRole__Group__0)
-{ after(grammarAccess.getProvidedRoleAccess().getGroup()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-
-// Entry rule entryRuleRequiredRole
-entryRuleRequiredRole 
-:
-{ before(grammarAccess.getRequiredRoleRule()); }
-	 ruleRequiredRole
-{ after(grammarAccess.getRequiredRoleRule()); } 
-	 EOF 
-;
-
-// Rule RequiredRole
-ruleRequiredRole
-    @init {
-		int stackSize = keepStackSize();
-    }
-	:
-(
-{ before(grammarAccess.getRequiredRoleAccess().getGroup()); }
-(rule__RequiredRole__Group__0)
-{ after(grammarAccess.getRequiredRoleAccess().getGroup()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-
-// Entry rule entryRuleBasicComponent
-entryRuleBasicComponent 
-:
-{ before(grammarAccess.getBasicComponentRule()); }
-	 ruleBasicComponent
-{ after(grammarAccess.getBasicComponentRule()); } 
-	 EOF 
-;
-
-// Rule BasicComponent
-ruleBasicComponent
-    @init {
-		int stackSize = keepStackSize();
-    }
-	:
-(
-{ before(grammarAccess.getBasicComponentAccess().getGroup()); }
-(rule__BasicComponent__Group__0)
-{ after(grammarAccess.getBasicComponentAccess().getGroup()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-
-// Entry rule entryRuleCompositeComponent
-entryRuleCompositeComponent 
-:
-{ before(grammarAccess.getCompositeComponentRule()); }
-	 ruleCompositeComponent
-{ after(grammarAccess.getCompositeComponentRule()); } 
-	 EOF 
-;
-
-// Rule CompositeComponent
-ruleCompositeComponent
-    @init {
-		int stackSize = keepStackSize();
-    }
-	:
-(
-{ before(grammarAccess.getCompositeComponentAccess().getGroup()); }
-(rule__CompositeComponent__Group__0)
-{ after(grammarAccess.getCompositeComponentAccess().getGroup()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-
-// Entry rule entryRuleSubSystem
-entryRuleSubSystem 
-:
-{ before(grammarAccess.getSubSystemRule()); }
-	 ruleSubSystem
-{ after(grammarAccess.getSubSystemRule()); } 
-	 EOF 
-;
-
-// Rule SubSystem
-ruleSubSystem
-    @init {
-		int stackSize = keepStackSize();
-    }
-	:
-(
-{ before(grammarAccess.getSubSystemAccess().getGroup()); }
-(rule__SubSystem__Group__0)
-{ after(grammarAccess.getSubSystemAccess().getGroup()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-
-// Entry rule entryRuleComposedStructureAssembly
-entryRuleComposedStructureAssembly 
-:
-{ before(grammarAccess.getComposedStructureAssemblyRule()); }
-	 ruleComposedStructureAssembly
-{ after(grammarAccess.getComposedStructureAssemblyRule()); } 
-	 EOF 
-;
-
-// Rule ComposedStructureAssembly
-ruleComposedStructureAssembly
-    @init {
-		int stackSize = keepStackSize();
-    }
-	:
-(
-{ before(grammarAccess.getComposedStructureAssemblyAccess().getGroup()); }
-(rule__ComposedStructureAssembly__Group__0)
-{ after(grammarAccess.getComposedStructureAssemblyAccess().getGroup()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-
-// Entry rule entryRuleAssemblyContext
-entryRuleAssemblyContext 
-:
-{ before(grammarAccess.getAssemblyContextRule()); }
-	 ruleAssemblyContext
-{ after(grammarAccess.getAssemblyContextRule()); } 
-	 EOF 
-;
-
-// Rule AssemblyContext
-ruleAssemblyContext
-    @init {
-		int stackSize = keepStackSize();
-    }
-	:
-(
-{ before(grammarAccess.getAssemblyContextAccess().getGroup()); }
-(rule__AssemblyContext__Group__0)
-{ after(grammarAccess.getAssemblyContextAccess().getGroup()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-
-// Entry rule entryRuleAssemblyConnector
-entryRuleAssemblyConnector 
-:
-{ before(grammarAccess.getAssemblyConnectorRule()); }
-	 ruleAssemblyConnector
-{ after(grammarAccess.getAssemblyConnectorRule()); } 
-	 EOF 
-;
-
-// Rule AssemblyConnector
-ruleAssemblyConnector
-    @init {
-		int stackSize = keepStackSize();
-    }
-	:
-(
-{ before(grammarAccess.getAssemblyConnectorAccess().getGroup()); }
-(rule__AssemblyConnector__Group__0)
-{ after(grammarAccess.getAssemblyConnectorAccess().getGroup()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-
-// Entry rule entryRuleProvidedDelegationConnector
-entryRuleProvidedDelegationConnector 
-:
-{ before(grammarAccess.getProvidedDelegationConnectorRule()); }
-	 ruleProvidedDelegationConnector
-{ after(grammarAccess.getProvidedDelegationConnectorRule()); } 
-	 EOF 
-;
-
-// Rule ProvidedDelegationConnector
-ruleProvidedDelegationConnector
-    @init {
-		int stackSize = keepStackSize();
-    }
-	:
-(
-{ before(grammarAccess.getProvidedDelegationConnectorAccess().getGroup()); }
-(rule__ProvidedDelegationConnector__Group__0)
-{ after(grammarAccess.getProvidedDelegationConnectorAccess().getGroup()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-
-// Entry rule entryRuleRequiredDelegationConnector
-entryRuleRequiredDelegationConnector 
-:
-{ before(grammarAccess.getRequiredDelegationConnectorRule()); }
-	 ruleRequiredDelegationConnector
-{ after(grammarAccess.getRequiredDelegationConnectorRule()); } 
-	 EOF 
-;
-
-// Rule RequiredDelegationConnector
-ruleRequiredDelegationConnector
-    @init {
-		int stackSize = keepStackSize();
-    }
-	:
-(
-{ before(grammarAccess.getRequiredDelegationConnectorAccess().getGroup()); }
-(rule__RequiredDelegationConnector__Group__0)
-{ after(grammarAccess.getRequiredDelegationConnectorAccess().getGroup()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-
-
-// Rule PrimitiveTypeEnum
-rulePrimitiveTypeEnum
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getPrimitiveTypeEnumAccess().getAlternatives()); }
-(rule__PrimitiveTypeEnum__Alternatives)
-{ after(grammarAccess.getPrimitiveTypeEnumAccess().getAlternatives()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-
-rule__DataType__Alternatives
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getDataTypeAccess().getCollectionDataTypeParserRuleCall_0()); }
-	ruleCollectionDataType
-{ after(grammarAccess.getDataTypeAccess().getCollectionDataTypeParserRuleCall_0()); }
-)
-
-    |(
-{ before(grammarAccess.getDataTypeAccess().getCompositeDataTypeParserRuleCall_1()); }
-	ruleCompositeDataType
-{ after(grammarAccess.getDataTypeAccess().getCompositeDataTypeParserRuleCall_1()); }
-)
-
-    |(
-{ before(grammarAccess.getDataTypeAccess().getPrimitiveDataTypeParserRuleCall_2()); }
-	rulePrimitiveDataType
-{ after(grammarAccess.getDataTypeAccess().getPrimitiveDataTypeParserRuleCall_2()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__RepositoryComponent__Alternatives
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRepositoryComponentAccess().getRepositoryComponent_ImplParserRuleCall_0()); }
-	ruleRepositoryComponent_Impl
-{ after(grammarAccess.getRepositoryComponentAccess().getRepositoryComponent_ImplParserRuleCall_0()); }
-)
-
-    |(
-{ before(grammarAccess.getRepositoryComponentAccess().getBasicComponentParserRuleCall_1()); }
-	ruleBasicComponent
-{ after(grammarAccess.getRepositoryComponentAccess().getBasicComponentParserRuleCall_1()); }
-)
-
-    |(
-{ before(grammarAccess.getRepositoryComponentAccess().getCompositeComponentParserRuleCall_2()); }
-	ruleCompositeComponent
-{ after(grammarAccess.getRepositoryComponentAccess().getCompositeComponentParserRuleCall_2()); }
-)
-
-    |(
-{ before(grammarAccess.getRepositoryComponentAccess().getSubSystemParserRuleCall_3()); }
-	ruleSubSystem
-{ after(grammarAccess.getRepositoryComponentAccess().getSubSystemParserRuleCall_3()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__EString__Alternatives
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getEStringAccess().getSTRINGTerminalRuleCall_0()); }
-	RULE_STRING
-{ after(grammarAccess.getEStringAccess().getSTRINGTerminalRuleCall_0()); }
-)
-
-    |(
-{ before(grammarAccess.getEStringAccess().getIDTerminalRuleCall_1()); }
-	RULE_ID
-{ after(grammarAccess.getEStringAccess().getIDTerminalRuleCall_1()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__Signature__Alternatives_0
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getSignatureAccess().getReturnTypeAssignment_0_0()); }
-(rule__Signature__ReturnTypeAssignment_0_0)
-{ after(grammarAccess.getSignatureAccess().getReturnTypeAssignment_0_0()); }
-)
-
-    |(
-{ before(grammarAccess.getSignatureAccess().getVoidKeyword_0_1()); }
-
-	'void' 
-
-{ after(grammarAccess.getSignatureAccess().getVoidKeyword_0_1()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__PrimitiveTypeEnum__Alternatives
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getPrimitiveTypeEnumAccess().getINTEnumLiteralDeclaration_0()); }
-(	'INT' 
-)
-{ after(grammarAccess.getPrimitiveTypeEnumAccess().getINTEnumLiteralDeclaration_0()); }
-)
-
-    |(
-{ before(grammarAccess.getPrimitiveTypeEnumAccess().getSTRINGEnumLiteralDeclaration_1()); }
-(	'STRING' 
-)
-{ after(grammarAccess.getPrimitiveTypeEnumAccess().getSTRINGEnumLiteralDeclaration_1()); }
-)
-
-    |(
-{ before(grammarAccess.getPrimitiveTypeEnumAccess().getBOOLEnumLiteralDeclaration_2()); }
-(	'BOOL' 
-)
-{ after(grammarAccess.getPrimitiveTypeEnumAccess().getBOOLEnumLiteralDeclaration_2()); }
-)
-
-    |(
-{ before(grammarAccess.getPrimitiveTypeEnumAccess().getDOUBLEEnumLiteralDeclaration_3()); }
-(	'DOUBLE' 
-)
-{ after(grammarAccess.getPrimitiveTypeEnumAccess().getDOUBLEEnumLiteralDeclaration_3()); }
-)
-
-    |(
-{ before(grammarAccess.getPrimitiveTypeEnumAccess().getCHAREnumLiteralDeclaration_4()); }
-(	'CHAR' 
-)
-{ after(grammarAccess.getPrimitiveTypeEnumAccess().getCHAREnumLiteralDeclaration_4()); }
-)
-
-    |(
-{ before(grammarAccess.getPrimitiveTypeEnumAccess().getBYTEEnumLiteralDeclaration_5()); }
-(	'BYTE' 
-)
-{ after(grammarAccess.getPrimitiveTypeEnumAccess().getBYTEEnumLiteralDeclaration_5()); }
-)
-
-    |(
-{ before(grammarAccess.getPrimitiveTypeEnumAccess().getLONGEnumLiteralDeclaration_6()); }
-(	'LONG' 
-)
-{ after(grammarAccess.getPrimitiveTypeEnumAccess().getLONGEnumLiteralDeclaration_6()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-
-rule__Repository__Group__0
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__Repository__Group__0__Impl
-	rule__Repository__Group__1
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__Repository__Group__0__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRepositoryAccess().getRepositoryKeyword_0()); }
-
-	'Repository' 
-
-{ after(grammarAccess.getRepositoryAccess().getRepositoryKeyword_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__Repository__Group__1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__Repository__Group__1__Impl
-	rule__Repository__Group__2
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__Repository__Group__1__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRepositoryAccess().getNameAssignment_1()); }
-(rule__Repository__NameAssignment_1)
-{ after(grammarAccess.getRepositoryAccess().getNameAssignment_1()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__Repository__Group__2
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__Repository__Group__2__Impl
-	rule__Repository__Group__3
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__Repository__Group__2__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRepositoryAccess().getLeftCurlyBracketKeyword_2()); }
-
-	'{' 
-
-{ after(grammarAccess.getRepositoryAccess().getLeftCurlyBracketKeyword_2()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__Repository__Group__3
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__Repository__Group__3__Impl
-	rule__Repository__Group__4
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__Repository__Group__3__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRepositoryAccess().getGroup_3()); }
-(rule__Repository__Group_3__0)?
-{ after(grammarAccess.getRepositoryAccess().getGroup_3()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__Repository__Group__4
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__Repository__Group__4__Impl
-	rule__Repository__Group__5
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__Repository__Group__4__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRepositoryAccess().getGroup_4()); }
-(rule__Repository__Group_4__0)?
-{ after(grammarAccess.getRepositoryAccess().getGroup_4()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__Repository__Group__5
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__Repository__Group__5__Impl
-	rule__Repository__Group__6
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__Repository__Group__5__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRepositoryAccess().getGroup_5()); }
-(rule__Repository__Group_5__0)?
-{ after(grammarAccess.getRepositoryAccess().getGroup_5()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__Repository__Group__6
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__Repository__Group__6__Impl
-	rule__Repository__Group__7
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__Repository__Group__6__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRepositoryAccess().getGroup_6()); }
-(rule__Repository__Group_6__0)?
-{ after(grammarAccess.getRepositoryAccess().getGroup_6()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__Repository__Group__7
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__Repository__Group__7__Impl
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__Repository__Group__7__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRepositoryAccess().getRightCurlyBracketKeyword_7()); }
-
-	'}' 
-
-{ after(grammarAccess.getRepositoryAccess().getRightCurlyBracketKeyword_7()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-rule__Repository__Group_3__0
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__Repository__Group_3__0__Impl
-	rule__Repository__Group_3__1
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__Repository__Group_3__0__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRepositoryAccess().getImportsKeyword_3_0()); }
-
-	'imports' 
-
-{ after(grammarAccess.getRepositoryAccess().getImportsKeyword_3_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__Repository__Group_3__1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__Repository__Group_3__1__Impl
-	rule__Repository__Group_3__2
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__Repository__Group_3__1__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRepositoryAccess().getLeftCurlyBracketKeyword_3_1()); }
-
-	'{' 
-
-{ after(grammarAccess.getRepositoryAccess().getLeftCurlyBracketKeyword_3_1()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__Repository__Group_3__2
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__Repository__Group_3__2__Impl
-	rule__Repository__Group_3__3
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__Repository__Group_3__2__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRepositoryAccess().getImportsAssignment_3_2()); }
-(rule__Repository__ImportsAssignment_3_2)
-{ after(grammarAccess.getRepositoryAccess().getImportsAssignment_3_2()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__Repository__Group_3__3
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__Repository__Group_3__3__Impl
-	rule__Repository__Group_3__4
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__Repository__Group_3__3__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRepositoryAccess().getGroup_3_3()); }
-(rule__Repository__Group_3_3__0)*
-{ after(grammarAccess.getRepositoryAccess().getGroup_3_3()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__Repository__Group_3__4
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__Repository__Group_3__4__Impl
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__Repository__Group_3__4__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRepositoryAccess().getRightCurlyBracketKeyword_3_4()); }
-
-	'}' 
-
-{ after(grammarAccess.getRepositoryAccess().getRightCurlyBracketKeyword_3_4()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-
-
-
-
-
-
-rule__Repository__Group_3_3__0
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__Repository__Group_3_3__0__Impl
-	rule__Repository__Group_3_3__1
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__Repository__Group_3_3__0__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRepositoryAccess().getCommaKeyword_3_3_0()); }
-
-	',' 
-
-{ after(grammarAccess.getRepositoryAccess().getCommaKeyword_3_3_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__Repository__Group_3_3__1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__Repository__Group_3_3__1__Impl
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__Repository__Group_3_3__1__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRepositoryAccess().getImportsAssignment_3_3_1()); }
-(rule__Repository__ImportsAssignment_3_3_1)
-{ after(grammarAccess.getRepositoryAccess().getImportsAssignment_3_3_1()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-rule__Repository__Group_4__0
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__Repository__Group_4__0__Impl
-	rule__Repository__Group_4__1
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__Repository__Group_4__0__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRepositoryAccess().getDatatypesKeyword_4_0()); }
-
-	'datatypes' 
-
-{ after(grammarAccess.getRepositoryAccess().getDatatypesKeyword_4_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__Repository__Group_4__1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__Repository__Group_4__1__Impl
-	rule__Repository__Group_4__2
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__Repository__Group_4__1__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRepositoryAccess().getLeftCurlyBracketKeyword_4_1()); }
-
-	'{' 
-
-{ after(grammarAccess.getRepositoryAccess().getLeftCurlyBracketKeyword_4_1()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__Repository__Group_4__2
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__Repository__Group_4__2__Impl
-	rule__Repository__Group_4__3
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__Repository__Group_4__2__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRepositoryAccess().getDatatypesAssignment_4_2()); }
-(rule__Repository__DatatypesAssignment_4_2)
-{ after(grammarAccess.getRepositoryAccess().getDatatypesAssignment_4_2()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__Repository__Group_4__3
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__Repository__Group_4__3__Impl
-	rule__Repository__Group_4__4
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__Repository__Group_4__3__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRepositoryAccess().getGroup_4_3()); }
-(rule__Repository__Group_4_3__0)*
-{ after(grammarAccess.getRepositoryAccess().getGroup_4_3()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__Repository__Group_4__4
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__Repository__Group_4__4__Impl
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__Repository__Group_4__4__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRepositoryAccess().getRightCurlyBracketKeyword_4_4()); }
-
-	'}' 
-
-{ after(grammarAccess.getRepositoryAccess().getRightCurlyBracketKeyword_4_4()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-
-
-
-
-
-
-rule__Repository__Group_4_3__0
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__Repository__Group_4_3__0__Impl
-	rule__Repository__Group_4_3__1
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__Repository__Group_4_3__0__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRepositoryAccess().getCommaKeyword_4_3_0()); }
-
-	',' 
-
-{ after(grammarAccess.getRepositoryAccess().getCommaKeyword_4_3_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__Repository__Group_4_3__1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__Repository__Group_4_3__1__Impl
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__Repository__Group_4_3__1__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRepositoryAccess().getDatatypesAssignment_4_3_1()); }
-(rule__Repository__DatatypesAssignment_4_3_1)
-{ after(grammarAccess.getRepositoryAccess().getDatatypesAssignment_4_3_1()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-rule__Repository__Group_5__0
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__Repository__Group_5__0__Impl
-	rule__Repository__Group_5__1
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__Repository__Group_5__0__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRepositoryAccess().getComponentsKeyword_5_0()); }
-
-	'components' 
-
-{ after(grammarAccess.getRepositoryAccess().getComponentsKeyword_5_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__Repository__Group_5__1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__Repository__Group_5__1__Impl
-	rule__Repository__Group_5__2
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__Repository__Group_5__1__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRepositoryAccess().getLeftCurlyBracketKeyword_5_1()); }
-
-	'{' 
-
-{ after(grammarAccess.getRepositoryAccess().getLeftCurlyBracketKeyword_5_1()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__Repository__Group_5__2
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__Repository__Group_5__2__Impl
-	rule__Repository__Group_5__3
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__Repository__Group_5__2__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRepositoryAccess().getComponentsAssignment_5_2()); }
-(rule__Repository__ComponentsAssignment_5_2)
-{ after(grammarAccess.getRepositoryAccess().getComponentsAssignment_5_2()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__Repository__Group_5__3
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__Repository__Group_5__3__Impl
-	rule__Repository__Group_5__4
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__Repository__Group_5__3__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRepositoryAccess().getGroup_5_3()); }
-(rule__Repository__Group_5_3__0)*
-{ after(grammarAccess.getRepositoryAccess().getGroup_5_3()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__Repository__Group_5__4
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__Repository__Group_5__4__Impl
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__Repository__Group_5__4__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRepositoryAccess().getRightCurlyBracketKeyword_5_4()); }
-
-	'}' 
-
-{ after(grammarAccess.getRepositoryAccess().getRightCurlyBracketKeyword_5_4()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-
-
-
-
-
-
-rule__Repository__Group_5_3__0
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__Repository__Group_5_3__0__Impl
-	rule__Repository__Group_5_3__1
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__Repository__Group_5_3__0__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRepositoryAccess().getSemicolonKeyword_5_3_0()); }
-
-	';' 
-
-{ after(grammarAccess.getRepositoryAccess().getSemicolonKeyword_5_3_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__Repository__Group_5_3__1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__Repository__Group_5_3__1__Impl
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__Repository__Group_5_3__1__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRepositoryAccess().getComponentsAssignment_5_3_1()); }
-(rule__Repository__ComponentsAssignment_5_3_1)
-{ after(grammarAccess.getRepositoryAccess().getComponentsAssignment_5_3_1()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-rule__Repository__Group_6__0
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__Repository__Group_6__0__Impl
-	rule__Repository__Group_6__1
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__Repository__Group_6__0__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRepositoryAccess().getInterfacesKeyword_6_0()); }
-
-	'interfaces' 
-
-{ after(grammarAccess.getRepositoryAccess().getInterfacesKeyword_6_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__Repository__Group_6__1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__Repository__Group_6__1__Impl
-	rule__Repository__Group_6__2
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__Repository__Group_6__1__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRepositoryAccess().getLeftCurlyBracketKeyword_6_1()); }
-
-	'{' 
-
-{ after(grammarAccess.getRepositoryAccess().getLeftCurlyBracketKeyword_6_1()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__Repository__Group_6__2
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__Repository__Group_6__2__Impl
-	rule__Repository__Group_6__3
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__Repository__Group_6__2__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRepositoryAccess().getInterfacesAssignment_6_2()); }
-(rule__Repository__InterfacesAssignment_6_2)
-{ after(grammarAccess.getRepositoryAccess().getInterfacesAssignment_6_2()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__Repository__Group_6__3
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__Repository__Group_6__3__Impl
-	rule__Repository__Group_6__4
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__Repository__Group_6__3__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRepositoryAccess().getGroup_6_3()); }
-(rule__Repository__Group_6_3__0)*
-{ after(grammarAccess.getRepositoryAccess().getGroup_6_3()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__Repository__Group_6__4
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__Repository__Group_6__4__Impl
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__Repository__Group_6__4__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRepositoryAccess().getRightCurlyBracketKeyword_6_4()); }
-
-	'}' 
-
-{ after(grammarAccess.getRepositoryAccess().getRightCurlyBracketKeyword_6_4()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-
-
-
-
-
-
-rule__Repository__Group_6_3__0
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__Repository__Group_6_3__0__Impl
-	rule__Repository__Group_6_3__1
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__Repository__Group_6_3__0__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRepositoryAccess().getCommaKeyword_6_3_0()); }
-
-	',' 
-
-{ after(grammarAccess.getRepositoryAccess().getCommaKeyword_6_3_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__Repository__Group_6_3__1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__Repository__Group_6_3__1__Impl
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__Repository__Group_6_3__1__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRepositoryAccess().getInterfacesAssignment_6_3_1()); }
-(rule__Repository__InterfacesAssignment_6_3_1)
-{ after(grammarAccess.getRepositoryAccess().getInterfacesAssignment_6_3_1()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-rule__Import__Group__0
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__Import__Group__0__Impl
-	rule__Import__Group__1
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__Import__Group__0__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getImportAccess().getImportKeyword_0()); }
-
-	'import' 
-
-{ after(grammarAccess.getImportAccess().getImportKeyword_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__Import__Group__1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__Import__Group__1__Impl
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__Import__Group__1__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getImportAccess().getImportedNamespaceAssignment_1()); }
-(rule__Import__ImportedNamespaceAssignment_1)
-{ after(grammarAccess.getImportAccess().getImportedNamespaceAssignment_1()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-rule__QualifiedNameWithWildCard__Group__0
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__QualifiedNameWithWildCard__Group__0__Impl
-	rule__QualifiedNameWithWildCard__Group__1
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__QualifiedNameWithWildCard__Group__0__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getQualifiedNameWithWildCardAccess().getQualifiedNameParserRuleCall_0()); }
-	ruleQualifiedName
-{ after(grammarAccess.getQualifiedNameWithWildCardAccess().getQualifiedNameParserRuleCall_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__QualifiedNameWithWildCard__Group__1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__QualifiedNameWithWildCard__Group__1__Impl
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__QualifiedNameWithWildCard__Group__1__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getQualifiedNameWithWildCardAccess().getGroup_1()); }
-(rule__QualifiedNameWithWildCard__Group_1__0)?
-{ after(grammarAccess.getQualifiedNameWithWildCardAccess().getGroup_1()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-rule__QualifiedNameWithWildCard__Group_1__0
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__QualifiedNameWithWildCard__Group_1__0__Impl
-	rule__QualifiedNameWithWildCard__Group_1__1
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__QualifiedNameWithWildCard__Group_1__0__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getQualifiedNameWithWildCardAccess().getFullStopKeyword_1_0()); }
-
-	'.' 
-
-{ after(grammarAccess.getQualifiedNameWithWildCardAccess().getFullStopKeyword_1_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__QualifiedNameWithWildCard__Group_1__1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__QualifiedNameWithWildCard__Group_1__1__Impl
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__QualifiedNameWithWildCard__Group_1__1__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getQualifiedNameWithWildCardAccess().getAsteriskKeyword_1_1()); }
-
-	'*' 
-
-{ after(grammarAccess.getQualifiedNameWithWildCardAccess().getAsteriskKeyword_1_1()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-rule__QualifiedName__Group__0
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__QualifiedName__Group__0__Impl
-	rule__QualifiedName__Group__1
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__QualifiedName__Group__0__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getQualifiedNameAccess().getIDTerminalRuleCall_0()); }
-	RULE_ID
-{ after(grammarAccess.getQualifiedNameAccess().getIDTerminalRuleCall_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__QualifiedName__Group__1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__QualifiedName__Group__1__Impl
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__QualifiedName__Group__1__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getQualifiedNameAccess().getGroup_1()); }
-(rule__QualifiedName__Group_1__0)*
-{ after(grammarAccess.getQualifiedNameAccess().getGroup_1()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-rule__QualifiedName__Group_1__0
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__QualifiedName__Group_1__0__Impl
-	rule__QualifiedName__Group_1__1
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__QualifiedName__Group_1__0__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getQualifiedNameAccess().getFullStopKeyword_1_0()); }
-
-	'.' 
-
-{ after(grammarAccess.getQualifiedNameAccess().getFullStopKeyword_1_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__QualifiedName__Group_1__1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__QualifiedName__Group_1__1__Impl
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__QualifiedName__Group_1__1__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getQualifiedNameAccess().getIDTerminalRuleCall_1_1()); }
-	RULE_ID
-{ after(grammarAccess.getQualifiedNameAccess().getIDTerminalRuleCall_1_1()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-rule__Interface__Group__0
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__Interface__Group__0__Impl
-	rule__Interface__Group__1
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__Interface__Group__0__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getInterfaceAccess().getInterfaceKeyword_0()); }
-
-	'Interface' 
-
-{ after(grammarAccess.getInterfaceAccess().getInterfaceKeyword_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__Interface__Group__1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__Interface__Group__1__Impl
-	rule__Interface__Group__2
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__Interface__Group__1__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getInterfaceAccess().getNameAssignment_1()); }
-(rule__Interface__NameAssignment_1)
-{ after(grammarAccess.getInterfaceAccess().getNameAssignment_1()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__Interface__Group__2
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__Interface__Group__2__Impl
-	rule__Interface__Group__3
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__Interface__Group__2__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getInterfaceAccess().getLeftCurlyBracketKeyword_2()); }
-
-	'{' 
-
-{ after(grammarAccess.getInterfaceAccess().getLeftCurlyBracketKeyword_2()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__Interface__Group__3
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__Interface__Group__3__Impl
-	rule__Interface__Group__4
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__Interface__Group__3__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getInterfaceAccess().getGroup_3()); }
-(rule__Interface__Group_3__0)?
-{ after(grammarAccess.getInterfaceAccess().getGroup_3()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__Interface__Group__4
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__Interface__Group__4__Impl
-	rule__Interface__Group__5
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__Interface__Group__4__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getInterfaceAccess().getGroup_4()); }
-(rule__Interface__Group_4__0)?
-{ after(grammarAccess.getInterfaceAccess().getGroup_4()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__Interface__Group__5
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__Interface__Group__5__Impl
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__Interface__Group__5__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getInterfaceAccess().getRightCurlyBracketKeyword_5()); }
-
-	'}' 
-
-{ after(grammarAccess.getInterfaceAccess().getRightCurlyBracketKeyword_5()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-rule__Interface__Group_3__0
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__Interface__Group_3__0__Impl
-	rule__Interface__Group_3__1
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__Interface__Group_3__0__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getInterfaceAccess().getParentInterfacesKeyword_3_0()); }
-
-	'parentInterfaces' 
-
-{ after(grammarAccess.getInterfaceAccess().getParentInterfacesKeyword_3_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__Interface__Group_3__1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__Interface__Group_3__1__Impl
-	rule__Interface__Group_3__2
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__Interface__Group_3__1__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getInterfaceAccess().getLeftParenthesisKeyword_3_1()); }
-
-	'(' 
-
-{ after(grammarAccess.getInterfaceAccess().getLeftParenthesisKeyword_3_1()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__Interface__Group_3__2
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__Interface__Group_3__2__Impl
-	rule__Interface__Group_3__3
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__Interface__Group_3__2__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getInterfaceAccess().getParentInterfacesAssignment_3_2()); }
-(rule__Interface__ParentInterfacesAssignment_3_2)
-{ after(grammarAccess.getInterfaceAccess().getParentInterfacesAssignment_3_2()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__Interface__Group_3__3
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__Interface__Group_3__3__Impl
-	rule__Interface__Group_3__4
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__Interface__Group_3__3__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getInterfaceAccess().getGroup_3_3()); }
-(rule__Interface__Group_3_3__0)*
-{ after(grammarAccess.getInterfaceAccess().getGroup_3_3()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__Interface__Group_3__4
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__Interface__Group_3__4__Impl
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__Interface__Group_3__4__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getInterfaceAccess().getRightParenthesisKeyword_3_4()); }
-
-	')' 
-
-{ after(grammarAccess.getInterfaceAccess().getRightParenthesisKeyword_3_4()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-
-
-
-
-
-
-rule__Interface__Group_3_3__0
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__Interface__Group_3_3__0__Impl
-	rule__Interface__Group_3_3__1
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__Interface__Group_3_3__0__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getInterfaceAccess().getCommaKeyword_3_3_0()); }
-
-	',' 
-
-{ after(grammarAccess.getInterfaceAccess().getCommaKeyword_3_3_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__Interface__Group_3_3__1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__Interface__Group_3_3__1__Impl
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__Interface__Group_3_3__1__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getInterfaceAccess().getParentInterfacesAssignment_3_3_1()); }
-(rule__Interface__ParentInterfacesAssignment_3_3_1)
-{ after(grammarAccess.getInterfaceAccess().getParentInterfacesAssignment_3_3_1()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-rule__Interface__Group_4__0
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__Interface__Group_4__0__Impl
-	rule__Interface__Group_4__1
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__Interface__Group_4__0__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getInterfaceAccess().getSignaturesAssignment_4_0()); }
-(rule__Interface__SignaturesAssignment_4_0)
-{ after(grammarAccess.getInterfaceAccess().getSignaturesAssignment_4_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__Interface__Group_4__1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__Interface__Group_4__1__Impl
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__Interface__Group_4__1__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getInterfaceAccess().getGroup_4_1()); }
-(rule__Interface__Group_4_1__0)*
-{ after(grammarAccess.getInterfaceAccess().getGroup_4_1()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-rule__Interface__Group_4_1__0
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__Interface__Group_4_1__0__Impl
-	rule__Interface__Group_4_1__1
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__Interface__Group_4_1__0__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getInterfaceAccess().getCommaKeyword_4_1_0()); }
-
-	',' 
-
-{ after(grammarAccess.getInterfaceAccess().getCommaKeyword_4_1_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__Interface__Group_4_1__1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__Interface__Group_4_1__1__Impl
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__Interface__Group_4_1__1__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getInterfaceAccess().getSignaturesAssignment_4_1_1()); }
-(rule__Interface__SignaturesAssignment_4_1_1)
-{ after(grammarAccess.getInterfaceAccess().getSignaturesAssignment_4_1_1()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-rule__RepositoryComponent_Impl__Group__0
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__RepositoryComponent_Impl__Group__0__Impl
-	rule__RepositoryComponent_Impl__Group__1
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__RepositoryComponent_Impl__Group__0__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRepositoryComponent_ImplAccess().getRepositoryComponentKeyword_0()); }
-
-	'RepositoryComponent' 
-
-{ after(grammarAccess.getRepositoryComponent_ImplAccess().getRepositoryComponentKeyword_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__RepositoryComponent_Impl__Group__1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__RepositoryComponent_Impl__Group__1__Impl
-	rule__RepositoryComponent_Impl__Group__2
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__RepositoryComponent_Impl__Group__1__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRepositoryComponent_ImplAccess().getNameAssignment_1()); }
-(rule__RepositoryComponent_Impl__NameAssignment_1)
-{ after(grammarAccess.getRepositoryComponent_ImplAccess().getNameAssignment_1()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__RepositoryComponent_Impl__Group__2
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__RepositoryComponent_Impl__Group__2__Impl
-	rule__RepositoryComponent_Impl__Group__3
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__RepositoryComponent_Impl__Group__2__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRepositoryComponent_ImplAccess().getLeftCurlyBracketKeyword_2()); }
-
-	'{' 
-
-{ after(grammarAccess.getRepositoryComponent_ImplAccess().getLeftCurlyBracketKeyword_2()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__RepositoryComponent_Impl__Group__3
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__RepositoryComponent_Impl__Group__3__Impl
-	rule__RepositoryComponent_Impl__Group__4
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__RepositoryComponent_Impl__Group__3__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRepositoryComponent_ImplAccess().getGroup_3()); }
-(rule__RepositoryComponent_Impl__Group_3__0)?
-{ after(grammarAccess.getRepositoryComponent_ImplAccess().getGroup_3()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__RepositoryComponent_Impl__Group__4
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__RepositoryComponent_Impl__Group__4__Impl
-	rule__RepositoryComponent_Impl__Group__5
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__RepositoryComponent_Impl__Group__4__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRepositoryComponent_ImplAccess().getGroup_4()); }
-(rule__RepositoryComponent_Impl__Group_4__0)?
-{ after(grammarAccess.getRepositoryComponent_ImplAccess().getGroup_4()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__RepositoryComponent_Impl__Group__5
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__RepositoryComponent_Impl__Group__5__Impl
-	rule__RepositoryComponent_Impl__Group__6
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__RepositoryComponent_Impl__Group__5__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRepositoryComponent_ImplAccess().getGroup_5()); }
-(rule__RepositoryComponent_Impl__Group_5__0)?
-{ after(grammarAccess.getRepositoryComponent_ImplAccess().getGroup_5()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__RepositoryComponent_Impl__Group__6
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__RepositoryComponent_Impl__Group__6__Impl
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__RepositoryComponent_Impl__Group__6__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRepositoryComponent_ImplAccess().getRightCurlyBracketKeyword_6()); }
-
-	'}' 
-
-{ after(grammarAccess.getRepositoryComponent_ImplAccess().getRightCurlyBracketKeyword_6()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-rule__RepositoryComponent_Impl__Group_3__0
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__RepositoryComponent_Impl__Group_3__0__Impl
-	rule__RepositoryComponent_Impl__Group_3__1
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__RepositoryComponent_Impl__Group_3__0__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRepositoryComponent_ImplAccess().getRelationshipKeyword_3_0()); }
-
-	'relationship' 
-
-{ after(grammarAccess.getRepositoryComponent_ImplAccess().getRelationshipKeyword_3_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__RepositoryComponent_Impl__Group_3__1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__RepositoryComponent_Impl__Group_3__1__Impl
-	rule__RepositoryComponent_Impl__Group_3__2
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__RepositoryComponent_Impl__Group_3__1__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRepositoryComponent_ImplAccess().getLeftParenthesisKeyword_3_1()); }
-
-	'(' 
-
-{ after(grammarAccess.getRepositoryComponent_ImplAccess().getLeftParenthesisKeyword_3_1()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__RepositoryComponent_Impl__Group_3__2
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__RepositoryComponent_Impl__Group_3__2__Impl
-	rule__RepositoryComponent_Impl__Group_3__3
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__RepositoryComponent_Impl__Group_3__2__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRepositoryComponent_ImplAccess().getRelationshipAssignment_3_2()); }
-(rule__RepositoryComponent_Impl__RelationshipAssignment_3_2)
-{ after(grammarAccess.getRepositoryComponent_ImplAccess().getRelationshipAssignment_3_2()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__RepositoryComponent_Impl__Group_3__3
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__RepositoryComponent_Impl__Group_3__3__Impl
-	rule__RepositoryComponent_Impl__Group_3__4
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__RepositoryComponent_Impl__Group_3__3__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRepositoryComponent_ImplAccess().getGroup_3_3()); }
-(rule__RepositoryComponent_Impl__Group_3_3__0)*
-{ after(grammarAccess.getRepositoryComponent_ImplAccess().getGroup_3_3()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__RepositoryComponent_Impl__Group_3__4
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__RepositoryComponent_Impl__Group_3__4__Impl
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__RepositoryComponent_Impl__Group_3__4__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRepositoryComponent_ImplAccess().getRightParenthesisKeyword_3_4()); }
-
-	')' 
-
-{ after(grammarAccess.getRepositoryComponent_ImplAccess().getRightParenthesisKeyword_3_4()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-
-
-
-
-
-
-rule__RepositoryComponent_Impl__Group_3_3__0
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__RepositoryComponent_Impl__Group_3_3__0__Impl
-	rule__RepositoryComponent_Impl__Group_3_3__1
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__RepositoryComponent_Impl__Group_3_3__0__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRepositoryComponent_ImplAccess().getCommaKeyword_3_3_0()); }
-
-	',' 
-
-{ after(grammarAccess.getRepositoryComponent_ImplAccess().getCommaKeyword_3_3_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__RepositoryComponent_Impl__Group_3_3__1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__RepositoryComponent_Impl__Group_3_3__1__Impl
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__RepositoryComponent_Impl__Group_3_3__1__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRepositoryComponent_ImplAccess().getRelationshipAssignment_3_3_1()); }
-(rule__RepositoryComponent_Impl__RelationshipAssignment_3_3_1)
-{ after(grammarAccess.getRepositoryComponent_ImplAccess().getRelationshipAssignment_3_3_1()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-rule__RepositoryComponent_Impl__Group_4__0
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__RepositoryComponent_Impl__Group_4__0__Impl
-	rule__RepositoryComponent_Impl__Group_4__1
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__RepositoryComponent_Impl__Group_4__0__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRepositoryComponent_ImplAccess().getProvidedRolesKeyword_4_0()); }
-
-	'providedRoles' 
-
-{ after(grammarAccess.getRepositoryComponent_ImplAccess().getProvidedRolesKeyword_4_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__RepositoryComponent_Impl__Group_4__1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__RepositoryComponent_Impl__Group_4__1__Impl
-	rule__RepositoryComponent_Impl__Group_4__2
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__RepositoryComponent_Impl__Group_4__1__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRepositoryComponent_ImplAccess().getLeftCurlyBracketKeyword_4_1()); }
-
-	'{' 
-
-{ after(grammarAccess.getRepositoryComponent_ImplAccess().getLeftCurlyBracketKeyword_4_1()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__RepositoryComponent_Impl__Group_4__2
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__RepositoryComponent_Impl__Group_4__2__Impl
-	rule__RepositoryComponent_Impl__Group_4__3
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__RepositoryComponent_Impl__Group_4__2__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRepositoryComponent_ImplAccess().getProvidedRolesAssignment_4_2()); }
-(rule__RepositoryComponent_Impl__ProvidedRolesAssignment_4_2)
-{ after(grammarAccess.getRepositoryComponent_ImplAccess().getProvidedRolesAssignment_4_2()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__RepositoryComponent_Impl__Group_4__3
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__RepositoryComponent_Impl__Group_4__3__Impl
-	rule__RepositoryComponent_Impl__Group_4__4
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__RepositoryComponent_Impl__Group_4__3__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRepositoryComponent_ImplAccess().getGroup_4_3()); }
-(rule__RepositoryComponent_Impl__Group_4_3__0)*
-{ after(grammarAccess.getRepositoryComponent_ImplAccess().getGroup_4_3()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__RepositoryComponent_Impl__Group_4__4
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__RepositoryComponent_Impl__Group_4__4__Impl
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__RepositoryComponent_Impl__Group_4__4__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRepositoryComponent_ImplAccess().getRightCurlyBracketKeyword_4_4()); }
-
-	'}' 
-
-{ after(grammarAccess.getRepositoryComponent_ImplAccess().getRightCurlyBracketKeyword_4_4()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-
-
-
-
-
-
-rule__RepositoryComponent_Impl__Group_4_3__0
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__RepositoryComponent_Impl__Group_4_3__0__Impl
-	rule__RepositoryComponent_Impl__Group_4_3__1
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__RepositoryComponent_Impl__Group_4_3__0__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRepositoryComponent_ImplAccess().getCommaKeyword_4_3_0()); }
-
-	',' 
-
-{ after(grammarAccess.getRepositoryComponent_ImplAccess().getCommaKeyword_4_3_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__RepositoryComponent_Impl__Group_4_3__1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__RepositoryComponent_Impl__Group_4_3__1__Impl
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__RepositoryComponent_Impl__Group_4_3__1__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRepositoryComponent_ImplAccess().getProvidedRolesAssignment_4_3_1()); }
-(rule__RepositoryComponent_Impl__ProvidedRolesAssignment_4_3_1)
-{ after(grammarAccess.getRepositoryComponent_ImplAccess().getProvidedRolesAssignment_4_3_1()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-rule__RepositoryComponent_Impl__Group_5__0
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__RepositoryComponent_Impl__Group_5__0__Impl
-	rule__RepositoryComponent_Impl__Group_5__1
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__RepositoryComponent_Impl__Group_5__0__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRepositoryComponent_ImplAccess().getRequiredRolesKeyword_5_0()); }
-
-	'requiredRoles' 
-
-{ after(grammarAccess.getRepositoryComponent_ImplAccess().getRequiredRolesKeyword_5_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__RepositoryComponent_Impl__Group_5__1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__RepositoryComponent_Impl__Group_5__1__Impl
-	rule__RepositoryComponent_Impl__Group_5__2
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__RepositoryComponent_Impl__Group_5__1__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRepositoryComponent_ImplAccess().getLeftCurlyBracketKeyword_5_1()); }
-
-	'{' 
-
-{ after(grammarAccess.getRepositoryComponent_ImplAccess().getLeftCurlyBracketKeyword_5_1()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__RepositoryComponent_Impl__Group_5__2
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__RepositoryComponent_Impl__Group_5__2__Impl
-	rule__RepositoryComponent_Impl__Group_5__3
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__RepositoryComponent_Impl__Group_5__2__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRepositoryComponent_ImplAccess().getRequiredRolesAssignment_5_2()); }
-(rule__RepositoryComponent_Impl__RequiredRolesAssignment_5_2)
-{ after(grammarAccess.getRepositoryComponent_ImplAccess().getRequiredRolesAssignment_5_2()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__RepositoryComponent_Impl__Group_5__3
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__RepositoryComponent_Impl__Group_5__3__Impl
-	rule__RepositoryComponent_Impl__Group_5__4
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__RepositoryComponent_Impl__Group_5__3__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRepositoryComponent_ImplAccess().getGroup_5_3()); }
-(rule__RepositoryComponent_Impl__Group_5_3__0)*
-{ after(grammarAccess.getRepositoryComponent_ImplAccess().getGroup_5_3()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__RepositoryComponent_Impl__Group_5__4
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__RepositoryComponent_Impl__Group_5__4__Impl
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__RepositoryComponent_Impl__Group_5__4__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRepositoryComponent_ImplAccess().getRightCurlyBracketKeyword_5_4()); }
-
-	'}' 
-
-{ after(grammarAccess.getRepositoryComponent_ImplAccess().getRightCurlyBracketKeyword_5_4()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-
-
-
-
-
-
-rule__RepositoryComponent_Impl__Group_5_3__0
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__RepositoryComponent_Impl__Group_5_3__0__Impl
-	rule__RepositoryComponent_Impl__Group_5_3__1
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__RepositoryComponent_Impl__Group_5_3__0__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRepositoryComponent_ImplAccess().getCommaKeyword_5_3_0()); }
-
-	',' 
-
-{ after(grammarAccess.getRepositoryComponent_ImplAccess().getCommaKeyword_5_3_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__RepositoryComponent_Impl__Group_5_3__1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__RepositoryComponent_Impl__Group_5_3__1__Impl
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__RepositoryComponent_Impl__Group_5_3__1__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRepositoryComponent_ImplAccess().getRequiredRolesAssignment_5_3_1()); }
-(rule__RepositoryComponent_Impl__RequiredRolesAssignment_5_3_1)
-{ after(grammarAccess.getRepositoryComponent_ImplAccess().getRequiredRolesAssignment_5_3_1()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-rule__CollectionDataType__Group__0
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__CollectionDataType__Group__0__Impl
-	rule__CollectionDataType__Group__1
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__CollectionDataType__Group__0__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getCollectionDataTypeAccess().getCollectionDataTypeKeyword_0()); }
-
-	'CollectionDataType' 
-
-{ after(grammarAccess.getCollectionDataTypeAccess().getCollectionDataTypeKeyword_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__CollectionDataType__Group__1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__CollectionDataType__Group__1__Impl
-	rule__CollectionDataType__Group__2
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__CollectionDataType__Group__1__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getCollectionDataTypeAccess().getNameAssignment_1()); }
-(rule__CollectionDataType__NameAssignment_1)
-{ after(grammarAccess.getCollectionDataTypeAccess().getNameAssignment_1()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__CollectionDataType__Group__2
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__CollectionDataType__Group__2__Impl
-	rule__CollectionDataType__Group__3
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__CollectionDataType__Group__2__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getCollectionDataTypeAccess().getLeftCurlyBracketKeyword_2()); }
-
-	'{' 
-
-{ after(grammarAccess.getCollectionDataTypeAccess().getLeftCurlyBracketKeyword_2()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__CollectionDataType__Group__3
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__CollectionDataType__Group__3__Impl
-	rule__CollectionDataType__Group__4
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__CollectionDataType__Group__3__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getCollectionDataTypeAccess().getInnerTypeKeyword_3()); }
-
-	'innerType' 
-
-{ after(grammarAccess.getCollectionDataTypeAccess().getInnerTypeKeyword_3()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__CollectionDataType__Group__4
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__CollectionDataType__Group__4__Impl
-	rule__CollectionDataType__Group__5
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__CollectionDataType__Group__4__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getCollectionDataTypeAccess().getInnerTypeAssignment_4()); }
-(rule__CollectionDataType__InnerTypeAssignment_4)
-{ after(grammarAccess.getCollectionDataTypeAccess().getInnerTypeAssignment_4()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__CollectionDataType__Group__5
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__CollectionDataType__Group__5__Impl
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__CollectionDataType__Group__5__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getCollectionDataTypeAccess().getRightCurlyBracketKeyword_5()); }
-
-	'}' 
-
-{ after(grammarAccess.getCollectionDataTypeAccess().getRightCurlyBracketKeyword_5()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-rule__CompositeDataType__Group__0
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__CompositeDataType__Group__0__Impl
-	rule__CompositeDataType__Group__1
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__CompositeDataType__Group__0__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getCompositeDataTypeAccess().getCompositeDataTypeKeyword_0()); }
-
-	'CompositeDataType' 
-
-{ after(grammarAccess.getCompositeDataTypeAccess().getCompositeDataTypeKeyword_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__CompositeDataType__Group__1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__CompositeDataType__Group__1__Impl
-	rule__CompositeDataType__Group__2
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__CompositeDataType__Group__1__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getCompositeDataTypeAccess().getNameAssignment_1()); }
-(rule__CompositeDataType__NameAssignment_1)
-{ after(grammarAccess.getCompositeDataTypeAccess().getNameAssignment_1()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__CompositeDataType__Group__2
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__CompositeDataType__Group__2__Impl
-	rule__CompositeDataType__Group__3
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__CompositeDataType__Group__2__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getCompositeDataTypeAccess().getLeftCurlyBracketKeyword_2()); }
-
-	'{' 
-
-{ after(grammarAccess.getCompositeDataTypeAccess().getLeftCurlyBracketKeyword_2()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__CompositeDataType__Group__3
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__CompositeDataType__Group__3__Impl
-	rule__CompositeDataType__Group__4
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__CompositeDataType__Group__3__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getCompositeDataTypeAccess().getGroup_3()); }
-(rule__CompositeDataType__Group_3__0)?
-{ after(grammarAccess.getCompositeDataTypeAccess().getGroup_3()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__CompositeDataType__Group__4
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__CompositeDataType__Group__4__Impl
-	rule__CompositeDataType__Group__5
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__CompositeDataType__Group__4__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getCompositeDataTypeAccess().getGroup_4()); }
-(rule__CompositeDataType__Group_4__0)?
-{ after(grammarAccess.getCompositeDataTypeAccess().getGroup_4()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__CompositeDataType__Group__5
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__CompositeDataType__Group__5__Impl
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__CompositeDataType__Group__5__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getCompositeDataTypeAccess().getRightCurlyBracketKeyword_5()); }
-
-	'}' 
-
-{ after(grammarAccess.getCompositeDataTypeAccess().getRightCurlyBracketKeyword_5()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-rule__CompositeDataType__Group_3__0
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__CompositeDataType__Group_3__0__Impl
-	rule__CompositeDataType__Group_3__1
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__CompositeDataType__Group_3__0__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getCompositeDataTypeAccess().getParentTypesKeyword_3_0()); }
-
-	'parentTypes' 
-
-{ after(grammarAccess.getCompositeDataTypeAccess().getParentTypesKeyword_3_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__CompositeDataType__Group_3__1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__CompositeDataType__Group_3__1__Impl
-	rule__CompositeDataType__Group_3__2
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__CompositeDataType__Group_3__1__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getCompositeDataTypeAccess().getLeftParenthesisKeyword_3_1()); }
-
-	'(' 
-
-{ after(grammarAccess.getCompositeDataTypeAccess().getLeftParenthesisKeyword_3_1()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__CompositeDataType__Group_3__2
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__CompositeDataType__Group_3__2__Impl
-	rule__CompositeDataType__Group_3__3
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__CompositeDataType__Group_3__2__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getCompositeDataTypeAccess().getParentTypesAssignment_3_2()); }
-(rule__CompositeDataType__ParentTypesAssignment_3_2)
-{ after(grammarAccess.getCompositeDataTypeAccess().getParentTypesAssignment_3_2()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__CompositeDataType__Group_3__3
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__CompositeDataType__Group_3__3__Impl
-	rule__CompositeDataType__Group_3__4
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__CompositeDataType__Group_3__3__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getCompositeDataTypeAccess().getGroup_3_3()); }
-(rule__CompositeDataType__Group_3_3__0)*
-{ after(grammarAccess.getCompositeDataTypeAccess().getGroup_3_3()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__CompositeDataType__Group_3__4
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__CompositeDataType__Group_3__4__Impl
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__CompositeDataType__Group_3__4__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getCompositeDataTypeAccess().getRightParenthesisKeyword_3_4()); }
-
-	')' 
-
-{ after(grammarAccess.getCompositeDataTypeAccess().getRightParenthesisKeyword_3_4()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-
-
-
-
-
-
-rule__CompositeDataType__Group_3_3__0
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__CompositeDataType__Group_3_3__0__Impl
-	rule__CompositeDataType__Group_3_3__1
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__CompositeDataType__Group_3_3__0__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getCompositeDataTypeAccess().getCommaKeyword_3_3_0()); }
-
-	',' 
-
-{ after(grammarAccess.getCompositeDataTypeAccess().getCommaKeyword_3_3_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__CompositeDataType__Group_3_3__1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__CompositeDataType__Group_3_3__1__Impl
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__CompositeDataType__Group_3_3__1__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getCompositeDataTypeAccess().getParentTypesAssignment_3_3_1()); }
-(rule__CompositeDataType__ParentTypesAssignment_3_3_1)
-{ after(grammarAccess.getCompositeDataTypeAccess().getParentTypesAssignment_3_3_1()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-rule__CompositeDataType__Group_4__0
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__CompositeDataType__Group_4__0__Impl
-	rule__CompositeDataType__Group_4__1
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__CompositeDataType__Group_4__0__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getCompositeDataTypeAccess().getInnerDeclarationsKeyword_4_0()); }
-
-	'innerDeclarations' 
-
-{ after(grammarAccess.getCompositeDataTypeAccess().getInnerDeclarationsKeyword_4_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__CompositeDataType__Group_4__1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__CompositeDataType__Group_4__1__Impl
-	rule__CompositeDataType__Group_4__2
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__CompositeDataType__Group_4__1__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getCompositeDataTypeAccess().getLeftCurlyBracketKeyword_4_1()); }
-
-	'{' 
-
-{ after(grammarAccess.getCompositeDataTypeAccess().getLeftCurlyBracketKeyword_4_1()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__CompositeDataType__Group_4__2
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__CompositeDataType__Group_4__2__Impl
-	rule__CompositeDataType__Group_4__3
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__CompositeDataType__Group_4__2__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getCompositeDataTypeAccess().getInnerDeclarationsAssignment_4_2()); }
-(rule__CompositeDataType__InnerDeclarationsAssignment_4_2)
-{ after(grammarAccess.getCompositeDataTypeAccess().getInnerDeclarationsAssignment_4_2()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__CompositeDataType__Group_4__3
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__CompositeDataType__Group_4__3__Impl
-	rule__CompositeDataType__Group_4__4
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__CompositeDataType__Group_4__3__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getCompositeDataTypeAccess().getGroup_4_3()); }
-(rule__CompositeDataType__Group_4_3__0)*
-{ after(grammarAccess.getCompositeDataTypeAccess().getGroup_4_3()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__CompositeDataType__Group_4__4
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__CompositeDataType__Group_4__4__Impl
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__CompositeDataType__Group_4__4__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getCompositeDataTypeAccess().getRightCurlyBracketKeyword_4_4()); }
-
-	'}' 
-
-{ after(grammarAccess.getCompositeDataTypeAccess().getRightCurlyBracketKeyword_4_4()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-
-
-
-
-
-
-rule__CompositeDataType__Group_4_3__0
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__CompositeDataType__Group_4_3__0__Impl
-	rule__CompositeDataType__Group_4_3__1
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__CompositeDataType__Group_4_3__0__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getCompositeDataTypeAccess().getCommaKeyword_4_3_0()); }
-
-	',' 
-
-{ after(grammarAccess.getCompositeDataTypeAccess().getCommaKeyword_4_3_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__CompositeDataType__Group_4_3__1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__CompositeDataType__Group_4_3__1__Impl
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__CompositeDataType__Group_4_3__1__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getCompositeDataTypeAccess().getInnerDeclarationsAssignment_4_3_1()); }
-(rule__CompositeDataType__InnerDeclarationsAssignment_4_3_1)
-{ after(grammarAccess.getCompositeDataTypeAccess().getInnerDeclarationsAssignment_4_3_1()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-rule__PrimitiveDataType__Group__0
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__PrimitiveDataType__Group__0__Impl
-	rule__PrimitiveDataType__Group__1
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__PrimitiveDataType__Group__0__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getPrimitiveDataTypeAccess().getPrimitiveDataTypeKeyword_0()); }
-
-	'PrimitiveDataType' 
-
-{ after(grammarAccess.getPrimitiveDataTypeAccess().getPrimitiveDataTypeKeyword_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__PrimitiveDataType__Group__1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__PrimitiveDataType__Group__1__Impl
-	rule__PrimitiveDataType__Group__2
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__PrimitiveDataType__Group__1__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getPrimitiveDataTypeAccess().getLeftCurlyBracketKeyword_1()); }
-
-	'{' 
-
-{ after(grammarAccess.getPrimitiveDataTypeAccess().getLeftCurlyBracketKeyword_1()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__PrimitiveDataType__Group__2
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__PrimitiveDataType__Group__2__Impl
-	rule__PrimitiveDataType__Group__3
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__PrimitiveDataType__Group__2__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getPrimitiveDataTypeAccess().getTypeKeyword_2()); }
-
-	'type' 
-
-{ after(grammarAccess.getPrimitiveDataTypeAccess().getTypeKeyword_2()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__PrimitiveDataType__Group__3
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__PrimitiveDataType__Group__3__Impl
-	rule__PrimitiveDataType__Group__4
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__PrimitiveDataType__Group__3__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getPrimitiveDataTypeAccess().getTypeAssignment_3()); }
-(rule__PrimitiveDataType__TypeAssignment_3)
-{ after(grammarAccess.getPrimitiveDataTypeAccess().getTypeAssignment_3()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__PrimitiveDataType__Group__4
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__PrimitiveDataType__Group__4__Impl
-	rule__PrimitiveDataType__Group__5
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__PrimitiveDataType__Group__4__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getPrimitiveDataTypeAccess().getRefKeyword_4()); }
-
-	'ref' 
-
-{ after(grammarAccess.getPrimitiveDataTypeAccess().getRefKeyword_4()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__PrimitiveDataType__Group__5
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__PrimitiveDataType__Group__5__Impl
-	rule__PrimitiveDataType__Group__6
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__PrimitiveDataType__Group__5__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getPrimitiveDataTypeAccess().getNameAssignment_5()); }
-(rule__PrimitiveDataType__NameAssignment_5)
-{ after(grammarAccess.getPrimitiveDataTypeAccess().getNameAssignment_5()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__PrimitiveDataType__Group__6
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__PrimitiveDataType__Group__6__Impl
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__PrimitiveDataType__Group__6__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getPrimitiveDataTypeAccess().getRightCurlyBracketKeyword_6()); }
-
-	'}' 
-
-{ after(grammarAccess.getPrimitiveDataTypeAccess().getRightCurlyBracketKeyword_6()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-rule__InnerDeclaration__Group__0
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__InnerDeclaration__Group__0__Impl
-	rule__InnerDeclaration__Group__1
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__InnerDeclaration__Group__0__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getInnerDeclarationAccess().getInnerDeclarationKeyword_0()); }
-
-	'InnerDeclaration' 
-
-{ after(grammarAccess.getInnerDeclarationAccess().getInnerDeclarationKeyword_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__InnerDeclaration__Group__1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__InnerDeclaration__Group__1__Impl
-	rule__InnerDeclaration__Group__2
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__InnerDeclaration__Group__1__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getInnerDeclarationAccess().getNameAssignment_1()); }
-(rule__InnerDeclaration__NameAssignment_1)
-{ after(grammarAccess.getInnerDeclarationAccess().getNameAssignment_1()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__InnerDeclaration__Group__2
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__InnerDeclaration__Group__2__Impl
-	rule__InnerDeclaration__Group__3
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__InnerDeclaration__Group__2__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getInnerDeclarationAccess().getLeftCurlyBracketKeyword_2()); }
-
-	'{' 
-
-{ after(grammarAccess.getInnerDeclarationAccess().getLeftCurlyBracketKeyword_2()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__InnerDeclaration__Group__3
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__InnerDeclaration__Group__3__Impl
-	rule__InnerDeclaration__Group__4
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__InnerDeclaration__Group__3__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getInnerDeclarationAccess().getDataTypeKeyword_3()); }
-
-	'dataType' 
-
-{ after(grammarAccess.getInnerDeclarationAccess().getDataTypeKeyword_3()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__InnerDeclaration__Group__4
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__InnerDeclaration__Group__4__Impl
-	rule__InnerDeclaration__Group__5
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__InnerDeclaration__Group__4__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getInnerDeclarationAccess().getDataTypeAssignment_4()); }
-(rule__InnerDeclaration__DataTypeAssignment_4)
-{ after(grammarAccess.getInnerDeclarationAccess().getDataTypeAssignment_4()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__InnerDeclaration__Group__5
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__InnerDeclaration__Group__5__Impl
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__InnerDeclaration__Group__5__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getInnerDeclarationAccess().getRightCurlyBracketKeyword_5()); }
-
-	'}' 
-
-{ after(grammarAccess.getInnerDeclarationAccess().getRightCurlyBracketKeyword_5()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-rule__Signature__Group__0
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__Signature__Group__0__Impl
-	rule__Signature__Group__1
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__Signature__Group__0__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getSignatureAccess().getAlternatives_0()); }
-(rule__Signature__Alternatives_0)
-{ after(grammarAccess.getSignatureAccess().getAlternatives_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__Signature__Group__1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__Signature__Group__1__Impl
-	rule__Signature__Group__2
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__Signature__Group__1__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getSignatureAccess().getNameAssignment_1()); }
-(rule__Signature__NameAssignment_1)
-{ after(grammarAccess.getSignatureAccess().getNameAssignment_1()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__Signature__Group__2
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__Signature__Group__2__Impl
-	rule__Signature__Group__3
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__Signature__Group__2__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getSignatureAccess().getLeftParenthesisKeyword_2()); }
-
-	'(' 
-
-{ after(grammarAccess.getSignatureAccess().getLeftParenthesisKeyword_2()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__Signature__Group__3
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__Signature__Group__3__Impl
-	rule__Signature__Group__4
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__Signature__Group__3__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getSignatureAccess().getGroup_3()); }
-(rule__Signature__Group_3__0)?
-{ after(grammarAccess.getSignatureAccess().getGroup_3()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__Signature__Group__4
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__Signature__Group__4__Impl
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__Signature__Group__4__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getSignatureAccess().getRightParenthesisKeyword_4()); }
-
-	')' 
-
-{ after(grammarAccess.getSignatureAccess().getRightParenthesisKeyword_4()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-
-
-
-
-
-
-rule__Signature__Group_3__0
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__Signature__Group_3__0__Impl
-	rule__Signature__Group_3__1
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__Signature__Group_3__0__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getSignatureAccess().getParametersAssignment_3_0()); }
-(rule__Signature__ParametersAssignment_3_0)
-{ after(grammarAccess.getSignatureAccess().getParametersAssignment_3_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__Signature__Group_3__1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__Signature__Group_3__1__Impl
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__Signature__Group_3__1__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getSignatureAccess().getGroup_3_1()); }
-(rule__Signature__Group_3_1__0)*
-{ after(grammarAccess.getSignatureAccess().getGroup_3_1()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-rule__Signature__Group_3_1__0
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__Signature__Group_3_1__0__Impl
-	rule__Signature__Group_3_1__1
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__Signature__Group_3_1__0__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getSignatureAccess().getCommaKeyword_3_1_0()); }
-
-	',' 
-
-{ after(grammarAccess.getSignatureAccess().getCommaKeyword_3_1_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__Signature__Group_3_1__1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__Signature__Group_3_1__1__Impl
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__Signature__Group_3_1__1__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getSignatureAccess().getParametersAssignment_3_1_1()); }
-(rule__Signature__ParametersAssignment_3_1_1)
-{ after(grammarAccess.getSignatureAccess().getParametersAssignment_3_1_1()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-rule__Parameter__Group__0
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__Parameter__Group__0__Impl
-	rule__Parameter__Group__1
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__Parameter__Group__0__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getParameterAccess().getDataTypeAssignment_0()); }
-(rule__Parameter__DataTypeAssignment_0)
-{ after(grammarAccess.getParameterAccess().getDataTypeAssignment_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__Parameter__Group__1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__Parameter__Group__1__Impl
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__Parameter__Group__1__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getParameterAccess().getNameAssignment_1()); }
-(rule__Parameter__NameAssignment_1)
-{ after(grammarAccess.getParameterAccess().getNameAssignment_1()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-rule__ProvidedRole__Group__0
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__ProvidedRole__Group__0__Impl
-	rule__ProvidedRole__Group__1
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__ProvidedRole__Group__0__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getProvidedRoleAccess().getProvidedRoleKeyword_0()); }
-
-	'ProvidedRole' 
-
-{ after(grammarAccess.getProvidedRoleAccess().getProvidedRoleKeyword_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__ProvidedRole__Group__1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__ProvidedRole__Group__1__Impl
-	rule__ProvidedRole__Group__2
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__ProvidedRole__Group__1__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getProvidedRoleAccess().getInterfaceAssignment_1()); }
-(rule__ProvidedRole__InterfaceAssignment_1)
-{ after(grammarAccess.getProvidedRoleAccess().getInterfaceAssignment_1()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__ProvidedRole__Group__2
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__ProvidedRole__Group__2__Impl
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__ProvidedRole__Group__2__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getProvidedRoleAccess().getCommaKeyword_2()); }
-(
-	',' 
-)?
-{ after(grammarAccess.getProvidedRoleAccess().getCommaKeyword_2()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-
-
-rule__RequiredRole__Group__0
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__RequiredRole__Group__0__Impl
-	rule__RequiredRole__Group__1
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__RequiredRole__Group__0__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRequiredRoleAccess().getRequiredRoleKeyword_0()); }
-
-	'RequiredRole' 
-
-{ after(grammarAccess.getRequiredRoleAccess().getRequiredRoleKeyword_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__RequiredRole__Group__1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__RequiredRole__Group__1__Impl
-	rule__RequiredRole__Group__2
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__RequiredRole__Group__1__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRequiredRoleAccess().getInterfaceAssignment_1()); }
-(rule__RequiredRole__InterfaceAssignment_1)
-{ after(grammarAccess.getRequiredRoleAccess().getInterfaceAssignment_1()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__RequiredRole__Group__2
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__RequiredRole__Group__2__Impl
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__RequiredRole__Group__2__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRequiredRoleAccess().getCommaKeyword_2()); }
-(
-	',' 
-)?
-{ after(grammarAccess.getRequiredRoleAccess().getCommaKeyword_2()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-
-
-rule__BasicComponent__Group__0
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__BasicComponent__Group__0__Impl
-	rule__BasicComponent__Group__1
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__BasicComponent__Group__0__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getBasicComponentAccess().getBasicComponentKeyword_0()); }
-
-	'BasicComponent' 
-
-{ after(grammarAccess.getBasicComponentAccess().getBasicComponentKeyword_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__BasicComponent__Group__1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__BasicComponent__Group__1__Impl
-	rule__BasicComponent__Group__2
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__BasicComponent__Group__1__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getBasicComponentAccess().getNameAssignment_1()); }
-(rule__BasicComponent__NameAssignment_1)
-{ after(grammarAccess.getBasicComponentAccess().getNameAssignment_1()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__BasicComponent__Group__2
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__BasicComponent__Group__2__Impl
-	rule__BasicComponent__Group__3
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__BasicComponent__Group__2__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getBasicComponentAccess().getGroup_2()); }
-(rule__BasicComponent__Group_2__0)?
-{ after(grammarAccess.getBasicComponentAccess().getGroup_2()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__BasicComponent__Group__3
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__BasicComponent__Group__3__Impl
-	rule__BasicComponent__Group__4
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__BasicComponent__Group__3__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getBasicComponentAccess().getGroup_3()); }
-(rule__BasicComponent__Group_3__0)?
-{ after(grammarAccess.getBasicComponentAccess().getGroup_3()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__BasicComponent__Group__4
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__BasicComponent__Group__4__Impl
-	rule__BasicComponent__Group__5
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__BasicComponent__Group__4__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getBasicComponentAccess().getLeftCurlyBracketKeyword_4()); }
-
-	'{' 
-
-{ after(grammarAccess.getBasicComponentAccess().getLeftCurlyBracketKeyword_4()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__BasicComponent__Group__5
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__BasicComponent__Group__5__Impl
-	rule__BasicComponent__Group__6
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__BasicComponent__Group__5__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getBasicComponentAccess().getGroup_5()); }
-(rule__BasicComponent__Group_5__0)?
-{ after(grammarAccess.getBasicComponentAccess().getGroup_5()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__BasicComponent__Group__6
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__BasicComponent__Group__6__Impl
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__BasicComponent__Group__6__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getBasicComponentAccess().getRightCurlyBracketKeyword_6()); }
-
-	'}' 
-
-{ after(grammarAccess.getBasicComponentAccess().getRightCurlyBracketKeyword_6()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-rule__BasicComponent__Group_2__0
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__BasicComponent__Group_2__0__Impl
-	rule__BasicComponent__Group_2__1
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__BasicComponent__Group_2__0__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getBasicComponentAccess().getProvidedRolesAssignment_2_0()); }
-(rule__BasicComponent__ProvidedRolesAssignment_2_0)
-{ after(grammarAccess.getBasicComponentAccess().getProvidedRolesAssignment_2_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__BasicComponent__Group_2__1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__BasicComponent__Group_2__1__Impl
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__BasicComponent__Group_2__1__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getBasicComponentAccess().getGroup_2_1()); }
-(rule__BasicComponent__Group_2_1__0)*
-{ after(grammarAccess.getBasicComponentAccess().getGroup_2_1()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-rule__BasicComponent__Group_2_1__0
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__BasicComponent__Group_2_1__0__Impl
-	rule__BasicComponent__Group_2_1__1
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__BasicComponent__Group_2_1__0__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getBasicComponentAccess().getCommaKeyword_2_1_0()); }
-
-	',' 
-
-{ after(grammarAccess.getBasicComponentAccess().getCommaKeyword_2_1_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__BasicComponent__Group_2_1__1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__BasicComponent__Group_2_1__1__Impl
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__BasicComponent__Group_2_1__1__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getBasicComponentAccess().getProvidedRolesAssignment_2_1_1()); }
-(rule__BasicComponent__ProvidedRolesAssignment_2_1_1)
-{ after(grammarAccess.getBasicComponentAccess().getProvidedRolesAssignment_2_1_1()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-rule__BasicComponent__Group_3__0
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__BasicComponent__Group_3__0__Impl
-	rule__BasicComponent__Group_3__1
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__BasicComponent__Group_3__0__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getBasicComponentAccess().getRequiredRolesAssignment_3_0()); }
-(rule__BasicComponent__RequiredRolesAssignment_3_0)
-{ after(grammarAccess.getBasicComponentAccess().getRequiredRolesAssignment_3_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__BasicComponent__Group_3__1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__BasicComponent__Group_3__1__Impl
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__BasicComponent__Group_3__1__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getBasicComponentAccess().getGroup_3_1()); }
-(rule__BasicComponent__Group_3_1__0)*
-{ after(grammarAccess.getBasicComponentAccess().getGroup_3_1()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-rule__BasicComponent__Group_3_1__0
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__BasicComponent__Group_3_1__0__Impl
-	rule__BasicComponent__Group_3_1__1
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__BasicComponent__Group_3_1__0__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getBasicComponentAccess().getCommaKeyword_3_1_0()); }
-
-	',' 
-
-{ after(grammarAccess.getBasicComponentAccess().getCommaKeyword_3_1_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__BasicComponent__Group_3_1__1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__BasicComponent__Group_3_1__1__Impl
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__BasicComponent__Group_3_1__1__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getBasicComponentAccess().getRequiredRolesAssignment_3_1_1()); }
-(rule__BasicComponent__RequiredRolesAssignment_3_1_1)
-{ after(grammarAccess.getBasicComponentAccess().getRequiredRolesAssignment_3_1_1()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-rule__BasicComponent__Group_5__0
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__BasicComponent__Group_5__0__Impl
-	rule__BasicComponent__Group_5__1
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__BasicComponent__Group_5__0__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getBasicComponentAccess().getRelationshipKeyword_5_0()); }
-
-	'relationship' 
-
-{ after(grammarAccess.getBasicComponentAccess().getRelationshipKeyword_5_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__BasicComponent__Group_5__1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__BasicComponent__Group_5__1__Impl
-	rule__BasicComponent__Group_5__2
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__BasicComponent__Group_5__1__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getBasicComponentAccess().getLeftParenthesisKeyword_5_1()); }
-
-	'(' 
-
-{ after(grammarAccess.getBasicComponentAccess().getLeftParenthesisKeyword_5_1()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__BasicComponent__Group_5__2
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__BasicComponent__Group_5__2__Impl
-	rule__BasicComponent__Group_5__3
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__BasicComponent__Group_5__2__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getBasicComponentAccess().getRelationshipAssignment_5_2()); }
-(rule__BasicComponent__RelationshipAssignment_5_2)
-{ after(grammarAccess.getBasicComponentAccess().getRelationshipAssignment_5_2()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__BasicComponent__Group_5__3
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__BasicComponent__Group_5__3__Impl
-	rule__BasicComponent__Group_5__4
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__BasicComponent__Group_5__3__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getBasicComponentAccess().getGroup_5_3()); }
-(rule__BasicComponent__Group_5_3__0)*
-{ after(grammarAccess.getBasicComponentAccess().getGroup_5_3()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__BasicComponent__Group_5__4
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__BasicComponent__Group_5__4__Impl
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__BasicComponent__Group_5__4__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getBasicComponentAccess().getRightParenthesisKeyword_5_4()); }
-
-	')' 
-
-{ after(grammarAccess.getBasicComponentAccess().getRightParenthesisKeyword_5_4()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-
-
-
-
-
-
-rule__BasicComponent__Group_5_3__0
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__BasicComponent__Group_5_3__0__Impl
-	rule__BasicComponent__Group_5_3__1
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__BasicComponent__Group_5_3__0__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getBasicComponentAccess().getCommaKeyword_5_3_0()); }
-
-	',' 
-
-{ after(grammarAccess.getBasicComponentAccess().getCommaKeyword_5_3_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__BasicComponent__Group_5_3__1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__BasicComponent__Group_5_3__1__Impl
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__BasicComponent__Group_5_3__1__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getBasicComponentAccess().getRelationshipAssignment_5_3_1()); }
-(rule__BasicComponent__RelationshipAssignment_5_3_1)
-{ after(grammarAccess.getBasicComponentAccess().getRelationshipAssignment_5_3_1()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-rule__CompositeComponent__Group__0
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__CompositeComponent__Group__0__Impl
-	rule__CompositeComponent__Group__1
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__CompositeComponent__Group__0__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getCompositeComponentAccess().getCompositeComponentKeyword_0()); }
-
-	'CompositeComponent' 
-
-{ after(grammarAccess.getCompositeComponentAccess().getCompositeComponentKeyword_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__CompositeComponent__Group__1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__CompositeComponent__Group__1__Impl
-	rule__CompositeComponent__Group__2
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__CompositeComponent__Group__1__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getCompositeComponentAccess().getNameAssignment_1()); }
-(rule__CompositeComponent__NameAssignment_1)
-{ after(grammarAccess.getCompositeComponentAccess().getNameAssignment_1()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__CompositeComponent__Group__2
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__CompositeComponent__Group__2__Impl
-	rule__CompositeComponent__Group__3
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__CompositeComponent__Group__2__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getCompositeComponentAccess().getGroup_2()); }
-(rule__CompositeComponent__Group_2__0)?
-{ after(grammarAccess.getCompositeComponentAccess().getGroup_2()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__CompositeComponent__Group__3
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__CompositeComponent__Group__3__Impl
-	rule__CompositeComponent__Group__4
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__CompositeComponent__Group__3__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getCompositeComponentAccess().getGroup_3()); }
-(rule__CompositeComponent__Group_3__0)?
-{ after(grammarAccess.getCompositeComponentAccess().getGroup_3()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__CompositeComponent__Group__4
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__CompositeComponent__Group__4__Impl
-	rule__CompositeComponent__Group__5
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__CompositeComponent__Group__4__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getCompositeComponentAccess().getLeftCurlyBracketKeyword_4()); }
-
-	'{' 
-
-{ after(grammarAccess.getCompositeComponentAccess().getLeftCurlyBracketKeyword_4()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__CompositeComponent__Group__5
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__CompositeComponent__Group__5__Impl
-	rule__CompositeComponent__Group__6
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__CompositeComponent__Group__5__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getCompositeComponentAccess().getGroup_5()); }
-(rule__CompositeComponent__Group_5__0)?
-{ after(grammarAccess.getCompositeComponentAccess().getGroup_5()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__CompositeComponent__Group__6
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__CompositeComponent__Group__6__Impl
-	rule__CompositeComponent__Group__7
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__CompositeComponent__Group__6__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getCompositeComponentAccess().getGroup_6()); }
-(rule__CompositeComponent__Group_6__0)?
-{ after(grammarAccess.getCompositeComponentAccess().getGroup_6()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__CompositeComponent__Group__7
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__CompositeComponent__Group__7__Impl
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__CompositeComponent__Group__7__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getCompositeComponentAccess().getRightCurlyBracketKeyword_7()); }
-
-	'}' 
-
-{ after(grammarAccess.getCompositeComponentAccess().getRightCurlyBracketKeyword_7()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-rule__CompositeComponent__Group_2__0
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__CompositeComponent__Group_2__0__Impl
-	rule__CompositeComponent__Group_2__1
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__CompositeComponent__Group_2__0__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getCompositeComponentAccess().getProvidedRolesAssignment_2_0()); }
-(rule__CompositeComponent__ProvidedRolesAssignment_2_0)
-{ after(grammarAccess.getCompositeComponentAccess().getProvidedRolesAssignment_2_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__CompositeComponent__Group_2__1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__CompositeComponent__Group_2__1__Impl
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__CompositeComponent__Group_2__1__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getCompositeComponentAccess().getGroup_2_1()); }
-(rule__CompositeComponent__Group_2_1__0)*
-{ after(grammarAccess.getCompositeComponentAccess().getGroup_2_1()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-rule__CompositeComponent__Group_2_1__0
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__CompositeComponent__Group_2_1__0__Impl
-	rule__CompositeComponent__Group_2_1__1
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__CompositeComponent__Group_2_1__0__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getCompositeComponentAccess().getCommaKeyword_2_1_0()); }
-
-	',' 
-
-{ after(grammarAccess.getCompositeComponentAccess().getCommaKeyword_2_1_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__CompositeComponent__Group_2_1__1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__CompositeComponent__Group_2_1__1__Impl
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__CompositeComponent__Group_2_1__1__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getCompositeComponentAccess().getProvidedRolesAssignment_2_1_1()); }
-(rule__CompositeComponent__ProvidedRolesAssignment_2_1_1)
-{ after(grammarAccess.getCompositeComponentAccess().getProvidedRolesAssignment_2_1_1()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-rule__CompositeComponent__Group_3__0
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__CompositeComponent__Group_3__0__Impl
-	rule__CompositeComponent__Group_3__1
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__CompositeComponent__Group_3__0__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getCompositeComponentAccess().getRequiredRolesAssignment_3_0()); }
-(rule__CompositeComponent__RequiredRolesAssignment_3_0)
-{ after(grammarAccess.getCompositeComponentAccess().getRequiredRolesAssignment_3_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__CompositeComponent__Group_3__1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__CompositeComponent__Group_3__1__Impl
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__CompositeComponent__Group_3__1__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getCompositeComponentAccess().getGroup_3_1()); }
-(rule__CompositeComponent__Group_3_1__0)*
-{ after(grammarAccess.getCompositeComponentAccess().getGroup_3_1()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-rule__CompositeComponent__Group_3_1__0
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__CompositeComponent__Group_3_1__0__Impl
-	rule__CompositeComponent__Group_3_1__1
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__CompositeComponent__Group_3_1__0__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getCompositeComponentAccess().getCommaKeyword_3_1_0()); }
-
-	',' 
-
-{ after(grammarAccess.getCompositeComponentAccess().getCommaKeyword_3_1_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__CompositeComponent__Group_3_1__1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__CompositeComponent__Group_3_1__1__Impl
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__CompositeComponent__Group_3_1__1__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getCompositeComponentAccess().getRequiredRolesAssignment_3_1_1()); }
-(rule__CompositeComponent__RequiredRolesAssignment_3_1_1)
-{ after(grammarAccess.getCompositeComponentAccess().getRequiredRolesAssignment_3_1_1()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-rule__CompositeComponent__Group_5__0
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__CompositeComponent__Group_5__0__Impl
-	rule__CompositeComponent__Group_5__1
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__CompositeComponent__Group_5__0__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getCompositeComponentAccess().getRelationshipKeyword_5_0()); }
-
-	'relationship' 
-
-{ after(grammarAccess.getCompositeComponentAccess().getRelationshipKeyword_5_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__CompositeComponent__Group_5__1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__CompositeComponent__Group_5__1__Impl
-	rule__CompositeComponent__Group_5__2
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__CompositeComponent__Group_5__1__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getCompositeComponentAccess().getLeftParenthesisKeyword_5_1()); }
-
-	'(' 
-
-{ after(grammarAccess.getCompositeComponentAccess().getLeftParenthesisKeyword_5_1()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__CompositeComponent__Group_5__2
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__CompositeComponent__Group_5__2__Impl
-	rule__CompositeComponent__Group_5__3
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__CompositeComponent__Group_5__2__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getCompositeComponentAccess().getRelationshipAssignment_5_2()); }
-(rule__CompositeComponent__RelationshipAssignment_5_2)
-{ after(grammarAccess.getCompositeComponentAccess().getRelationshipAssignment_5_2()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__CompositeComponent__Group_5__3
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__CompositeComponent__Group_5__3__Impl
-	rule__CompositeComponent__Group_5__4
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__CompositeComponent__Group_5__3__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getCompositeComponentAccess().getGroup_5_3()); }
-(rule__CompositeComponent__Group_5_3__0)*
-{ after(grammarAccess.getCompositeComponentAccess().getGroup_5_3()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__CompositeComponent__Group_5__4
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__CompositeComponent__Group_5__4__Impl
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__CompositeComponent__Group_5__4__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getCompositeComponentAccess().getRightParenthesisKeyword_5_4()); }
-
-	')' 
-
-{ after(grammarAccess.getCompositeComponentAccess().getRightParenthesisKeyword_5_4()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-
-
-
-
-
-
-rule__CompositeComponent__Group_5_3__0
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__CompositeComponent__Group_5_3__0__Impl
-	rule__CompositeComponent__Group_5_3__1
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__CompositeComponent__Group_5_3__0__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getCompositeComponentAccess().getCommaKeyword_5_3_0()); }
-
-	',' 
-
-{ after(grammarAccess.getCompositeComponentAccess().getCommaKeyword_5_3_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__CompositeComponent__Group_5_3__1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__CompositeComponent__Group_5_3__1__Impl
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__CompositeComponent__Group_5_3__1__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getCompositeComponentAccess().getRelationshipAssignment_5_3_1()); }
-(rule__CompositeComponent__RelationshipAssignment_5_3_1)
-{ after(grammarAccess.getCompositeComponentAccess().getRelationshipAssignment_5_3_1()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-rule__CompositeComponent__Group_6__0
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__CompositeComponent__Group_6__0__Impl
-	rule__CompositeComponent__Group_6__1
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__CompositeComponent__Group_6__0__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getCompositeComponentAccess().getAssemblyKeyword_6_0()); }
-
-	'assembly' 
-
-{ after(grammarAccess.getCompositeComponentAccess().getAssemblyKeyword_6_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__CompositeComponent__Group_6__1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__CompositeComponent__Group_6__1__Impl
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__CompositeComponent__Group_6__1__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getCompositeComponentAccess().getAssemblyAssignment_6_1()); }
-(rule__CompositeComponent__AssemblyAssignment_6_1)
-{ after(grammarAccess.getCompositeComponentAccess().getAssemblyAssignment_6_1()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-rule__SubSystem__Group__0
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__SubSystem__Group__0__Impl
-	rule__SubSystem__Group__1
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__SubSystem__Group__0__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getSubSystemAccess().getSubSystemKeyword_0()); }
-
-	'SubSystem' 
-
-{ after(grammarAccess.getSubSystemAccess().getSubSystemKeyword_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__SubSystem__Group__1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__SubSystem__Group__1__Impl
-	rule__SubSystem__Group__2
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__SubSystem__Group__1__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getSubSystemAccess().getNameAssignment_1()); }
-(rule__SubSystem__NameAssignment_1)
-{ after(grammarAccess.getSubSystemAccess().getNameAssignment_1()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__SubSystem__Group__2
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__SubSystem__Group__2__Impl
-	rule__SubSystem__Group__3
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__SubSystem__Group__2__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getSubSystemAccess().getGroup_2()); }
-(rule__SubSystem__Group_2__0)?
-{ after(grammarAccess.getSubSystemAccess().getGroup_2()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__SubSystem__Group__3
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__SubSystem__Group__3__Impl
-	rule__SubSystem__Group__4
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__SubSystem__Group__3__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getSubSystemAccess().getGroup_3()); }
-(rule__SubSystem__Group_3__0)?
-{ after(grammarAccess.getSubSystemAccess().getGroup_3()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__SubSystem__Group__4
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__SubSystem__Group__4__Impl
-	rule__SubSystem__Group__5
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__SubSystem__Group__4__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getSubSystemAccess().getLeftCurlyBracketKeyword_4()); }
-
-	'{' 
-
-{ after(grammarAccess.getSubSystemAccess().getLeftCurlyBracketKeyword_4()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__SubSystem__Group__5
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__SubSystem__Group__5__Impl
-	rule__SubSystem__Group__6
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__SubSystem__Group__5__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getSubSystemAccess().getGroup_5()); }
-(rule__SubSystem__Group_5__0)?
-{ after(grammarAccess.getSubSystemAccess().getGroup_5()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__SubSystem__Group__6
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__SubSystem__Group__6__Impl
-	rule__SubSystem__Group__7
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__SubSystem__Group__6__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getSubSystemAccess().getGroup_6()); }
-(rule__SubSystem__Group_6__0)?
-{ after(grammarAccess.getSubSystemAccess().getGroup_6()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__SubSystem__Group__7
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__SubSystem__Group__7__Impl
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__SubSystem__Group__7__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getSubSystemAccess().getRightCurlyBracketKeyword_7()); }
-
-	'}' 
-
-{ after(grammarAccess.getSubSystemAccess().getRightCurlyBracketKeyword_7()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-rule__SubSystem__Group_2__0
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__SubSystem__Group_2__0__Impl
-	rule__SubSystem__Group_2__1
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__SubSystem__Group_2__0__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getSubSystemAccess().getProvidedRolesKeyword_2_0()); }
-
-	'providedRoles' 
-
-{ after(grammarAccess.getSubSystemAccess().getProvidedRolesKeyword_2_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__SubSystem__Group_2__1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__SubSystem__Group_2__1__Impl
-	rule__SubSystem__Group_2__2
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__SubSystem__Group_2__1__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getSubSystemAccess().getLeftCurlyBracketKeyword_2_1()); }
-
-	'{' 
-
-{ after(grammarAccess.getSubSystemAccess().getLeftCurlyBracketKeyword_2_1()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__SubSystem__Group_2__2
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__SubSystem__Group_2__2__Impl
-	rule__SubSystem__Group_2__3
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__SubSystem__Group_2__2__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getSubSystemAccess().getProvidedRolesAssignment_2_2()); }
-(rule__SubSystem__ProvidedRolesAssignment_2_2)
-{ after(grammarAccess.getSubSystemAccess().getProvidedRolesAssignment_2_2()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__SubSystem__Group_2__3
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__SubSystem__Group_2__3__Impl
-	rule__SubSystem__Group_2__4
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__SubSystem__Group_2__3__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getSubSystemAccess().getGroup_2_3()); }
-(rule__SubSystem__Group_2_3__0)*
-{ after(grammarAccess.getSubSystemAccess().getGroup_2_3()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__SubSystem__Group_2__4
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__SubSystem__Group_2__4__Impl
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__SubSystem__Group_2__4__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getSubSystemAccess().getRightCurlyBracketKeyword_2_4()); }
-
-	'}' 
-
-{ after(grammarAccess.getSubSystemAccess().getRightCurlyBracketKeyword_2_4()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-
-
-
-
-
-
-rule__SubSystem__Group_2_3__0
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__SubSystem__Group_2_3__0__Impl
-	rule__SubSystem__Group_2_3__1
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__SubSystem__Group_2_3__0__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getSubSystemAccess().getCommaKeyword_2_3_0()); }
-
-	',' 
-
-{ after(grammarAccess.getSubSystemAccess().getCommaKeyword_2_3_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__SubSystem__Group_2_3__1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__SubSystem__Group_2_3__1__Impl
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__SubSystem__Group_2_3__1__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getSubSystemAccess().getProvidedRolesAssignment_2_3_1()); }
-(rule__SubSystem__ProvidedRolesAssignment_2_3_1)
-{ after(grammarAccess.getSubSystemAccess().getProvidedRolesAssignment_2_3_1()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-rule__SubSystem__Group_3__0
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__SubSystem__Group_3__0__Impl
-	rule__SubSystem__Group_3__1
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__SubSystem__Group_3__0__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getSubSystemAccess().getRequiredRolesKeyword_3_0()); }
-
-	'requiredRoles' 
-
-{ after(grammarAccess.getSubSystemAccess().getRequiredRolesKeyword_3_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__SubSystem__Group_3__1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__SubSystem__Group_3__1__Impl
-	rule__SubSystem__Group_3__2
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__SubSystem__Group_3__1__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getSubSystemAccess().getLeftCurlyBracketKeyword_3_1()); }
-
-	'{' 
-
-{ after(grammarAccess.getSubSystemAccess().getLeftCurlyBracketKeyword_3_1()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__SubSystem__Group_3__2
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__SubSystem__Group_3__2__Impl
-	rule__SubSystem__Group_3__3
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__SubSystem__Group_3__2__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getSubSystemAccess().getRequiredRolesAssignment_3_2()); }
-(rule__SubSystem__RequiredRolesAssignment_3_2)
-{ after(grammarAccess.getSubSystemAccess().getRequiredRolesAssignment_3_2()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__SubSystem__Group_3__3
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__SubSystem__Group_3__3__Impl
-	rule__SubSystem__Group_3__4
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__SubSystem__Group_3__3__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getSubSystemAccess().getGroup_3_3()); }
-(rule__SubSystem__Group_3_3__0)*
-{ after(grammarAccess.getSubSystemAccess().getGroup_3_3()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__SubSystem__Group_3__4
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__SubSystem__Group_3__4__Impl
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__SubSystem__Group_3__4__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getSubSystemAccess().getRightCurlyBracketKeyword_3_4()); }
-
-	'}' 
-
-{ after(grammarAccess.getSubSystemAccess().getRightCurlyBracketKeyword_3_4()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-
-
-
-
-
-
-rule__SubSystem__Group_3_3__0
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__SubSystem__Group_3_3__0__Impl
-	rule__SubSystem__Group_3_3__1
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__SubSystem__Group_3_3__0__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getSubSystemAccess().getCommaKeyword_3_3_0()); }
-
-	',' 
-
-{ after(grammarAccess.getSubSystemAccess().getCommaKeyword_3_3_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__SubSystem__Group_3_3__1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__SubSystem__Group_3_3__1__Impl
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__SubSystem__Group_3_3__1__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getSubSystemAccess().getRequiredRolesAssignment_3_3_1()); }
-(rule__SubSystem__RequiredRolesAssignment_3_3_1)
-{ after(grammarAccess.getSubSystemAccess().getRequiredRolesAssignment_3_3_1()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-rule__SubSystem__Group_5__0
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__SubSystem__Group_5__0__Impl
-	rule__SubSystem__Group_5__1
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__SubSystem__Group_5__0__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getSubSystemAccess().getRelationshipKeyword_5_0()); }
-
-	'relationship' 
-
-{ after(grammarAccess.getSubSystemAccess().getRelationshipKeyword_5_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__SubSystem__Group_5__1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__SubSystem__Group_5__1__Impl
-	rule__SubSystem__Group_5__2
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__SubSystem__Group_5__1__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getSubSystemAccess().getLeftParenthesisKeyword_5_1()); }
-
-	'(' 
-
-{ after(grammarAccess.getSubSystemAccess().getLeftParenthesisKeyword_5_1()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__SubSystem__Group_5__2
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__SubSystem__Group_5__2__Impl
-	rule__SubSystem__Group_5__3
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__SubSystem__Group_5__2__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getSubSystemAccess().getRelationshipAssignment_5_2()); }
-(rule__SubSystem__RelationshipAssignment_5_2)
-{ after(grammarAccess.getSubSystemAccess().getRelationshipAssignment_5_2()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__SubSystem__Group_5__3
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__SubSystem__Group_5__3__Impl
-	rule__SubSystem__Group_5__4
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__SubSystem__Group_5__3__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getSubSystemAccess().getGroup_5_3()); }
-(rule__SubSystem__Group_5_3__0)*
-{ after(grammarAccess.getSubSystemAccess().getGroup_5_3()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__SubSystem__Group_5__4
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__SubSystem__Group_5__4__Impl
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__SubSystem__Group_5__4__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getSubSystemAccess().getRightParenthesisKeyword_5_4()); }
-
-	')' 
-
-{ after(grammarAccess.getSubSystemAccess().getRightParenthesisKeyword_5_4()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-
-
-
-
-
-
-rule__SubSystem__Group_5_3__0
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__SubSystem__Group_5_3__0__Impl
-	rule__SubSystem__Group_5_3__1
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__SubSystem__Group_5_3__0__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getSubSystemAccess().getCommaKeyword_5_3_0()); }
-
-	',' 
-
-{ after(grammarAccess.getSubSystemAccess().getCommaKeyword_5_3_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__SubSystem__Group_5_3__1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__SubSystem__Group_5_3__1__Impl
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__SubSystem__Group_5_3__1__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getSubSystemAccess().getRelationshipAssignment_5_3_1()); }
-(rule__SubSystem__RelationshipAssignment_5_3_1)
-{ after(grammarAccess.getSubSystemAccess().getRelationshipAssignment_5_3_1()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-rule__SubSystem__Group_6__0
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__SubSystem__Group_6__0__Impl
-	rule__SubSystem__Group_6__1
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__SubSystem__Group_6__0__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getSubSystemAccess().getAssemblyKeyword_6_0()); }
-
-	'assembly' 
-
-{ after(grammarAccess.getSubSystemAccess().getAssemblyKeyword_6_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__SubSystem__Group_6__1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__SubSystem__Group_6__1__Impl
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__SubSystem__Group_6__1__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getSubSystemAccess().getAssemblyAssignment_6_1()); }
-(rule__SubSystem__AssemblyAssignment_6_1)
-{ after(grammarAccess.getSubSystemAccess().getAssemblyAssignment_6_1()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-rule__ComposedStructureAssembly__Group__0
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__ComposedStructureAssembly__Group__0__Impl
-	rule__ComposedStructureAssembly__Group__1
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__ComposedStructureAssembly__Group__0__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getComposedStructureAssemblyAccess().getComposedStructureAssemblyAction_0()); }
-(
-
-)
-{ after(grammarAccess.getComposedStructureAssemblyAccess().getComposedStructureAssemblyAction_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__ComposedStructureAssembly__Group__1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__ComposedStructureAssembly__Group__1__Impl
-	rule__ComposedStructureAssembly__Group__2
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__ComposedStructureAssembly__Group__1__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getComposedStructureAssemblyAccess().getComposedStructureAssemblyKeyword_1()); }
-
-	'ComposedStructureAssembly' 
-
-{ after(grammarAccess.getComposedStructureAssemblyAccess().getComposedStructureAssemblyKeyword_1()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__ComposedStructureAssembly__Group__2
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__ComposedStructureAssembly__Group__2__Impl
-	rule__ComposedStructureAssembly__Group__3
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__ComposedStructureAssembly__Group__2__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getComposedStructureAssemblyAccess().getLeftCurlyBracketKeyword_2()); }
-
-	'{' 
-
-{ after(grammarAccess.getComposedStructureAssemblyAccess().getLeftCurlyBracketKeyword_2()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__ComposedStructureAssembly__Group__3
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__ComposedStructureAssembly__Group__3__Impl
-	rule__ComposedStructureAssembly__Group__4
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__ComposedStructureAssembly__Group__3__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getComposedStructureAssemblyAccess().getGroup_3()); }
-(rule__ComposedStructureAssembly__Group_3__0)?
-{ after(grammarAccess.getComposedStructureAssemblyAccess().getGroup_3()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__ComposedStructureAssembly__Group__4
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__ComposedStructureAssembly__Group__4__Impl
-	rule__ComposedStructureAssembly__Group__5
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__ComposedStructureAssembly__Group__4__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getComposedStructureAssemblyAccess().getGroup_4()); }
-(rule__ComposedStructureAssembly__Group_4__0)?
-{ after(grammarAccess.getComposedStructureAssemblyAccess().getGroup_4()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__ComposedStructureAssembly__Group__5
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__ComposedStructureAssembly__Group__5__Impl
-	rule__ComposedStructureAssembly__Group__6
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__ComposedStructureAssembly__Group__5__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getComposedStructureAssemblyAccess().getGroup_5()); }
-(rule__ComposedStructureAssembly__Group_5__0)?
-{ after(grammarAccess.getComposedStructureAssemblyAccess().getGroup_5()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__ComposedStructureAssembly__Group__6
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__ComposedStructureAssembly__Group__6__Impl
-	rule__ComposedStructureAssembly__Group__7
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__ComposedStructureAssembly__Group__6__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getComposedStructureAssemblyAccess().getGroup_6()); }
-(rule__ComposedStructureAssembly__Group_6__0)?
-{ after(grammarAccess.getComposedStructureAssemblyAccess().getGroup_6()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__ComposedStructureAssembly__Group__7
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__ComposedStructureAssembly__Group__7__Impl
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__ComposedStructureAssembly__Group__7__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getComposedStructureAssemblyAccess().getRightCurlyBracketKeyword_7()); }
-
-	'}' 
-
-{ after(grammarAccess.getComposedStructureAssemblyAccess().getRightCurlyBracketKeyword_7()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-rule__ComposedStructureAssembly__Group_3__0
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__ComposedStructureAssembly__Group_3__0__Impl
-	rule__ComposedStructureAssembly__Group_3__1
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__ComposedStructureAssembly__Group_3__0__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getComposedStructureAssemblyAccess().getAssemblyContextsKeyword_3_0()); }
-
-	'assemblyContexts' 
-
-{ after(grammarAccess.getComposedStructureAssemblyAccess().getAssemblyContextsKeyword_3_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__ComposedStructureAssembly__Group_3__1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__ComposedStructureAssembly__Group_3__1__Impl
-	rule__ComposedStructureAssembly__Group_3__2
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__ComposedStructureAssembly__Group_3__1__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getComposedStructureAssemblyAccess().getLeftCurlyBracketKeyword_3_1()); }
-
-	'{' 
-
-{ after(grammarAccess.getComposedStructureAssemblyAccess().getLeftCurlyBracketKeyword_3_1()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__ComposedStructureAssembly__Group_3__2
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__ComposedStructureAssembly__Group_3__2__Impl
-	rule__ComposedStructureAssembly__Group_3__3
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__ComposedStructureAssembly__Group_3__2__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getComposedStructureAssemblyAccess().getAssemblyContextsAssignment_3_2()); }
-(rule__ComposedStructureAssembly__AssemblyContextsAssignment_3_2)
-{ after(grammarAccess.getComposedStructureAssemblyAccess().getAssemblyContextsAssignment_3_2()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__ComposedStructureAssembly__Group_3__3
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__ComposedStructureAssembly__Group_3__3__Impl
-	rule__ComposedStructureAssembly__Group_3__4
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__ComposedStructureAssembly__Group_3__3__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getComposedStructureAssemblyAccess().getGroup_3_3()); }
-(rule__ComposedStructureAssembly__Group_3_3__0)*
-{ after(grammarAccess.getComposedStructureAssemblyAccess().getGroup_3_3()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__ComposedStructureAssembly__Group_3__4
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__ComposedStructureAssembly__Group_3__4__Impl
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__ComposedStructureAssembly__Group_3__4__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getComposedStructureAssemblyAccess().getRightCurlyBracketKeyword_3_4()); }
-
-	'}' 
-
-{ after(grammarAccess.getComposedStructureAssemblyAccess().getRightCurlyBracketKeyword_3_4()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-
-
-
-
-
-
-rule__ComposedStructureAssembly__Group_3_3__0
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__ComposedStructureAssembly__Group_3_3__0__Impl
-	rule__ComposedStructureAssembly__Group_3_3__1
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__ComposedStructureAssembly__Group_3_3__0__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getComposedStructureAssemblyAccess().getCommaKeyword_3_3_0()); }
-
-	',' 
-
-{ after(grammarAccess.getComposedStructureAssemblyAccess().getCommaKeyword_3_3_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__ComposedStructureAssembly__Group_3_3__1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__ComposedStructureAssembly__Group_3_3__1__Impl
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__ComposedStructureAssembly__Group_3_3__1__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getComposedStructureAssemblyAccess().getAssemblyContextsAssignment_3_3_1()); }
-(rule__ComposedStructureAssembly__AssemblyContextsAssignment_3_3_1)
-{ after(grammarAccess.getComposedStructureAssemblyAccess().getAssemblyContextsAssignment_3_3_1()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-rule__ComposedStructureAssembly__Group_4__0
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__ComposedStructureAssembly__Group_4__0__Impl
-	rule__ComposedStructureAssembly__Group_4__1
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__ComposedStructureAssembly__Group_4__0__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getComposedStructureAssemblyAccess().getAssemblyConnectorsKeyword_4_0()); }
-
-	'assemblyConnectors' 
-
-{ after(grammarAccess.getComposedStructureAssemblyAccess().getAssemblyConnectorsKeyword_4_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__ComposedStructureAssembly__Group_4__1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__ComposedStructureAssembly__Group_4__1__Impl
-	rule__ComposedStructureAssembly__Group_4__2
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__ComposedStructureAssembly__Group_4__1__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getComposedStructureAssemblyAccess().getLeftCurlyBracketKeyword_4_1()); }
-
-	'{' 
-
-{ after(grammarAccess.getComposedStructureAssemblyAccess().getLeftCurlyBracketKeyword_4_1()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__ComposedStructureAssembly__Group_4__2
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__ComposedStructureAssembly__Group_4__2__Impl
-	rule__ComposedStructureAssembly__Group_4__3
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__ComposedStructureAssembly__Group_4__2__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getComposedStructureAssemblyAccess().getAssemblyConnectorsAssignment_4_2()); }
-(rule__ComposedStructureAssembly__AssemblyConnectorsAssignment_4_2)
-{ after(grammarAccess.getComposedStructureAssemblyAccess().getAssemblyConnectorsAssignment_4_2()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__ComposedStructureAssembly__Group_4__3
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__ComposedStructureAssembly__Group_4__3__Impl
-	rule__ComposedStructureAssembly__Group_4__4
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__ComposedStructureAssembly__Group_4__3__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getComposedStructureAssemblyAccess().getGroup_4_3()); }
-(rule__ComposedStructureAssembly__Group_4_3__0)*
-{ after(grammarAccess.getComposedStructureAssemblyAccess().getGroup_4_3()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__ComposedStructureAssembly__Group_4__4
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__ComposedStructureAssembly__Group_4__4__Impl
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__ComposedStructureAssembly__Group_4__4__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getComposedStructureAssemblyAccess().getRightCurlyBracketKeyword_4_4()); }
-
-	'}' 
-
-{ after(grammarAccess.getComposedStructureAssemblyAccess().getRightCurlyBracketKeyword_4_4()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-
-
-
-
-
-
-rule__ComposedStructureAssembly__Group_4_3__0
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__ComposedStructureAssembly__Group_4_3__0__Impl
-	rule__ComposedStructureAssembly__Group_4_3__1
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__ComposedStructureAssembly__Group_4_3__0__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getComposedStructureAssemblyAccess().getCommaKeyword_4_3_0()); }
-
-	',' 
-
-{ after(grammarAccess.getComposedStructureAssemblyAccess().getCommaKeyword_4_3_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__ComposedStructureAssembly__Group_4_3__1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__ComposedStructureAssembly__Group_4_3__1__Impl
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__ComposedStructureAssembly__Group_4_3__1__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getComposedStructureAssemblyAccess().getAssemblyConnectorsAssignment_4_3_1()); }
-(rule__ComposedStructureAssembly__AssemblyConnectorsAssignment_4_3_1)
-{ after(grammarAccess.getComposedStructureAssemblyAccess().getAssemblyConnectorsAssignment_4_3_1()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-rule__ComposedStructureAssembly__Group_5__0
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__ComposedStructureAssembly__Group_5__0__Impl
-	rule__ComposedStructureAssembly__Group_5__1
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__ComposedStructureAssembly__Group_5__0__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getComposedStructureAssemblyAccess().getProvidedDelegationConnectorsKeyword_5_0()); }
-
-	'providedDelegationConnectors' 
-
-{ after(grammarAccess.getComposedStructureAssemblyAccess().getProvidedDelegationConnectorsKeyword_5_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__ComposedStructureAssembly__Group_5__1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__ComposedStructureAssembly__Group_5__1__Impl
-	rule__ComposedStructureAssembly__Group_5__2
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__ComposedStructureAssembly__Group_5__1__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getComposedStructureAssemblyAccess().getLeftCurlyBracketKeyword_5_1()); }
-
-	'{' 
-
-{ after(grammarAccess.getComposedStructureAssemblyAccess().getLeftCurlyBracketKeyword_5_1()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__ComposedStructureAssembly__Group_5__2
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__ComposedStructureAssembly__Group_5__2__Impl
-	rule__ComposedStructureAssembly__Group_5__3
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__ComposedStructureAssembly__Group_5__2__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getComposedStructureAssemblyAccess().getProvidedDelegationConnectorsAssignment_5_2()); }
-(rule__ComposedStructureAssembly__ProvidedDelegationConnectorsAssignment_5_2)
-{ after(grammarAccess.getComposedStructureAssemblyAccess().getProvidedDelegationConnectorsAssignment_5_2()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__ComposedStructureAssembly__Group_5__3
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__ComposedStructureAssembly__Group_5__3__Impl
-	rule__ComposedStructureAssembly__Group_5__4
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__ComposedStructureAssembly__Group_5__3__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getComposedStructureAssemblyAccess().getGroup_5_3()); }
-(rule__ComposedStructureAssembly__Group_5_3__0)*
-{ after(grammarAccess.getComposedStructureAssemblyAccess().getGroup_5_3()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__ComposedStructureAssembly__Group_5__4
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__ComposedStructureAssembly__Group_5__4__Impl
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__ComposedStructureAssembly__Group_5__4__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getComposedStructureAssemblyAccess().getRightCurlyBracketKeyword_5_4()); }
-
-	'}' 
-
-{ after(grammarAccess.getComposedStructureAssemblyAccess().getRightCurlyBracketKeyword_5_4()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-
-
-
-
-
-
-rule__ComposedStructureAssembly__Group_5_3__0
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__ComposedStructureAssembly__Group_5_3__0__Impl
-	rule__ComposedStructureAssembly__Group_5_3__1
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__ComposedStructureAssembly__Group_5_3__0__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getComposedStructureAssemblyAccess().getCommaKeyword_5_3_0()); }
-
-	',' 
-
-{ after(grammarAccess.getComposedStructureAssemblyAccess().getCommaKeyword_5_3_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__ComposedStructureAssembly__Group_5_3__1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__ComposedStructureAssembly__Group_5_3__1__Impl
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__ComposedStructureAssembly__Group_5_3__1__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getComposedStructureAssemblyAccess().getProvidedDelegationConnectorsAssignment_5_3_1()); }
-(rule__ComposedStructureAssembly__ProvidedDelegationConnectorsAssignment_5_3_1)
-{ after(grammarAccess.getComposedStructureAssemblyAccess().getProvidedDelegationConnectorsAssignment_5_3_1()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-rule__ComposedStructureAssembly__Group_6__0
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__ComposedStructureAssembly__Group_6__0__Impl
-	rule__ComposedStructureAssembly__Group_6__1
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__ComposedStructureAssembly__Group_6__0__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getComposedStructureAssemblyAccess().getRequiredDelegationConnectorsKeyword_6_0()); }
-
-	'requiredDelegationConnectors' 
-
-{ after(grammarAccess.getComposedStructureAssemblyAccess().getRequiredDelegationConnectorsKeyword_6_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__ComposedStructureAssembly__Group_6__1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__ComposedStructureAssembly__Group_6__1__Impl
-	rule__ComposedStructureAssembly__Group_6__2
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__ComposedStructureAssembly__Group_6__1__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getComposedStructureAssemblyAccess().getLeftCurlyBracketKeyword_6_1()); }
-
-	'{' 
-
-{ after(grammarAccess.getComposedStructureAssemblyAccess().getLeftCurlyBracketKeyword_6_1()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__ComposedStructureAssembly__Group_6__2
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__ComposedStructureAssembly__Group_6__2__Impl
-	rule__ComposedStructureAssembly__Group_6__3
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__ComposedStructureAssembly__Group_6__2__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getComposedStructureAssemblyAccess().getRequiredDelegationConnectorsAssignment_6_2()); }
-(rule__ComposedStructureAssembly__RequiredDelegationConnectorsAssignment_6_2)
-{ after(grammarAccess.getComposedStructureAssemblyAccess().getRequiredDelegationConnectorsAssignment_6_2()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__ComposedStructureAssembly__Group_6__3
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__ComposedStructureAssembly__Group_6__3__Impl
-	rule__ComposedStructureAssembly__Group_6__4
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__ComposedStructureAssembly__Group_6__3__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getComposedStructureAssemblyAccess().getGroup_6_3()); }
-(rule__ComposedStructureAssembly__Group_6_3__0)*
-{ after(grammarAccess.getComposedStructureAssemblyAccess().getGroup_6_3()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__ComposedStructureAssembly__Group_6__4
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__ComposedStructureAssembly__Group_6__4__Impl
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__ComposedStructureAssembly__Group_6__4__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getComposedStructureAssemblyAccess().getRightCurlyBracketKeyword_6_4()); }
-
-	'}' 
-
-{ after(grammarAccess.getComposedStructureAssemblyAccess().getRightCurlyBracketKeyword_6_4()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-
-
-
-
-
-
-rule__ComposedStructureAssembly__Group_6_3__0
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__ComposedStructureAssembly__Group_6_3__0__Impl
-	rule__ComposedStructureAssembly__Group_6_3__1
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__ComposedStructureAssembly__Group_6_3__0__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getComposedStructureAssemblyAccess().getCommaKeyword_6_3_0()); }
-
-	',' 
-
-{ after(grammarAccess.getComposedStructureAssemblyAccess().getCommaKeyword_6_3_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__ComposedStructureAssembly__Group_6_3__1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__ComposedStructureAssembly__Group_6_3__1__Impl
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__ComposedStructureAssembly__Group_6_3__1__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getComposedStructureAssemblyAccess().getRequiredDelegationConnectorsAssignment_6_3_1()); }
-(rule__ComposedStructureAssembly__RequiredDelegationConnectorsAssignment_6_3_1)
-{ after(grammarAccess.getComposedStructureAssemblyAccess().getRequiredDelegationConnectorsAssignment_6_3_1()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-rule__AssemblyContext__Group__0
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__AssemblyContext__Group__0__Impl
-	rule__AssemblyContext__Group__1
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__AssemblyContext__Group__0__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getAssemblyContextAccess().getAssemblyContextKeyword_0()); }
-
-	'AssemblyContext' 
-
-{ after(grammarAccess.getAssemblyContextAccess().getAssemblyContextKeyword_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__AssemblyContext__Group__1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__AssemblyContext__Group__1__Impl
-	rule__AssemblyContext__Group__2
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__AssemblyContext__Group__1__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getAssemblyContextAccess().getNameAssignment_1()); }
-(rule__AssemblyContext__NameAssignment_1)
-{ after(grammarAccess.getAssemblyContextAccess().getNameAssignment_1()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__AssemblyContext__Group__2
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__AssemblyContext__Group__2__Impl
-	rule__AssemblyContext__Group__3
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__AssemblyContext__Group__2__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getAssemblyContextAccess().getLeftCurlyBracketKeyword_2()); }
-
-	'{' 
-
-{ after(grammarAccess.getAssemblyContextAccess().getLeftCurlyBracketKeyword_2()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__AssemblyContext__Group__3
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__AssemblyContext__Group__3__Impl
-	rule__AssemblyContext__Group__4
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__AssemblyContext__Group__3__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getAssemblyContextAccess().getEncapsulatedComponentKeyword_3()); }
-
-	'encapsulatedComponent' 
-
-{ after(grammarAccess.getAssemblyContextAccess().getEncapsulatedComponentKeyword_3()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__AssemblyContext__Group__4
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__AssemblyContext__Group__4__Impl
-	rule__AssemblyContext__Group__5
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__AssemblyContext__Group__4__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getAssemblyContextAccess().getEncapsulatedComponentAssignment_4()); }
-(rule__AssemblyContext__EncapsulatedComponentAssignment_4)
-{ after(grammarAccess.getAssemblyContextAccess().getEncapsulatedComponentAssignment_4()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__AssemblyContext__Group__5
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__AssemblyContext__Group__5__Impl
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__AssemblyContext__Group__5__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getAssemblyContextAccess().getRightCurlyBracketKeyword_5()); }
-
-	'}' 
-
-{ after(grammarAccess.getAssemblyContextAccess().getRightCurlyBracketKeyword_5()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-rule__AssemblyConnector__Group__0
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__AssemblyConnector__Group__0__Impl
-	rule__AssemblyConnector__Group__1
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__AssemblyConnector__Group__0__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getAssemblyConnectorAccess().getAssemblyConnectorKeyword_0()); }
-
-	'AssemblyConnector' 
-
-{ after(grammarAccess.getAssemblyConnectorAccess().getAssemblyConnectorKeyword_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__AssemblyConnector__Group__1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__AssemblyConnector__Group__1__Impl
-	rule__AssemblyConnector__Group__2
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__AssemblyConnector__Group__1__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getAssemblyConnectorAccess().getNameAssignment_1()); }
-(rule__AssemblyConnector__NameAssignment_1)
-{ after(grammarAccess.getAssemblyConnectorAccess().getNameAssignment_1()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__AssemblyConnector__Group__2
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__AssemblyConnector__Group__2__Impl
-	rule__AssemblyConnector__Group__3
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__AssemblyConnector__Group__2__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getAssemblyConnectorAccess().getLeftCurlyBracketKeyword_2()); }
-
-	'{' 
-
-{ after(grammarAccess.getAssemblyConnectorAccess().getLeftCurlyBracketKeyword_2()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__AssemblyConnector__Group__3
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__AssemblyConnector__Group__3__Impl
-	rule__AssemblyConnector__Group__4
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__AssemblyConnector__Group__3__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getAssemblyConnectorAccess().getRequiredRoleKeyword_3()); }
-
-	'requiredRole' 
-
-{ after(grammarAccess.getAssemblyConnectorAccess().getRequiredRoleKeyword_3()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__AssemblyConnector__Group__4
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__AssemblyConnector__Group__4__Impl
-	rule__AssemblyConnector__Group__5
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__AssemblyConnector__Group__4__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getAssemblyConnectorAccess().getRequiredRoleAssignment_4()); }
-(rule__AssemblyConnector__RequiredRoleAssignment_4)
-{ after(grammarAccess.getAssemblyConnectorAccess().getRequiredRoleAssignment_4()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__AssemblyConnector__Group__5
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__AssemblyConnector__Group__5__Impl
-	rule__AssemblyConnector__Group__6
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__AssemblyConnector__Group__5__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getAssemblyConnectorAccess().getProvidedRoleKeyword_5()); }
-
-	'providedRole' 
-
-{ after(grammarAccess.getAssemblyConnectorAccess().getProvidedRoleKeyword_5()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__AssemblyConnector__Group__6
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__AssemblyConnector__Group__6__Impl
-	rule__AssemblyConnector__Group__7
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__AssemblyConnector__Group__6__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getAssemblyConnectorAccess().getProvidedRoleAssignment_6()); }
-(rule__AssemblyConnector__ProvidedRoleAssignment_6)
-{ after(grammarAccess.getAssemblyConnectorAccess().getProvidedRoleAssignment_6()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__AssemblyConnector__Group__7
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__AssemblyConnector__Group__7__Impl
-	rule__AssemblyConnector__Group__8
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__AssemblyConnector__Group__7__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getAssemblyConnectorAccess().getProvidingAssemblyContextKeyword_7()); }
-
-	'providingAssemblyContext' 
-
-{ after(grammarAccess.getAssemblyConnectorAccess().getProvidingAssemblyContextKeyword_7()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__AssemblyConnector__Group__8
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__AssemblyConnector__Group__8__Impl
-	rule__AssemblyConnector__Group__9
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__AssemblyConnector__Group__8__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getAssemblyConnectorAccess().getProvidingAssemblyContextAssignment_8()); }
-(rule__AssemblyConnector__ProvidingAssemblyContextAssignment_8)
-{ after(grammarAccess.getAssemblyConnectorAccess().getProvidingAssemblyContextAssignment_8()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__AssemblyConnector__Group__9
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__AssemblyConnector__Group__9__Impl
-	rule__AssemblyConnector__Group__10
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__AssemblyConnector__Group__9__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getAssemblyConnectorAccess().getRequiringAssemblyContextKeyword_9()); }
-
-	'requiringAssemblyContext' 
-
-{ after(grammarAccess.getAssemblyConnectorAccess().getRequiringAssemblyContextKeyword_9()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__AssemblyConnector__Group__10
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__AssemblyConnector__Group__10__Impl
-	rule__AssemblyConnector__Group__11
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__AssemblyConnector__Group__10__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getAssemblyConnectorAccess().getRequiringAssemblyContextAssignment_10()); }
-(rule__AssemblyConnector__RequiringAssemblyContextAssignment_10)
-{ after(grammarAccess.getAssemblyConnectorAccess().getRequiringAssemblyContextAssignment_10()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__AssemblyConnector__Group__11
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__AssemblyConnector__Group__11__Impl
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__AssemblyConnector__Group__11__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getAssemblyConnectorAccess().getRightCurlyBracketKeyword_11()); }
-
-	'}' 
-
-{ after(grammarAccess.getAssemblyConnectorAccess().getRightCurlyBracketKeyword_11()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-rule__ProvidedDelegationConnector__Group__0
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__ProvidedDelegationConnector__Group__0__Impl
-	rule__ProvidedDelegationConnector__Group__1
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__ProvidedDelegationConnector__Group__0__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getProvidedDelegationConnectorAccess().getProvidedDelegationConnectorKeyword_0()); }
-
-	'ProvidedDelegationConnector' 
-
-{ after(grammarAccess.getProvidedDelegationConnectorAccess().getProvidedDelegationConnectorKeyword_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__ProvidedDelegationConnector__Group__1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__ProvidedDelegationConnector__Group__1__Impl
-	rule__ProvidedDelegationConnector__Group__2
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__ProvidedDelegationConnector__Group__1__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getProvidedDelegationConnectorAccess().getNameAssignment_1()); }
-(rule__ProvidedDelegationConnector__NameAssignment_1)
-{ after(grammarAccess.getProvidedDelegationConnectorAccess().getNameAssignment_1()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__ProvidedDelegationConnector__Group__2
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__ProvidedDelegationConnector__Group__2__Impl
-	rule__ProvidedDelegationConnector__Group__3
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__ProvidedDelegationConnector__Group__2__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getProvidedDelegationConnectorAccess().getLeftCurlyBracketKeyword_2()); }
-
-	'{' 
-
-{ after(grammarAccess.getProvidedDelegationConnectorAccess().getLeftCurlyBracketKeyword_2()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__ProvidedDelegationConnector__Group__3
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__ProvidedDelegationConnector__Group__3__Impl
-	rule__ProvidedDelegationConnector__Group__4
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__ProvidedDelegationConnector__Group__3__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getProvidedDelegationConnectorAccess().getAssemblyContextKeyword_3()); }
-
-	'assemblyContext' 
-
-{ after(grammarAccess.getProvidedDelegationConnectorAccess().getAssemblyContextKeyword_3()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__ProvidedDelegationConnector__Group__4
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__ProvidedDelegationConnector__Group__4__Impl
-	rule__ProvidedDelegationConnector__Group__5
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__ProvidedDelegationConnector__Group__4__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getProvidedDelegationConnectorAccess().getAssemblyContextAssignment_4()); }
-(rule__ProvidedDelegationConnector__AssemblyContextAssignment_4)
-{ after(grammarAccess.getProvidedDelegationConnectorAccess().getAssemblyContextAssignment_4()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__ProvidedDelegationConnector__Group__5
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__ProvidedDelegationConnector__Group__5__Impl
-	rule__ProvidedDelegationConnector__Group__6
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__ProvidedDelegationConnector__Group__5__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getProvidedDelegationConnectorAccess().getInnerProvidedRoleKeyword_5()); }
-
-	'innerProvidedRole' 
-
-{ after(grammarAccess.getProvidedDelegationConnectorAccess().getInnerProvidedRoleKeyword_5()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__ProvidedDelegationConnector__Group__6
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__ProvidedDelegationConnector__Group__6__Impl
-	rule__ProvidedDelegationConnector__Group__7
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__ProvidedDelegationConnector__Group__6__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getProvidedDelegationConnectorAccess().getInnerProvidedRoleAssignment_6()); }
-(rule__ProvidedDelegationConnector__InnerProvidedRoleAssignment_6)
-{ after(grammarAccess.getProvidedDelegationConnectorAccess().getInnerProvidedRoleAssignment_6()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__ProvidedDelegationConnector__Group__7
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__ProvidedDelegationConnector__Group__7__Impl
-	rule__ProvidedDelegationConnector__Group__8
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__ProvidedDelegationConnector__Group__7__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getProvidedDelegationConnectorAccess().getOuterProvidedRoleKeyword_7()); }
-
-	'outerProvidedRole' 
-
-{ after(grammarAccess.getProvidedDelegationConnectorAccess().getOuterProvidedRoleKeyword_7()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__ProvidedDelegationConnector__Group__8
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__ProvidedDelegationConnector__Group__8__Impl
-	rule__ProvidedDelegationConnector__Group__9
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__ProvidedDelegationConnector__Group__8__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getProvidedDelegationConnectorAccess().getOuterProvidedRoleAssignment_8()); }
-(rule__ProvidedDelegationConnector__OuterProvidedRoleAssignment_8)
-{ after(grammarAccess.getProvidedDelegationConnectorAccess().getOuterProvidedRoleAssignment_8()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__ProvidedDelegationConnector__Group__9
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__ProvidedDelegationConnector__Group__9__Impl
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__ProvidedDelegationConnector__Group__9__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getProvidedDelegationConnectorAccess().getRightCurlyBracketKeyword_9()); }
-
-	'}' 
-
-{ after(grammarAccess.getProvidedDelegationConnectorAccess().getRightCurlyBracketKeyword_9()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-rule__RequiredDelegationConnector__Group__0
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__RequiredDelegationConnector__Group__0__Impl
-	rule__RequiredDelegationConnector__Group__1
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__RequiredDelegationConnector__Group__0__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRequiredDelegationConnectorAccess().getRequiredDelegationConnectorKeyword_0()); }
-
-	'RequiredDelegationConnector' 
-
-{ after(grammarAccess.getRequiredDelegationConnectorAccess().getRequiredDelegationConnectorKeyword_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__RequiredDelegationConnector__Group__1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__RequiredDelegationConnector__Group__1__Impl
-	rule__RequiredDelegationConnector__Group__2
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__RequiredDelegationConnector__Group__1__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRequiredDelegationConnectorAccess().getNameAssignment_1()); }
-(rule__RequiredDelegationConnector__NameAssignment_1)
-{ after(grammarAccess.getRequiredDelegationConnectorAccess().getNameAssignment_1()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__RequiredDelegationConnector__Group__2
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__RequiredDelegationConnector__Group__2__Impl
-	rule__RequiredDelegationConnector__Group__3
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__RequiredDelegationConnector__Group__2__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRequiredDelegationConnectorAccess().getLeftCurlyBracketKeyword_2()); }
-
-	'{' 
-
-{ after(grammarAccess.getRequiredDelegationConnectorAccess().getLeftCurlyBracketKeyword_2()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__RequiredDelegationConnector__Group__3
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__RequiredDelegationConnector__Group__3__Impl
-	rule__RequiredDelegationConnector__Group__4
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__RequiredDelegationConnector__Group__3__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRequiredDelegationConnectorAccess().getAssemblyContextKeyword_3()); }
-
-	'assemblyContext' 
-
-{ after(grammarAccess.getRequiredDelegationConnectorAccess().getAssemblyContextKeyword_3()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__RequiredDelegationConnector__Group__4
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__RequiredDelegationConnector__Group__4__Impl
-	rule__RequiredDelegationConnector__Group__5
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__RequiredDelegationConnector__Group__4__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRequiredDelegationConnectorAccess().getAssemblyContextAssignment_4()); }
-(rule__RequiredDelegationConnector__AssemblyContextAssignment_4)
-{ after(grammarAccess.getRequiredDelegationConnectorAccess().getAssemblyContextAssignment_4()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__RequiredDelegationConnector__Group__5
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__RequiredDelegationConnector__Group__5__Impl
-	rule__RequiredDelegationConnector__Group__6
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__RequiredDelegationConnector__Group__5__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRequiredDelegationConnectorAccess().getInnerRequiredRoleKeyword_5()); }
-
-	'innerRequiredRole' 
-
-{ after(grammarAccess.getRequiredDelegationConnectorAccess().getInnerRequiredRoleKeyword_5()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__RequiredDelegationConnector__Group__6
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__RequiredDelegationConnector__Group__6__Impl
-	rule__RequiredDelegationConnector__Group__7
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__RequiredDelegationConnector__Group__6__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRequiredDelegationConnectorAccess().getInnerRequiredRoleAssignment_6()); }
-(rule__RequiredDelegationConnector__InnerRequiredRoleAssignment_6)
-{ after(grammarAccess.getRequiredDelegationConnectorAccess().getInnerRequiredRoleAssignment_6()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__RequiredDelegationConnector__Group__7
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__RequiredDelegationConnector__Group__7__Impl
-	rule__RequiredDelegationConnector__Group__8
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__RequiredDelegationConnector__Group__7__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRequiredDelegationConnectorAccess().getOuterRequiredRoleKeyword_7()); }
-
-	'outerRequiredRole' 
-
-{ after(grammarAccess.getRequiredDelegationConnectorAccess().getOuterRequiredRoleKeyword_7()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__RequiredDelegationConnector__Group__8
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__RequiredDelegationConnector__Group__8__Impl
-	rule__RequiredDelegationConnector__Group__9
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__RequiredDelegationConnector__Group__8__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRequiredDelegationConnectorAccess().getOuterRequiredRoleAssignment_8()); }
-(rule__RequiredDelegationConnector__OuterRequiredRoleAssignment_8)
-{ after(grammarAccess.getRequiredDelegationConnectorAccess().getOuterRequiredRoleAssignment_8()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__RequiredDelegationConnector__Group__9
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__RequiredDelegationConnector__Group__9__Impl
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__RequiredDelegationConnector__Group__9__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRequiredDelegationConnectorAccess().getRightCurlyBracketKeyword_9()); }
-
-	'}' 
-
-{ after(grammarAccess.getRequiredDelegationConnectorAccess().getRightCurlyBracketKeyword_9()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-rule__Repository__NameAssignment_1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRepositoryAccess().getNameQualifiedNameParserRuleCall_1_0()); }
-	ruleQualifiedName{ after(grammarAccess.getRepositoryAccess().getNameQualifiedNameParserRuleCall_1_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__Repository__ImportsAssignment_3_2
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRepositoryAccess().getImportsImportParserRuleCall_3_2_0()); }
-	ruleImport{ after(grammarAccess.getRepositoryAccess().getImportsImportParserRuleCall_3_2_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__Repository__ImportsAssignment_3_3_1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRepositoryAccess().getImportsImportParserRuleCall_3_3_1_0()); }
-	ruleImport{ after(grammarAccess.getRepositoryAccess().getImportsImportParserRuleCall_3_3_1_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__Repository__DatatypesAssignment_4_2
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRepositoryAccess().getDatatypesDataTypeParserRuleCall_4_2_0()); }
-	ruleDataType{ after(grammarAccess.getRepositoryAccess().getDatatypesDataTypeParserRuleCall_4_2_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__Repository__DatatypesAssignment_4_3_1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRepositoryAccess().getDatatypesDataTypeParserRuleCall_4_3_1_0()); }
-	ruleDataType{ after(grammarAccess.getRepositoryAccess().getDatatypesDataTypeParserRuleCall_4_3_1_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__Repository__ComponentsAssignment_5_2
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRepositoryAccess().getComponentsRepositoryComponentParserRuleCall_5_2_0()); }
-	ruleRepositoryComponent{ after(grammarAccess.getRepositoryAccess().getComponentsRepositoryComponentParserRuleCall_5_2_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__Repository__ComponentsAssignment_5_3_1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRepositoryAccess().getComponentsRepositoryComponentParserRuleCall_5_3_1_0()); }
-	ruleRepositoryComponent{ after(grammarAccess.getRepositoryAccess().getComponentsRepositoryComponentParserRuleCall_5_3_1_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__Repository__InterfacesAssignment_6_2
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRepositoryAccess().getInterfacesInterfaceParserRuleCall_6_2_0()); }
-	ruleInterface{ after(grammarAccess.getRepositoryAccess().getInterfacesInterfaceParserRuleCall_6_2_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__Repository__InterfacesAssignment_6_3_1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRepositoryAccess().getInterfacesInterfaceParserRuleCall_6_3_1_0()); }
-	ruleInterface{ after(grammarAccess.getRepositoryAccess().getInterfacesInterfaceParserRuleCall_6_3_1_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__Import__ImportedNamespaceAssignment_1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getImportAccess().getImportedNamespaceQualifiedNameWithWildCardParserRuleCall_1_0()); }
-	ruleQualifiedNameWithWildCard{ after(grammarAccess.getImportAccess().getImportedNamespaceQualifiedNameWithWildCardParserRuleCall_1_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__Interface__NameAssignment_1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getInterfaceAccess().getNameEStringParserRuleCall_1_0()); }
-	ruleEString{ after(grammarAccess.getInterfaceAccess().getNameEStringParserRuleCall_1_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__Interface__ParentInterfacesAssignment_3_2
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getInterfaceAccess().getParentInterfacesInterfaceCrossReference_3_2_0()); }
-(
-{ before(grammarAccess.getInterfaceAccess().getParentInterfacesInterfaceEStringParserRuleCall_3_2_0_1()); }
-	ruleEString{ after(grammarAccess.getInterfaceAccess().getParentInterfacesInterfaceEStringParserRuleCall_3_2_0_1()); }
-)
-{ after(grammarAccess.getInterfaceAccess().getParentInterfacesInterfaceCrossReference_3_2_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__Interface__ParentInterfacesAssignment_3_3_1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getInterfaceAccess().getParentInterfacesInterfaceCrossReference_3_3_1_0()); }
-(
-{ before(grammarAccess.getInterfaceAccess().getParentInterfacesInterfaceEStringParserRuleCall_3_3_1_0_1()); }
-	ruleEString{ after(grammarAccess.getInterfaceAccess().getParentInterfacesInterfaceEStringParserRuleCall_3_3_1_0_1()); }
-)
-{ after(grammarAccess.getInterfaceAccess().getParentInterfacesInterfaceCrossReference_3_3_1_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__Interface__SignaturesAssignment_4_0
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getInterfaceAccess().getSignaturesSignatureParserRuleCall_4_0_0()); }
-	ruleSignature{ after(grammarAccess.getInterfaceAccess().getSignaturesSignatureParserRuleCall_4_0_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__Interface__SignaturesAssignment_4_1_1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getInterfaceAccess().getSignaturesSignatureParserRuleCall_4_1_1_0()); }
-	ruleSignature{ after(grammarAccess.getInterfaceAccess().getSignaturesSignatureParserRuleCall_4_1_1_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__RepositoryComponent_Impl__NameAssignment_1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRepositoryComponent_ImplAccess().getNameEStringParserRuleCall_1_0()); }
-	ruleEString{ after(grammarAccess.getRepositoryComponent_ImplAccess().getNameEStringParserRuleCall_1_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__RepositoryComponent_Impl__RelationshipAssignment_3_2
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRepositoryComponent_ImplAccess().getRelationshipRelationshipCrossReference_3_2_0()); }
-(
-{ before(grammarAccess.getRepositoryComponent_ImplAccess().getRelationshipRelationshipEStringParserRuleCall_3_2_0_1()); }
-	ruleEString{ after(grammarAccess.getRepositoryComponent_ImplAccess().getRelationshipRelationshipEStringParserRuleCall_3_2_0_1()); }
-)
-{ after(grammarAccess.getRepositoryComponent_ImplAccess().getRelationshipRelationshipCrossReference_3_2_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__RepositoryComponent_Impl__RelationshipAssignment_3_3_1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRepositoryComponent_ImplAccess().getRelationshipRelationshipCrossReference_3_3_1_0()); }
-(
-{ before(grammarAccess.getRepositoryComponent_ImplAccess().getRelationshipRelationshipEStringParserRuleCall_3_3_1_0_1()); }
-	ruleEString{ after(grammarAccess.getRepositoryComponent_ImplAccess().getRelationshipRelationshipEStringParserRuleCall_3_3_1_0_1()); }
-)
-{ after(grammarAccess.getRepositoryComponent_ImplAccess().getRelationshipRelationshipCrossReference_3_3_1_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__RepositoryComponent_Impl__ProvidedRolesAssignment_4_2
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRepositoryComponent_ImplAccess().getProvidedRolesProvidedRoleParserRuleCall_4_2_0()); }
-	ruleProvidedRole{ after(grammarAccess.getRepositoryComponent_ImplAccess().getProvidedRolesProvidedRoleParserRuleCall_4_2_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__RepositoryComponent_Impl__ProvidedRolesAssignment_4_3_1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRepositoryComponent_ImplAccess().getProvidedRolesProvidedRoleParserRuleCall_4_3_1_0()); }
-	ruleProvidedRole{ after(grammarAccess.getRepositoryComponent_ImplAccess().getProvidedRolesProvidedRoleParserRuleCall_4_3_1_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__RepositoryComponent_Impl__RequiredRolesAssignment_5_2
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRepositoryComponent_ImplAccess().getRequiredRolesRequiredRoleParserRuleCall_5_2_0()); }
-	ruleRequiredRole{ after(grammarAccess.getRepositoryComponent_ImplAccess().getRequiredRolesRequiredRoleParserRuleCall_5_2_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__RepositoryComponent_Impl__RequiredRolesAssignment_5_3_1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRepositoryComponent_ImplAccess().getRequiredRolesRequiredRoleParserRuleCall_5_3_1_0()); }
-	ruleRequiredRole{ after(grammarAccess.getRepositoryComponent_ImplAccess().getRequiredRolesRequiredRoleParserRuleCall_5_3_1_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__CollectionDataType__NameAssignment_1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getCollectionDataTypeAccess().getNameEStringParserRuleCall_1_0()); }
-	ruleEString{ after(grammarAccess.getCollectionDataTypeAccess().getNameEStringParserRuleCall_1_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__CollectionDataType__InnerTypeAssignment_4
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getCollectionDataTypeAccess().getInnerTypeDataTypeCrossReference_4_0()); }
-(
-{ before(grammarAccess.getCollectionDataTypeAccess().getInnerTypeDataTypeEStringParserRuleCall_4_0_1()); }
-	ruleEString{ after(grammarAccess.getCollectionDataTypeAccess().getInnerTypeDataTypeEStringParserRuleCall_4_0_1()); }
-)
-{ after(grammarAccess.getCollectionDataTypeAccess().getInnerTypeDataTypeCrossReference_4_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__CompositeDataType__NameAssignment_1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getCompositeDataTypeAccess().getNameEStringParserRuleCall_1_0()); }
-	ruleEString{ after(grammarAccess.getCompositeDataTypeAccess().getNameEStringParserRuleCall_1_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__CompositeDataType__ParentTypesAssignment_3_2
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getCompositeDataTypeAccess().getParentTypesCompositeDataTypeCrossReference_3_2_0()); }
-(
-{ before(grammarAccess.getCompositeDataTypeAccess().getParentTypesCompositeDataTypeEStringParserRuleCall_3_2_0_1()); }
-	ruleEString{ after(grammarAccess.getCompositeDataTypeAccess().getParentTypesCompositeDataTypeEStringParserRuleCall_3_2_0_1()); }
-)
-{ after(grammarAccess.getCompositeDataTypeAccess().getParentTypesCompositeDataTypeCrossReference_3_2_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__CompositeDataType__ParentTypesAssignment_3_3_1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getCompositeDataTypeAccess().getParentTypesCompositeDataTypeCrossReference_3_3_1_0()); }
-(
-{ before(grammarAccess.getCompositeDataTypeAccess().getParentTypesCompositeDataTypeEStringParserRuleCall_3_3_1_0_1()); }
-	ruleEString{ after(grammarAccess.getCompositeDataTypeAccess().getParentTypesCompositeDataTypeEStringParserRuleCall_3_3_1_0_1()); }
-)
-{ after(grammarAccess.getCompositeDataTypeAccess().getParentTypesCompositeDataTypeCrossReference_3_3_1_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__CompositeDataType__InnerDeclarationsAssignment_4_2
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getCompositeDataTypeAccess().getInnerDeclarationsInnerDeclarationParserRuleCall_4_2_0()); }
-	ruleInnerDeclaration{ after(grammarAccess.getCompositeDataTypeAccess().getInnerDeclarationsInnerDeclarationParserRuleCall_4_2_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__CompositeDataType__InnerDeclarationsAssignment_4_3_1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getCompositeDataTypeAccess().getInnerDeclarationsInnerDeclarationParserRuleCall_4_3_1_0()); }
-	ruleInnerDeclaration{ after(grammarAccess.getCompositeDataTypeAccess().getInnerDeclarationsInnerDeclarationParserRuleCall_4_3_1_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__PrimitiveDataType__TypeAssignment_3
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getPrimitiveDataTypeAccess().getTypePrimitiveTypeEnumEnumRuleCall_3_0()); }
-	rulePrimitiveTypeEnum{ after(grammarAccess.getPrimitiveDataTypeAccess().getTypePrimitiveTypeEnumEnumRuleCall_3_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__PrimitiveDataType__NameAssignment_5
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getPrimitiveDataTypeAccess().getNameEStringParserRuleCall_5_0()); }
-	ruleEString{ after(grammarAccess.getPrimitiveDataTypeAccess().getNameEStringParserRuleCall_5_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__InnerDeclaration__NameAssignment_1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getInnerDeclarationAccess().getNameEStringParserRuleCall_1_0()); }
-	ruleEString{ after(grammarAccess.getInnerDeclarationAccess().getNameEStringParserRuleCall_1_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__InnerDeclaration__DataTypeAssignment_4
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getInnerDeclarationAccess().getDataTypeDataTypeCrossReference_4_0()); }
-(
-{ before(grammarAccess.getInnerDeclarationAccess().getDataTypeDataTypeEStringParserRuleCall_4_0_1()); }
-	ruleEString{ after(grammarAccess.getInnerDeclarationAccess().getDataTypeDataTypeEStringParserRuleCall_4_0_1()); }
-)
-{ after(grammarAccess.getInnerDeclarationAccess().getDataTypeDataTypeCrossReference_4_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__Signature__ReturnTypeAssignment_0_0
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getSignatureAccess().getReturnTypeDataTypeCrossReference_0_0_0()); }
-(
-{ before(grammarAccess.getSignatureAccess().getReturnTypeDataTypeEStringParserRuleCall_0_0_0_1()); }
-	ruleEString{ after(grammarAccess.getSignatureAccess().getReturnTypeDataTypeEStringParserRuleCall_0_0_0_1()); }
-)
-{ after(grammarAccess.getSignatureAccess().getReturnTypeDataTypeCrossReference_0_0_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__Signature__NameAssignment_1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getSignatureAccess().getNameEStringParserRuleCall_1_0()); }
-	ruleEString{ after(grammarAccess.getSignatureAccess().getNameEStringParserRuleCall_1_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__Signature__ParametersAssignment_3_0
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getSignatureAccess().getParametersParameterParserRuleCall_3_0_0()); }
-	ruleParameter{ after(grammarAccess.getSignatureAccess().getParametersParameterParserRuleCall_3_0_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__Signature__ParametersAssignment_3_1_1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getSignatureAccess().getParametersParameterParserRuleCall_3_1_1_0()); }
-	ruleParameter{ after(grammarAccess.getSignatureAccess().getParametersParameterParserRuleCall_3_1_1_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__Parameter__DataTypeAssignment_0
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getParameterAccess().getDataTypeDataTypeCrossReference_0_0()); }
-(
-{ before(grammarAccess.getParameterAccess().getDataTypeDataTypeEStringParserRuleCall_0_0_1()); }
-	ruleEString{ after(grammarAccess.getParameterAccess().getDataTypeDataTypeEStringParserRuleCall_0_0_1()); }
-)
-{ after(grammarAccess.getParameterAccess().getDataTypeDataTypeCrossReference_0_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__Parameter__NameAssignment_1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getParameterAccess().getNameEStringParserRuleCall_1_0()); }
-	ruleEString{ after(grammarAccess.getParameterAccess().getNameEStringParserRuleCall_1_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__ProvidedRole__InterfaceAssignment_1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getProvidedRoleAccess().getInterfaceInterfaceCrossReference_1_0()); }
-(
-{ before(grammarAccess.getProvidedRoleAccess().getInterfaceInterfaceEStringParserRuleCall_1_0_1()); }
-	ruleEString{ after(grammarAccess.getProvidedRoleAccess().getInterfaceInterfaceEStringParserRuleCall_1_0_1()); }
-)
-{ after(grammarAccess.getProvidedRoleAccess().getInterfaceInterfaceCrossReference_1_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__RequiredRole__InterfaceAssignment_1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRequiredRoleAccess().getInterfaceInterfaceCrossReference_1_0()); }
-(
-{ before(grammarAccess.getRequiredRoleAccess().getInterfaceInterfaceEStringParserRuleCall_1_0_1()); }
-	ruleEString{ after(grammarAccess.getRequiredRoleAccess().getInterfaceInterfaceEStringParserRuleCall_1_0_1()); }
-)
-{ after(grammarAccess.getRequiredRoleAccess().getInterfaceInterfaceCrossReference_1_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__BasicComponent__NameAssignment_1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getBasicComponentAccess().getNameEStringParserRuleCall_1_0()); }
-	ruleEString{ after(grammarAccess.getBasicComponentAccess().getNameEStringParserRuleCall_1_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__BasicComponent__ProvidedRolesAssignment_2_0
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getBasicComponentAccess().getProvidedRolesProvidedRoleParserRuleCall_2_0_0()); }
-	ruleProvidedRole{ after(grammarAccess.getBasicComponentAccess().getProvidedRolesProvidedRoleParserRuleCall_2_0_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__BasicComponent__ProvidedRolesAssignment_2_1_1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getBasicComponentAccess().getProvidedRolesProvidedRoleParserRuleCall_2_1_1_0()); }
-	ruleProvidedRole{ after(grammarAccess.getBasicComponentAccess().getProvidedRolesProvidedRoleParserRuleCall_2_1_1_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__BasicComponent__RequiredRolesAssignment_3_0
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getBasicComponentAccess().getRequiredRolesRequiredRoleParserRuleCall_3_0_0()); }
-	ruleRequiredRole{ after(grammarAccess.getBasicComponentAccess().getRequiredRolesRequiredRoleParserRuleCall_3_0_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__BasicComponent__RequiredRolesAssignment_3_1_1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getBasicComponentAccess().getRequiredRolesRequiredRoleParserRuleCall_3_1_1_0()); }
-	ruleRequiredRole{ after(grammarAccess.getBasicComponentAccess().getRequiredRolesRequiredRoleParserRuleCall_3_1_1_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__BasicComponent__RelationshipAssignment_5_2
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getBasicComponentAccess().getRelationshipRelationshipCrossReference_5_2_0()); }
-(
-{ before(grammarAccess.getBasicComponentAccess().getRelationshipRelationshipEStringParserRuleCall_5_2_0_1()); }
-	ruleEString{ after(grammarAccess.getBasicComponentAccess().getRelationshipRelationshipEStringParserRuleCall_5_2_0_1()); }
-)
-{ after(grammarAccess.getBasicComponentAccess().getRelationshipRelationshipCrossReference_5_2_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__BasicComponent__RelationshipAssignment_5_3_1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getBasicComponentAccess().getRelationshipRelationshipCrossReference_5_3_1_0()); }
-(
-{ before(grammarAccess.getBasicComponentAccess().getRelationshipRelationshipEStringParserRuleCall_5_3_1_0_1()); }
-	ruleEString{ after(grammarAccess.getBasicComponentAccess().getRelationshipRelationshipEStringParserRuleCall_5_3_1_0_1()); }
-)
-{ after(grammarAccess.getBasicComponentAccess().getRelationshipRelationshipCrossReference_5_3_1_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__CompositeComponent__NameAssignment_1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getCompositeComponentAccess().getNameEStringParserRuleCall_1_0()); }
-	ruleEString{ after(grammarAccess.getCompositeComponentAccess().getNameEStringParserRuleCall_1_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__CompositeComponent__ProvidedRolesAssignment_2_0
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getCompositeComponentAccess().getProvidedRolesProvidedRoleParserRuleCall_2_0_0()); }
-	ruleProvidedRole{ after(grammarAccess.getCompositeComponentAccess().getProvidedRolesProvidedRoleParserRuleCall_2_0_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__CompositeComponent__ProvidedRolesAssignment_2_1_1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getCompositeComponentAccess().getProvidedRolesProvidedRoleParserRuleCall_2_1_1_0()); }
-	ruleProvidedRole{ after(grammarAccess.getCompositeComponentAccess().getProvidedRolesProvidedRoleParserRuleCall_2_1_1_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__CompositeComponent__RequiredRolesAssignment_3_0
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getCompositeComponentAccess().getRequiredRolesRequiredRoleParserRuleCall_3_0_0()); }
-	ruleRequiredRole{ after(grammarAccess.getCompositeComponentAccess().getRequiredRolesRequiredRoleParserRuleCall_3_0_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__CompositeComponent__RequiredRolesAssignment_3_1_1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getCompositeComponentAccess().getRequiredRolesRequiredRoleParserRuleCall_3_1_1_0()); }
-	ruleRequiredRole{ after(grammarAccess.getCompositeComponentAccess().getRequiredRolesRequiredRoleParserRuleCall_3_1_1_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__CompositeComponent__RelationshipAssignment_5_2
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getCompositeComponentAccess().getRelationshipRelationshipCrossReference_5_2_0()); }
-(
-{ before(grammarAccess.getCompositeComponentAccess().getRelationshipRelationshipEStringParserRuleCall_5_2_0_1()); }
-	ruleEString{ after(grammarAccess.getCompositeComponentAccess().getRelationshipRelationshipEStringParserRuleCall_5_2_0_1()); }
-)
-{ after(grammarAccess.getCompositeComponentAccess().getRelationshipRelationshipCrossReference_5_2_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__CompositeComponent__RelationshipAssignment_5_3_1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getCompositeComponentAccess().getRelationshipRelationshipCrossReference_5_3_1_0()); }
-(
-{ before(grammarAccess.getCompositeComponentAccess().getRelationshipRelationshipEStringParserRuleCall_5_3_1_0_1()); }
-	ruleEString{ after(grammarAccess.getCompositeComponentAccess().getRelationshipRelationshipEStringParserRuleCall_5_3_1_0_1()); }
-)
-{ after(grammarAccess.getCompositeComponentAccess().getRelationshipRelationshipCrossReference_5_3_1_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__CompositeComponent__AssemblyAssignment_6_1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getCompositeComponentAccess().getAssemblyComposedStructureAssemblyParserRuleCall_6_1_0()); }
-	ruleComposedStructureAssembly{ after(grammarAccess.getCompositeComponentAccess().getAssemblyComposedStructureAssemblyParserRuleCall_6_1_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__SubSystem__NameAssignment_1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getSubSystemAccess().getNameEStringParserRuleCall_1_0()); }
-	ruleEString{ after(grammarAccess.getSubSystemAccess().getNameEStringParserRuleCall_1_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__SubSystem__ProvidedRolesAssignment_2_2
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getSubSystemAccess().getProvidedRolesProvidedRoleParserRuleCall_2_2_0()); }
-	ruleProvidedRole{ after(grammarAccess.getSubSystemAccess().getProvidedRolesProvidedRoleParserRuleCall_2_2_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__SubSystem__ProvidedRolesAssignment_2_3_1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getSubSystemAccess().getProvidedRolesProvidedRoleParserRuleCall_2_3_1_0()); }
-	ruleProvidedRole{ after(grammarAccess.getSubSystemAccess().getProvidedRolesProvidedRoleParserRuleCall_2_3_1_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__SubSystem__RequiredRolesAssignment_3_2
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getSubSystemAccess().getRequiredRolesRequiredRoleParserRuleCall_3_2_0()); }
-	ruleRequiredRole{ after(grammarAccess.getSubSystemAccess().getRequiredRolesRequiredRoleParserRuleCall_3_2_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__SubSystem__RequiredRolesAssignment_3_3_1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getSubSystemAccess().getRequiredRolesRequiredRoleParserRuleCall_3_3_1_0()); }
-	ruleRequiredRole{ after(grammarAccess.getSubSystemAccess().getRequiredRolesRequiredRoleParserRuleCall_3_3_1_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__SubSystem__RelationshipAssignment_5_2
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getSubSystemAccess().getRelationshipRelationshipCrossReference_5_2_0()); }
-(
-{ before(grammarAccess.getSubSystemAccess().getRelationshipRelationshipEStringParserRuleCall_5_2_0_1()); }
-	ruleEString{ after(grammarAccess.getSubSystemAccess().getRelationshipRelationshipEStringParserRuleCall_5_2_0_1()); }
-)
-{ after(grammarAccess.getSubSystemAccess().getRelationshipRelationshipCrossReference_5_2_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__SubSystem__RelationshipAssignment_5_3_1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getSubSystemAccess().getRelationshipRelationshipCrossReference_5_3_1_0()); }
-(
-{ before(grammarAccess.getSubSystemAccess().getRelationshipRelationshipEStringParserRuleCall_5_3_1_0_1()); }
-	ruleEString{ after(grammarAccess.getSubSystemAccess().getRelationshipRelationshipEStringParserRuleCall_5_3_1_0_1()); }
-)
-{ after(grammarAccess.getSubSystemAccess().getRelationshipRelationshipCrossReference_5_3_1_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__SubSystem__AssemblyAssignment_6_1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getSubSystemAccess().getAssemblyComposedStructureAssemblyParserRuleCall_6_1_0()); }
-	ruleComposedStructureAssembly{ after(grammarAccess.getSubSystemAccess().getAssemblyComposedStructureAssemblyParserRuleCall_6_1_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__ComposedStructureAssembly__AssemblyContextsAssignment_3_2
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getComposedStructureAssemblyAccess().getAssemblyContextsAssemblyContextParserRuleCall_3_2_0()); }
-	ruleAssemblyContext{ after(grammarAccess.getComposedStructureAssemblyAccess().getAssemblyContextsAssemblyContextParserRuleCall_3_2_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__ComposedStructureAssembly__AssemblyContextsAssignment_3_3_1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getComposedStructureAssemblyAccess().getAssemblyContextsAssemblyContextParserRuleCall_3_3_1_0()); }
-	ruleAssemblyContext{ after(grammarAccess.getComposedStructureAssemblyAccess().getAssemblyContextsAssemblyContextParserRuleCall_3_3_1_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__ComposedStructureAssembly__AssemblyConnectorsAssignment_4_2
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getComposedStructureAssemblyAccess().getAssemblyConnectorsAssemblyConnectorParserRuleCall_4_2_0()); }
-	ruleAssemblyConnector{ after(grammarAccess.getComposedStructureAssemblyAccess().getAssemblyConnectorsAssemblyConnectorParserRuleCall_4_2_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__ComposedStructureAssembly__AssemblyConnectorsAssignment_4_3_1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getComposedStructureAssemblyAccess().getAssemblyConnectorsAssemblyConnectorParserRuleCall_4_3_1_0()); }
-	ruleAssemblyConnector{ after(grammarAccess.getComposedStructureAssemblyAccess().getAssemblyConnectorsAssemblyConnectorParserRuleCall_4_3_1_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__ComposedStructureAssembly__ProvidedDelegationConnectorsAssignment_5_2
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getComposedStructureAssemblyAccess().getProvidedDelegationConnectorsProvidedDelegationConnectorParserRuleCall_5_2_0()); }
-	ruleProvidedDelegationConnector{ after(grammarAccess.getComposedStructureAssemblyAccess().getProvidedDelegationConnectorsProvidedDelegationConnectorParserRuleCall_5_2_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__ComposedStructureAssembly__ProvidedDelegationConnectorsAssignment_5_3_1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getComposedStructureAssemblyAccess().getProvidedDelegationConnectorsProvidedDelegationConnectorParserRuleCall_5_3_1_0()); }
-	ruleProvidedDelegationConnector{ after(grammarAccess.getComposedStructureAssemblyAccess().getProvidedDelegationConnectorsProvidedDelegationConnectorParserRuleCall_5_3_1_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__ComposedStructureAssembly__RequiredDelegationConnectorsAssignment_6_2
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getComposedStructureAssemblyAccess().getRequiredDelegationConnectorsRequiredDelegationConnectorParserRuleCall_6_2_0()); }
-	ruleRequiredDelegationConnector{ after(grammarAccess.getComposedStructureAssemblyAccess().getRequiredDelegationConnectorsRequiredDelegationConnectorParserRuleCall_6_2_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__ComposedStructureAssembly__RequiredDelegationConnectorsAssignment_6_3_1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getComposedStructureAssemblyAccess().getRequiredDelegationConnectorsRequiredDelegationConnectorParserRuleCall_6_3_1_0()); }
-	ruleRequiredDelegationConnector{ after(grammarAccess.getComposedStructureAssemblyAccess().getRequiredDelegationConnectorsRequiredDelegationConnectorParserRuleCall_6_3_1_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__AssemblyContext__NameAssignment_1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getAssemblyContextAccess().getNameEStringParserRuleCall_1_0()); }
-	ruleEString{ after(grammarAccess.getAssemblyContextAccess().getNameEStringParserRuleCall_1_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__AssemblyContext__EncapsulatedComponentAssignment_4
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getAssemblyContextAccess().getEncapsulatedComponentRepositoryComponentCrossReference_4_0()); }
-(
-{ before(grammarAccess.getAssemblyContextAccess().getEncapsulatedComponentRepositoryComponentEStringParserRuleCall_4_0_1()); }
-	ruleEString{ after(grammarAccess.getAssemblyContextAccess().getEncapsulatedComponentRepositoryComponentEStringParserRuleCall_4_0_1()); }
-)
-{ after(grammarAccess.getAssemblyContextAccess().getEncapsulatedComponentRepositoryComponentCrossReference_4_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__AssemblyConnector__NameAssignment_1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getAssemblyConnectorAccess().getNameEStringParserRuleCall_1_0()); }
-	ruleEString{ after(grammarAccess.getAssemblyConnectorAccess().getNameEStringParserRuleCall_1_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__AssemblyConnector__RequiredRoleAssignment_4
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getAssemblyConnectorAccess().getRequiredRoleRequiredRoleCrossReference_4_0()); }
-(
-{ before(grammarAccess.getAssemblyConnectorAccess().getRequiredRoleRequiredRoleEStringParserRuleCall_4_0_1()); }
-	ruleEString{ after(grammarAccess.getAssemblyConnectorAccess().getRequiredRoleRequiredRoleEStringParserRuleCall_4_0_1()); }
-)
-{ after(grammarAccess.getAssemblyConnectorAccess().getRequiredRoleRequiredRoleCrossReference_4_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__AssemblyConnector__ProvidedRoleAssignment_6
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getAssemblyConnectorAccess().getProvidedRoleProvidedRoleCrossReference_6_0()); }
-(
-{ before(grammarAccess.getAssemblyConnectorAccess().getProvidedRoleProvidedRoleEStringParserRuleCall_6_0_1()); }
-	ruleEString{ after(grammarAccess.getAssemblyConnectorAccess().getProvidedRoleProvidedRoleEStringParserRuleCall_6_0_1()); }
-)
-{ after(grammarAccess.getAssemblyConnectorAccess().getProvidedRoleProvidedRoleCrossReference_6_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__AssemblyConnector__ProvidingAssemblyContextAssignment_8
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getAssemblyConnectorAccess().getProvidingAssemblyContextAssemblyContextCrossReference_8_0()); }
-(
-{ before(grammarAccess.getAssemblyConnectorAccess().getProvidingAssemblyContextAssemblyContextEStringParserRuleCall_8_0_1()); }
-	ruleEString{ after(grammarAccess.getAssemblyConnectorAccess().getProvidingAssemblyContextAssemblyContextEStringParserRuleCall_8_0_1()); }
-)
-{ after(grammarAccess.getAssemblyConnectorAccess().getProvidingAssemblyContextAssemblyContextCrossReference_8_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__AssemblyConnector__RequiringAssemblyContextAssignment_10
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getAssemblyConnectorAccess().getRequiringAssemblyContextAssemblyContextCrossReference_10_0()); }
-(
-{ before(grammarAccess.getAssemblyConnectorAccess().getRequiringAssemblyContextAssemblyContextEStringParserRuleCall_10_0_1()); }
-	ruleEString{ after(grammarAccess.getAssemblyConnectorAccess().getRequiringAssemblyContextAssemblyContextEStringParserRuleCall_10_0_1()); }
-)
-{ after(grammarAccess.getAssemblyConnectorAccess().getRequiringAssemblyContextAssemblyContextCrossReference_10_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__ProvidedDelegationConnector__NameAssignment_1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getProvidedDelegationConnectorAccess().getNameEStringParserRuleCall_1_0()); }
-	ruleEString{ after(grammarAccess.getProvidedDelegationConnectorAccess().getNameEStringParserRuleCall_1_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__ProvidedDelegationConnector__AssemblyContextAssignment_4
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getProvidedDelegationConnectorAccess().getAssemblyContextAssemblyContextCrossReference_4_0()); }
-(
-{ before(grammarAccess.getProvidedDelegationConnectorAccess().getAssemblyContextAssemblyContextEStringParserRuleCall_4_0_1()); }
-	ruleEString{ after(grammarAccess.getProvidedDelegationConnectorAccess().getAssemblyContextAssemblyContextEStringParserRuleCall_4_0_1()); }
-)
-{ after(grammarAccess.getProvidedDelegationConnectorAccess().getAssemblyContextAssemblyContextCrossReference_4_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__ProvidedDelegationConnector__InnerProvidedRoleAssignment_6
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getProvidedDelegationConnectorAccess().getInnerProvidedRoleProvidedRoleCrossReference_6_0()); }
-(
-{ before(grammarAccess.getProvidedDelegationConnectorAccess().getInnerProvidedRoleProvidedRoleEStringParserRuleCall_6_0_1()); }
-	ruleEString{ after(grammarAccess.getProvidedDelegationConnectorAccess().getInnerProvidedRoleProvidedRoleEStringParserRuleCall_6_0_1()); }
-)
-{ after(grammarAccess.getProvidedDelegationConnectorAccess().getInnerProvidedRoleProvidedRoleCrossReference_6_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__ProvidedDelegationConnector__OuterProvidedRoleAssignment_8
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getProvidedDelegationConnectorAccess().getOuterProvidedRoleProvidedRoleCrossReference_8_0()); }
-(
-{ before(grammarAccess.getProvidedDelegationConnectorAccess().getOuterProvidedRoleProvidedRoleEStringParserRuleCall_8_0_1()); }
-	ruleEString{ after(grammarAccess.getProvidedDelegationConnectorAccess().getOuterProvidedRoleProvidedRoleEStringParserRuleCall_8_0_1()); }
-)
-{ after(grammarAccess.getProvidedDelegationConnectorAccess().getOuterProvidedRoleProvidedRoleCrossReference_8_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__RequiredDelegationConnector__NameAssignment_1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRequiredDelegationConnectorAccess().getNameEStringParserRuleCall_1_0()); }
-	ruleEString{ after(grammarAccess.getRequiredDelegationConnectorAccess().getNameEStringParserRuleCall_1_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__RequiredDelegationConnector__AssemblyContextAssignment_4
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRequiredDelegationConnectorAccess().getAssemblyContextAssemblyContextCrossReference_4_0()); }
-(
-{ before(grammarAccess.getRequiredDelegationConnectorAccess().getAssemblyContextAssemblyContextEStringParserRuleCall_4_0_1()); }
-	ruleEString{ after(grammarAccess.getRequiredDelegationConnectorAccess().getAssemblyContextAssemblyContextEStringParserRuleCall_4_0_1()); }
-)
-{ after(grammarAccess.getRequiredDelegationConnectorAccess().getAssemblyContextAssemblyContextCrossReference_4_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__RequiredDelegationConnector__InnerRequiredRoleAssignment_6
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRequiredDelegationConnectorAccess().getInnerRequiredRoleRequiredRoleCrossReference_6_0()); }
-(
-{ before(grammarAccess.getRequiredDelegationConnectorAccess().getInnerRequiredRoleRequiredRoleEStringParserRuleCall_6_0_1()); }
-	ruleEString{ after(grammarAccess.getRequiredDelegationConnectorAccess().getInnerRequiredRoleRequiredRoleEStringParserRuleCall_6_0_1()); }
-)
-{ after(grammarAccess.getRequiredDelegationConnectorAccess().getInnerRequiredRoleRequiredRoleCrossReference_6_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__RequiredDelegationConnector__OuterRequiredRoleAssignment_8
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRequiredDelegationConnectorAccess().getOuterRequiredRoleRequiredRoleCrossReference_8_0()); }
-(
-{ before(grammarAccess.getRequiredDelegationConnectorAccess().getOuterRequiredRoleRequiredRoleEStringParserRuleCall_8_0_1()); }
-	ruleEString{ after(grammarAccess.getRequiredDelegationConnectorAccess().getOuterRequiredRoleRequiredRoleEStringParserRuleCall_8_0_1()); }
-)
-{ after(grammarAccess.getRequiredDelegationConnectorAccess().getOuterRequiredRoleRequiredRoleCrossReference_8_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-RULE_ID : '^'? ('a'..'z'|'A'..'Z'|'_') ('a'..'z'|'A'..'Z'|'_'|'0'..'9')*;
-
-RULE_INT : ('0'..'9')+;
-
-RULE_STRING : ('"' ('\\' ('b'|'t'|'n'|'f'|'r'|'u'|'"'|'\''|'\\')|~(('\\'|'"')))* '"'|'\'' ('\\' ('b'|'t'|'n'|'f'|'r'|'u'|'"'|'\''|'\\')|~(('\\'|'\'')))* '\'');
-
-RULE_ML_COMMENT : '/*' ( options {greedy=false;} : . )*'*/';
-
-RULE_SL_COMMENT : '//' ~(('\n'|'\r'))* ('\r'? '\n')?;
-
-RULE_WS : (' '|'\t'|'\r'|'\n')+;
-
-RULE_ANY_OTHER : .;
-
-
diff --git a/org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.tokens b/org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.tokens
deleted file mode 100644
index 775fd6fc..00000000
--- a/org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.tokens
+++ /dev/null
@@ -1,133 +0,0 @@
-T__68=68
-T__69=69
-RULE_ID=5
-T__66=66
-T__67=67
-T__64=64
-T__29=29
-T__65=65
-T__28=28
-T__62=62
-T__27=27
-T__63=63
-T__26=26
-T__25=25
-T__24=24
-T__23=23
-T__22=22
-RULE_ANY_OTHER=10
-T__21=21
-T__20=20
-T__61=61
-T__60=60
-T__55=55
-T__56=56
-T__19=19
-T__57=57
-T__58=58
-T__51=51
-T__16=16
-T__52=52
-T__15=15
-T__53=53
-T__18=18
-T__54=54
-T__17=17
-T__12=12
-T__11=11
-T__14=14
-T__13=13
-T__59=59
-RULE_INT=6
-T__50=50
-T__42=42
-T__43=43
-T__40=40
-T__41=41
-T__46=46
-T__47=47
-T__44=44
-T__45=45
-T__48=48
-T__49=49
-RULE_SL_COMMENT=8
-RULE_ML_COMMENT=7
-T__30=30
-T__31=31
-RULE_STRING=4
-T__32=32
-T__71=71
-T__33=33
-T__72=72
-T__34=34
-T__35=35
-T__70=70
-T__36=36
-T__37=37
-T__38=38
-T__39=39
-RULE_WS=9
-T__73=73
-'requiredRole'=63
-'type'=45
-'DOUBLE'=15
-'providedRoles'=37
-'outerProvidedRole'=70
-'requiringAssemblyContext'=66
-';'=26
-'BasicComponent'=51
-'innerType'=40
-'CompositeComponent'=52
-'InnerDeclaration'=47
-'.'=29
-'imports'=22
-'import'=28
-'CompositeDataType'=41
-'components'=25
-'RequiredRole'=50
-'innerRequiredRole'=72
-'assembly'=53
-'encapsulatedComponent'=61
-'RequiredDelegationConnector'=71
-'{'=20
-'assemblyConnectors'=57
-'Interface'=31
-'void'=11
-'parentInterfaces'=32
-'('=33
-'ref'=46
-'innerProvidedRole'=69
-','=23
-'SubSystem'=54
-'BOOL'=14
-'INT'=12
-'ComposedStructureAssembly'=55
-'providedRole'=64
-'providingAssemblyContext'=65
-'relationship'=36
-'PrimitiveDataType'=44
-'assemblyContexts'=56
-'dataType'=48
-'requiredRoles'=38
-'Repository'=19
-'interfaces'=27
-'CHAR'=16
-')'=34
-'LONG'=18
-'outerRequiredRole'=73
-'parentTypes'=42
-'AssemblyContext'=60
-'innerDeclarations'=43
-'}'=21
-'AssemblyConnector'=62
-'datatypes'=24
-'ProvidedRole'=49
-'ProvidedDelegationConnector'=67
-'CollectionDataType'=39
-'RepositoryComponent'=35
-'STRING'=13
-'providedDelegationConnectors'=58
-'assemblyContext'=68
-'*'=30
-'BYTE'=17
-'requiredDelegationConnectors'=59
diff --git a/org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTestLexer.java b/org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTestLexer.java
deleted file mode 100644
index a9086a1b..00000000
--- a/org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTestLexer.java
+++ /dev/null
@@ -1,3362 +0,0 @@
-package org.xtext.example.mydsl.ui.contentassist.antlr.internal;
-
-// Hack: Use our own Lexer superclass by means of import. 
-// Currently there is no other way to specify the superclass for the lexer.
-import org.eclipse.xtext.ui.editor.contentassist.antlr.internal.Lexer;
-
-
-import org.antlr.runtime.*;
-import java.util.Stack;
-import java.util.List;
-import java.util.ArrayList;
-
-@SuppressWarnings("all")
-public class InternalMyDslTestLexer extends Lexer {
-    public static final int T__68=68;
-    public static final int T__69=69;
-    public static final int RULE_ID=5;
-    public static final int T__66=66;
-    public static final int T__67=67;
-    public static final int T__29=29;
-    public static final int T__64=64;
-    public static final int T__28=28;
-    public static final int T__65=65;
-    public static final int T__27=27;
-    public static final int T__62=62;
-    public static final int T__26=26;
-    public static final int T__63=63;
-    public static final int T__25=25;
-    public static final int T__24=24;
-    public static final int T__23=23;
-    public static final int T__22=22;
-    public static final int RULE_ANY_OTHER=10;
-    public static final int T__21=21;
-    public static final int T__20=20;
-    public static final int T__61=61;
-    public static final int EOF=-1;
-    public static final int T__60=60;
-    public static final int T__55=55;
-    public static final int T__56=56;
-    public static final int T__19=19;
-    public static final int T__57=57;
-    public static final int T__58=58;
-    public static final int T__51=51;
-    public static final int T__16=16;
-    public static final int T__52=52;
-    public static final int T__15=15;
-    public static final int T__53=53;
-    public static final int T__18=18;
-    public static final int T__54=54;
-    public static final int T__17=17;
-    public static final int T__12=12;
-    public static final int T__11=11;
-    public static final int T__14=14;
-    public static final int T__13=13;
-    public static final int T__59=59;
-    public static final int RULE_INT=6;
-    public static final int T__50=50;
-    public static final int T__42=42;
-    public static final int T__43=43;
-    public static final int T__40=40;
-    public static final int T__41=41;
-    public static final int T__46=46;
-    public static final int T__47=47;
-    public static final int T__44=44;
-    public static final int T__45=45;
-    public static final int T__48=48;
-    public static final int T__49=49;
-    public static final int RULE_SL_COMMENT=8;
-    public static final int RULE_ML_COMMENT=7;
-    public static final int T__30=30;
-    public static final int T__31=31;
-    public static final int T__32=32;
-    public static final int RULE_STRING=4;
-    public static final int T__33=33;
-    public static final int T__71=71;
-    public static final int T__34=34;
-    public static final int T__72=72;
-    public static final int T__35=35;
-    public static final int T__36=36;
-    public static final int T__70=70;
-    public static final int T__37=37;
-    public static final int T__38=38;
-    public static final int T__39=39;
-    public static final int RULE_WS=9;
-    public static final int T__73=73;
-
-    // delegates
-    // delegators
-
-    public InternalMyDslTestLexer() {;} 
-    public InternalMyDslTestLexer(CharStream input) {
-        this(input, new RecognizerSharedState());
-    }
-    public InternalMyDslTestLexer(CharStream input, RecognizerSharedState state) {
-        super(input,state);
-
-    }
-    public String getGrammarFileName() { return "../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g"; }
-
-    // $ANTLR start "T__11"
-    public final void mT__11() throws RecognitionException {
-        try {
-            int _type = T__11;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11:7: ( 'void' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11:9: 'void'
-            {
-            match("void"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__11"
-
-    // $ANTLR start "T__12"
-    public final void mT__12() throws RecognitionException {
-        try {
-            int _type = T__12;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:12:7: ( 'INT' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:12:9: 'INT'
-            {
-            match("INT"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__12"
-
-    // $ANTLR start "T__13"
-    public final void mT__13() throws RecognitionException {
-        try {
-            int _type = T__13;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:13:7: ( 'STRING' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:13:9: 'STRING'
-            {
-            match("STRING"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__13"
-
-    // $ANTLR start "T__14"
-    public final void mT__14() throws RecognitionException {
-        try {
-            int _type = T__14;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:14:7: ( 'BOOL' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:14:9: 'BOOL'
-            {
-            match("BOOL"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__14"
-
-    // $ANTLR start "T__15"
-    public final void mT__15() throws RecognitionException {
-        try {
-            int _type = T__15;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:15:7: ( 'DOUBLE' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:15:9: 'DOUBLE'
-            {
-            match("DOUBLE"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__15"
-
-    // $ANTLR start "T__16"
-    public final void mT__16() throws RecognitionException {
-        try {
-            int _type = T__16;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:16:7: ( 'CHAR' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:16:9: 'CHAR'
-            {
-            match("CHAR"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__16"
-
-    // $ANTLR start "T__17"
-    public final void mT__17() throws RecognitionException {
-        try {
-            int _type = T__17;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:17:7: ( 'BYTE' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:17:9: 'BYTE'
-            {
-            match("BYTE"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__17"
-
-    // $ANTLR start "T__18"
-    public final void mT__18() throws RecognitionException {
-        try {
-            int _type = T__18;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:18:7: ( 'LONG' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:18:9: 'LONG'
-            {
-            match("LONG"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__18"
-
-    // $ANTLR start "T__19"
-    public final void mT__19() throws RecognitionException {
-        try {
-            int _type = T__19;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:19:7: ( 'Repository' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:19:9: 'Repository'
-            {
-            match("Repository"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__19"
-
-    // $ANTLR start "T__20"
-    public final void mT__20() throws RecognitionException {
-        try {
-            int _type = T__20;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:20:7: ( '{' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:20:9: '{'
-            {
-            match('{'); 
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__20"
-
-    // $ANTLR start "T__21"
-    public final void mT__21() throws RecognitionException {
-        try {
-            int _type = T__21;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:21:7: ( '}' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:21:9: '}'
-            {
-            match('}'); 
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__21"
-
-    // $ANTLR start "T__22"
-    public final void mT__22() throws RecognitionException {
-        try {
-            int _type = T__22;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:22:7: ( 'imports' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:22:9: 'imports'
-            {
-            match("imports"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__22"
-
-    // $ANTLR start "T__23"
-    public final void mT__23() throws RecognitionException {
-        try {
-            int _type = T__23;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:23:7: ( ',' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:23:9: ','
-            {
-            match(','); 
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__23"
-
-    // $ANTLR start "T__24"
-    public final void mT__24() throws RecognitionException {
-        try {
-            int _type = T__24;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:24:7: ( 'datatypes' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:24:9: 'datatypes'
-            {
-            match("datatypes"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__24"
-
-    // $ANTLR start "T__25"
-    public final void mT__25() throws RecognitionException {
-        try {
-            int _type = T__25;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:25:7: ( 'components' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:25:9: 'components'
-            {
-            match("components"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__25"
-
-    // $ANTLR start "T__26"
-    public final void mT__26() throws RecognitionException {
-        try {
-            int _type = T__26;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:26:7: ( ';' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:26:9: ';'
-            {
-            match(';'); 
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__26"
-
-    // $ANTLR start "T__27"
-    public final void mT__27() throws RecognitionException {
-        try {
-            int _type = T__27;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:27:7: ( 'interfaces' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:27:9: 'interfaces'
-            {
-            match("interfaces"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__27"
-
-    // $ANTLR start "T__28"
-    public final void mT__28() throws RecognitionException {
-        try {
-            int _type = T__28;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:28:7: ( 'import' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:28:9: 'import'
-            {
-            match("import"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__28"
-
-    // $ANTLR start "T__29"
-    public final void mT__29() throws RecognitionException {
-        try {
-            int _type = T__29;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:29:7: ( '.' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:29:9: '.'
-            {
-            match('.'); 
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__29"
-
-    // $ANTLR start "T__30"
-    public final void mT__30() throws RecognitionException {
-        try {
-            int _type = T__30;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:30:7: ( '*' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:30:9: '*'
-            {
-            match('*'); 
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__30"
-
-    // $ANTLR start "T__31"
-    public final void mT__31() throws RecognitionException {
-        try {
-            int _type = T__31;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:31:7: ( 'Interface' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:31:9: 'Interface'
-            {
-            match("Interface"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__31"
-
-    // $ANTLR start "T__32"
-    public final void mT__32() throws RecognitionException {
-        try {
-            int _type = T__32;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:32:7: ( 'parentInterfaces' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:32:9: 'parentInterfaces'
-            {
-            match("parentInterfaces"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__32"
-
-    // $ANTLR start "T__33"
-    public final void mT__33() throws RecognitionException {
-        try {
-            int _type = T__33;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:33:7: ( '(' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:33:9: '('
-            {
-            match('('); 
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__33"
-
-    // $ANTLR start "T__34"
-    public final void mT__34() throws RecognitionException {
-        try {
-            int _type = T__34;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:34:7: ( ')' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:34:9: ')'
-            {
-            match(')'); 
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__34"
-
-    // $ANTLR start "T__35"
-    public final void mT__35() throws RecognitionException {
-        try {
-            int _type = T__35;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:35:7: ( 'RepositoryComponent' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:35:9: 'RepositoryComponent'
-            {
-            match("RepositoryComponent"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__35"
-
-    // $ANTLR start "T__36"
-    public final void mT__36() throws RecognitionException {
-        try {
-            int _type = T__36;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:36:7: ( 'relationship' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:36:9: 'relationship'
-            {
-            match("relationship"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__36"
-
-    // $ANTLR start "T__37"
-    public final void mT__37() throws RecognitionException {
-        try {
-            int _type = T__37;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:37:7: ( 'providedRoles' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:37:9: 'providedRoles'
-            {
-            match("providedRoles"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__37"
-
-    // $ANTLR start "T__38"
-    public final void mT__38() throws RecognitionException {
-        try {
-            int _type = T__38;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:38:7: ( 'requiredRoles' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:38:9: 'requiredRoles'
-            {
-            match("requiredRoles"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__38"
-
-    // $ANTLR start "T__39"
-    public final void mT__39() throws RecognitionException {
-        try {
-            int _type = T__39;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:39:7: ( 'CollectionDataType' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:39:9: 'CollectionDataType'
-            {
-            match("CollectionDataType"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__39"
-
-    // $ANTLR start "T__40"
-    public final void mT__40() throws RecognitionException {
-        try {
-            int _type = T__40;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:40:7: ( 'innerType' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:40:9: 'innerType'
-            {
-            match("innerType"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__40"
-
-    // $ANTLR start "T__41"
-    public final void mT__41() throws RecognitionException {
-        try {
-            int _type = T__41;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:41:7: ( 'CompositeDataType' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:41:9: 'CompositeDataType'
-            {
-            match("CompositeDataType"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__41"
-
-    // $ANTLR start "T__42"
-    public final void mT__42() throws RecognitionException {
-        try {
-            int _type = T__42;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:42:7: ( 'parentTypes' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:42:9: 'parentTypes'
-            {
-            match("parentTypes"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__42"
-
-    // $ANTLR start "T__43"
-    public final void mT__43() throws RecognitionException {
-        try {
-            int _type = T__43;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:43:7: ( 'innerDeclarations' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:43:9: 'innerDeclarations'
-            {
-            match("innerDeclarations"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__43"
-
-    // $ANTLR start "T__44"
-    public final void mT__44() throws RecognitionException {
-        try {
-            int _type = T__44;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:44:7: ( 'PrimitiveDataType' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:44:9: 'PrimitiveDataType'
-            {
-            match("PrimitiveDataType"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__44"
-
-    // $ANTLR start "T__45"
-    public final void mT__45() throws RecognitionException {
-        try {
-            int _type = T__45;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:45:7: ( 'type' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:45:9: 'type'
-            {
-            match("type"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__45"
-
-    // $ANTLR start "T__46"
-    public final void mT__46() throws RecognitionException {
-        try {
-            int _type = T__46;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:46:7: ( 'ref' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:46:9: 'ref'
-            {
-            match("ref"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__46"
-
-    // $ANTLR start "T__47"
-    public final void mT__47() throws RecognitionException {
-        try {
-            int _type = T__47;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:47:7: ( 'InnerDeclaration' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:47:9: 'InnerDeclaration'
-            {
-            match("InnerDeclaration"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__47"
-
-    // $ANTLR start "T__48"
-    public final void mT__48() throws RecognitionException {
-        try {
-            int _type = T__48;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:48:7: ( 'dataType' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:48:9: 'dataType'
-            {
-            match("dataType"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__48"
-
-    // $ANTLR start "T__49"
-    public final void mT__49() throws RecognitionException {
-        try {
-            int _type = T__49;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:49:7: ( 'ProvidedRole' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:49:9: 'ProvidedRole'
-            {
-            match("ProvidedRole"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__49"
-
-    // $ANTLR start "T__50"
-    public final void mT__50() throws RecognitionException {
-        try {
-            int _type = T__50;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:50:7: ( 'RequiredRole' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:50:9: 'RequiredRole'
-            {
-            match("RequiredRole"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__50"
-
-    // $ANTLR start "T__51"
-    public final void mT__51() throws RecognitionException {
-        try {
-            int _type = T__51;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:51:7: ( 'BasicComponent' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:51:9: 'BasicComponent'
-            {
-            match("BasicComponent"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__51"
-
-    // $ANTLR start "T__52"
-    public final void mT__52() throws RecognitionException {
-        try {
-            int _type = T__52;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:52:7: ( 'CompositeComponent' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:52:9: 'CompositeComponent'
-            {
-            match("CompositeComponent"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__52"
-
-    // $ANTLR start "T__53"
-    public final void mT__53() throws RecognitionException {
-        try {
-            int _type = T__53;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:53:7: ( 'assembly' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:53:9: 'assembly'
-            {
-            match("assembly"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__53"
-
-    // $ANTLR start "T__54"
-    public final void mT__54() throws RecognitionException {
-        try {
-            int _type = T__54;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:54:7: ( 'SubSystem' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:54:9: 'SubSystem'
-            {
-            match("SubSystem"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__54"
-
-    // $ANTLR start "T__55"
-    public final void mT__55() throws RecognitionException {
-        try {
-            int _type = T__55;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:55:7: ( 'ComposedStructureAssembly' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:55:9: 'ComposedStructureAssembly'
-            {
-            match("ComposedStructureAssembly"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__55"
-
-    // $ANTLR start "T__56"
-    public final void mT__56() throws RecognitionException {
-        try {
-            int _type = T__56;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:56:7: ( 'assemblyContexts' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:56:9: 'assemblyContexts'
-            {
-            match("assemblyContexts"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__56"
-
-    // $ANTLR start "T__57"
-    public final void mT__57() throws RecognitionException {
-        try {
-            int _type = T__57;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:57:7: ( 'assemblyConnectors' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:57:9: 'assemblyConnectors'
-            {
-            match("assemblyConnectors"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__57"
-
-    // $ANTLR start "T__58"
-    public final void mT__58() throws RecognitionException {
-        try {
-            int _type = T__58;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:58:7: ( 'providedDelegationConnectors' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:58:9: 'providedDelegationConnectors'
-            {
-            match("providedDelegationConnectors"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__58"
-
-    // $ANTLR start "T__59"
-    public final void mT__59() throws RecognitionException {
-        try {
-            int _type = T__59;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:59:7: ( 'requiredDelegationConnectors' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:59:9: 'requiredDelegationConnectors'
-            {
-            match("requiredDelegationConnectors"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__59"
-
-    // $ANTLR start "T__60"
-    public final void mT__60() throws RecognitionException {
-        try {
-            int _type = T__60;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:60:7: ( 'AssemblyContext' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:60:9: 'AssemblyContext'
-            {
-            match("AssemblyContext"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__60"
-
-    // $ANTLR start "T__61"
-    public final void mT__61() throws RecognitionException {
-        try {
-            int _type = T__61;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:61:7: ( 'encapsulatedComponent' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:61:9: 'encapsulatedComponent'
-            {
-            match("encapsulatedComponent"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__61"
-
-    // $ANTLR start "T__62"
-    public final void mT__62() throws RecognitionException {
-        try {
-            int _type = T__62;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:62:7: ( 'AssemblyConnector' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:62:9: 'AssemblyConnector'
-            {
-            match("AssemblyConnector"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__62"
-
-    // $ANTLR start "T__63"
-    public final void mT__63() throws RecognitionException {
-        try {
-            int _type = T__63;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:63:7: ( 'requiredRole' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:63:9: 'requiredRole'
-            {
-            match("requiredRole"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__63"
-
-    // $ANTLR start "T__64"
-    public final void mT__64() throws RecognitionException {
-        try {
-            int _type = T__64;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:64:7: ( 'providedRole' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:64:9: 'providedRole'
-            {
-            match("providedRole"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__64"
-
-    // $ANTLR start "T__65"
-    public final void mT__65() throws RecognitionException {
-        try {
-            int _type = T__65;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:65:7: ( 'providingAssemblyContext' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:65:9: 'providingAssemblyContext'
-            {
-            match("providingAssemblyContext"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__65"
-
-    // $ANTLR start "T__66"
-    public final void mT__66() throws RecognitionException {
-        try {
-            int _type = T__66;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:66:7: ( 'requiringAssemblyContext' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:66:9: 'requiringAssemblyContext'
-            {
-            match("requiringAssemblyContext"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__66"
-
-    // $ANTLR start "T__67"
-    public final void mT__67() throws RecognitionException {
-        try {
-            int _type = T__67;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:67:7: ( 'ProvidedDelegationConnector' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:67:9: 'ProvidedDelegationConnector'
-            {
-            match("ProvidedDelegationConnector"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__67"
-
-    // $ANTLR start "T__68"
-    public final void mT__68() throws RecognitionException {
-        try {
-            int _type = T__68;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:68:7: ( 'assemblyContext' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:68:9: 'assemblyContext'
-            {
-            match("assemblyContext"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__68"
-
-    // $ANTLR start "T__69"
-    public final void mT__69() throws RecognitionException {
-        try {
-            int _type = T__69;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:69:7: ( 'innerProvidedRole' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:69:9: 'innerProvidedRole'
-            {
-            match("innerProvidedRole"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__69"
-
-    // $ANTLR start "T__70"
-    public final void mT__70() throws RecognitionException {
-        try {
-            int _type = T__70;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:70:7: ( 'outerProvidedRole' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:70:9: 'outerProvidedRole'
-            {
-            match("outerProvidedRole"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__70"
-
-    // $ANTLR start "T__71"
-    public final void mT__71() throws RecognitionException {
-        try {
-            int _type = T__71;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:71:7: ( 'RequiredDelegationConnector' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:71:9: 'RequiredDelegationConnector'
-            {
-            match("RequiredDelegationConnector"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__71"
-
-    // $ANTLR start "T__72"
-    public final void mT__72() throws RecognitionException {
-        try {
-            int _type = T__72;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:72:7: ( 'innerRequiredRole' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:72:9: 'innerRequiredRole'
-            {
-            match("innerRequiredRole"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__72"
-
-    // $ANTLR start "T__73"
-    public final void mT__73() throws RecognitionException {
-        try {
-            int _type = T__73;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:73:7: ( 'outerRequiredRole' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:73:9: 'outerRequiredRole'
-            {
-            match("outerRequiredRole"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__73"
-
-    // $ANTLR start "RULE_ID"
-    public final void mRULE_ID() throws RecognitionException {
-        try {
-            int _type = RULE_ID;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11874:9: ( ( '^' )? ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )* )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11874:11: ( '^' )? ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )*
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11874:11: ( '^' )?
-            int alt1=2;
-            int LA1_0 = input.LA(1);
-
-            if ( (LA1_0=='^') ) {
-                alt1=1;
-            }
-            switch (alt1) {
-                case 1 :
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11874:11: '^'
-                    {
-                    match('^'); 
-
-                    }
-                    break;
-
-            }
-
-            if ( (input.LA(1)>='A' && input.LA(1)<='Z')||input.LA(1)=='_'||(input.LA(1)>='a' && input.LA(1)<='z') ) {
-                input.consume();
-
-            }
-            else {
-                MismatchedSetException mse = new MismatchedSetException(null,input);
-                recover(mse);
-                throw mse;}
-
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11874:40: ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )*
-            loop2:
-            do {
-                int alt2=2;
-                int LA2_0 = input.LA(1);
-
-                if ( ((LA2_0>='0' && LA2_0<='9')||(LA2_0>='A' && LA2_0<='Z')||LA2_0=='_'||(LA2_0>='a' && LA2_0<='z')) ) {
-                    alt2=1;
-                }
-
-
-                switch (alt2) {
-            	case 1 :
-            	    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:
-            	    {
-            	    if ( (input.LA(1)>='0' && input.LA(1)<='9')||(input.LA(1)>='A' && input.LA(1)<='Z')||input.LA(1)=='_'||(input.LA(1)>='a' && input.LA(1)<='z') ) {
-            	        input.consume();
-
-            	    }
-            	    else {
-            	        MismatchedSetException mse = new MismatchedSetException(null,input);
-            	        recover(mse);
-            	        throw mse;}
-
-
-            	    }
-            	    break;
-
-            	default :
-            	    break loop2;
-                }
-            } while (true);
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "RULE_ID"
-
-    // $ANTLR start "RULE_INT"
-    public final void mRULE_INT() throws RecognitionException {
-        try {
-            int _type = RULE_INT;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11876:10: ( ( '0' .. '9' )+ )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11876:12: ( '0' .. '9' )+
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11876:12: ( '0' .. '9' )+
-            int cnt3=0;
-            loop3:
-            do {
-                int alt3=2;
-                int LA3_0 = input.LA(1);
-
-                if ( ((LA3_0>='0' && LA3_0<='9')) ) {
-                    alt3=1;
-                }
-
-
-                switch (alt3) {
-            	case 1 :
-            	    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11876:13: '0' .. '9'
-            	    {
-            	    matchRange('0','9'); 
-
-            	    }
-            	    break;
-
-            	default :
-            	    if ( cnt3 >= 1 ) break loop3;
-                        EarlyExitException eee =
-                            new EarlyExitException(3, input);
-                        throw eee;
-                }
-                cnt3++;
-            } while (true);
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "RULE_INT"
-
-    // $ANTLR start "RULE_STRING"
-    public final void mRULE_STRING() throws RecognitionException {
-        try {
-            int _type = RULE_STRING;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11878:13: ( ( '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\"' ) ) )* '\"' | '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11878:15: ( '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\"' ) ) )* '\"' | '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11878:15: ( '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\"' ) ) )* '\"' | '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' )
-            int alt6=2;
-            int LA6_0 = input.LA(1);
-
-            if ( (LA6_0=='\"') ) {
-                alt6=1;
-            }
-            else if ( (LA6_0=='\'') ) {
-                alt6=2;
-            }
-            else {
-                NoViableAltException nvae =
-                    new NoViableAltException("", 6, 0, input);
-
-                throw nvae;
-            }
-            switch (alt6) {
-                case 1 :
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11878:16: '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\"' ) ) )* '\"'
-                    {
-                    match('\"'); 
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11878:20: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\"' ) ) )*
-                    loop4:
-                    do {
-                        int alt4=3;
-                        int LA4_0 = input.LA(1);
-
-                        if ( (LA4_0=='\\') ) {
-                            alt4=1;
-                        }
-                        else if ( ((LA4_0>='\u0000' && LA4_0<='!')||(LA4_0>='#' && LA4_0<='[')||(LA4_0>=']' && LA4_0<='\uFFFF')) ) {
-                            alt4=2;
-                        }
-
-
-                        switch (alt4) {
-                    	case 1 :
-                    	    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11878:21: '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' )
-                    	    {
-                    	    match('\\'); 
-                    	    if ( input.LA(1)=='\"'||input.LA(1)=='\''||input.LA(1)=='\\'||input.LA(1)=='b'||input.LA(1)=='f'||input.LA(1)=='n'||input.LA(1)=='r'||(input.LA(1)>='t' && input.LA(1)<='u') ) {
-                    	        input.consume();
-
-                    	    }
-                    	    else {
-                    	        MismatchedSetException mse = new MismatchedSetException(null,input);
-                    	        recover(mse);
-                    	        throw mse;}
-
-
-                    	    }
-                    	    break;
-                    	case 2 :
-                    	    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11878:66: ~ ( ( '\\\\' | '\"' ) )
-                    	    {
-                    	    if ( (input.LA(1)>='\u0000' && input.LA(1)<='!')||(input.LA(1)>='#' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFF') ) {
-                    	        input.consume();
-
-                    	    }
-                    	    else {
-                    	        MismatchedSetException mse = new MismatchedSetException(null,input);
-                    	        recover(mse);
-                    	        throw mse;}
-
-
-                    	    }
-                    	    break;
-
-                    	default :
-                    	    break loop4;
-                        }
-                    } while (true);
-
-                    match('\"'); 
-
-                    }
-                    break;
-                case 2 :
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11878:86: '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\\'' ) ) )* '\\''
-                    {
-                    match('\''); 
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11878:91: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\\'' ) ) )*
-                    loop5:
-                    do {
-                        int alt5=3;
-                        int LA5_0 = input.LA(1);
-
-                        if ( (LA5_0=='\\') ) {
-                            alt5=1;
-                        }
-                        else if ( ((LA5_0>='\u0000' && LA5_0<='&')||(LA5_0>='(' && LA5_0<='[')||(LA5_0>=']' && LA5_0<='\uFFFF')) ) {
-                            alt5=2;
-                        }
-
-
-                        switch (alt5) {
-                    	case 1 :
-                    	    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11878:92: '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' )
-                    	    {
-                    	    match('\\'); 
-                    	    if ( input.LA(1)=='\"'||input.LA(1)=='\''||input.LA(1)=='\\'||input.LA(1)=='b'||input.LA(1)=='f'||input.LA(1)=='n'||input.LA(1)=='r'||(input.LA(1)>='t' && input.LA(1)<='u') ) {
-                    	        input.consume();
-
-                    	    }
-                    	    else {
-                    	        MismatchedSetException mse = new MismatchedSetException(null,input);
-                    	        recover(mse);
-                    	        throw mse;}
-
-
-                    	    }
-                    	    break;
-                    	case 2 :
-                    	    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11878:137: ~ ( ( '\\\\' | '\\'' ) )
-                    	    {
-                    	    if ( (input.LA(1)>='\u0000' && input.LA(1)<='&')||(input.LA(1)>='(' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFF') ) {
-                    	        input.consume();
-
-                    	    }
-                    	    else {
-                    	        MismatchedSetException mse = new MismatchedSetException(null,input);
-                    	        recover(mse);
-                    	        throw mse;}
-
-
-                    	    }
-                    	    break;
-
-                    	default :
-                    	    break loop5;
-                        }
-                    } while (true);
-
-                    match('\''); 
-
-                    }
-                    break;
-
-            }
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "RULE_STRING"
-
-    // $ANTLR start "RULE_ML_COMMENT"
-    public final void mRULE_ML_COMMENT() throws RecognitionException {
-        try {
-            int _type = RULE_ML_COMMENT;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11880:17: ( '/*' ( options {greedy=false; } : . )* '*/' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11880:19: '/*' ( options {greedy=false; } : . )* '*/'
-            {
-            match("/*"); 
-
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11880:24: ( options {greedy=false; } : . )*
-            loop7:
-            do {
-                int alt7=2;
-                int LA7_0 = input.LA(1);
-
-                if ( (LA7_0=='*') ) {
-                    int LA7_1 = input.LA(2);
-
-                    if ( (LA7_1=='/') ) {
-                        alt7=2;
-                    }
-                    else if ( ((LA7_1>='\u0000' && LA7_1<='.')||(LA7_1>='0' && LA7_1<='\uFFFF')) ) {
-                        alt7=1;
-                    }
-
-
-                }
-                else if ( ((LA7_0>='\u0000' && LA7_0<=')')||(LA7_0>='+' && LA7_0<='\uFFFF')) ) {
-                    alt7=1;
-                }
-
-
-                switch (alt7) {
-            	case 1 :
-            	    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11880:52: .
-            	    {
-            	    matchAny(); 
-
-            	    }
-            	    break;
-
-            	default :
-            	    break loop7;
-                }
-            } while (true);
-
-            match("*/"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "RULE_ML_COMMENT"
-
-    // $ANTLR start "RULE_SL_COMMENT"
-    public final void mRULE_SL_COMMENT() throws RecognitionException {
-        try {
-            int _type = RULE_SL_COMMENT;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11882:17: ( '//' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )? )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11882:19: '//' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )?
-            {
-            match("//"); 
-
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11882:24: (~ ( ( '\\n' | '\\r' ) ) )*
-            loop8:
-            do {
-                int alt8=2;
-                int LA8_0 = input.LA(1);
-
-                if ( ((LA8_0>='\u0000' && LA8_0<='\t')||(LA8_0>='\u000B' && LA8_0<='\f')||(LA8_0>='\u000E' && LA8_0<='\uFFFF')) ) {
-                    alt8=1;
-                }
-
-
-                switch (alt8) {
-            	case 1 :
-            	    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11882:24: ~ ( ( '\\n' | '\\r' ) )
-            	    {
-            	    if ( (input.LA(1)>='\u0000' && input.LA(1)<='\t')||(input.LA(1)>='\u000B' && input.LA(1)<='\f')||(input.LA(1)>='\u000E' && input.LA(1)<='\uFFFF') ) {
-            	        input.consume();
-
-            	    }
-            	    else {
-            	        MismatchedSetException mse = new MismatchedSetException(null,input);
-            	        recover(mse);
-            	        throw mse;}
-
-
-            	    }
-            	    break;
-
-            	default :
-            	    break loop8;
-                }
-            } while (true);
-
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11882:40: ( ( '\\r' )? '\\n' )?
-            int alt10=2;
-            int LA10_0 = input.LA(1);
-
-            if ( (LA10_0=='\n'||LA10_0=='\r') ) {
-                alt10=1;
-            }
-            switch (alt10) {
-                case 1 :
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11882:41: ( '\\r' )? '\\n'
-                    {
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11882:41: ( '\\r' )?
-                    int alt9=2;
-                    int LA9_0 = input.LA(1);
-
-                    if ( (LA9_0=='\r') ) {
-                        alt9=1;
-                    }
-                    switch (alt9) {
-                        case 1 :
-                            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11882:41: '\\r'
-                            {
-                            match('\r'); 
-
-                            }
-                            break;
-
-                    }
-
-                    match('\n'); 
-
-                    }
-                    break;
-
-            }
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "RULE_SL_COMMENT"
-
-    // $ANTLR start "RULE_WS"
-    public final void mRULE_WS() throws RecognitionException {
-        try {
-            int _type = RULE_WS;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11884:9: ( ( ' ' | '\\t' | '\\r' | '\\n' )+ )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11884:11: ( ' ' | '\\t' | '\\r' | '\\n' )+
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11884:11: ( ' ' | '\\t' | '\\r' | '\\n' )+
-            int cnt11=0;
-            loop11:
-            do {
-                int alt11=2;
-                int LA11_0 = input.LA(1);
-
-                if ( ((LA11_0>='\t' && LA11_0<='\n')||LA11_0=='\r'||LA11_0==' ') ) {
-                    alt11=1;
-                }
-
-
-                switch (alt11) {
-            	case 1 :
-            	    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:
-            	    {
-            	    if ( (input.LA(1)>='\t' && input.LA(1)<='\n')||input.LA(1)=='\r'||input.LA(1)==' ' ) {
-            	        input.consume();
-
-            	    }
-            	    else {
-            	        MismatchedSetException mse = new MismatchedSetException(null,input);
-            	        recover(mse);
-            	        throw mse;}
-
-
-            	    }
-            	    break;
-
-            	default :
-            	    if ( cnt11 >= 1 ) break loop11;
-                        EarlyExitException eee =
-                            new EarlyExitException(11, input);
-                        throw eee;
-                }
-                cnt11++;
-            } while (true);
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "RULE_WS"
-
-    // $ANTLR start "RULE_ANY_OTHER"
-    public final void mRULE_ANY_OTHER() throws RecognitionException {
-        try {
-            int _type = RULE_ANY_OTHER;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11886:16: ( . )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11886:18: .
-            {
-            matchAny(); 
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "RULE_ANY_OTHER"
-
-    public void mTokens() throws RecognitionException {
-        // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1:8: ( T__11 | T__12 | T__13 | T__14 | T__15 | T__16 | T__17 | T__18 | T__19 | T__20 | T__21 | T__22 | T__23 | T__24 | T__25 | T__26 | T__27 | T__28 | T__29 | T__30 | T__31 | T__32 | T__33 | T__34 | T__35 | T__36 | T__37 | T__38 | T__39 | T__40 | T__41 | T__42 | T__43 | T__44 | T__45 | T__46 | T__47 | T__48 | T__49 | T__50 | T__51 | T__52 | T__53 | T__54 | T__55 | T__56 | T__57 | T__58 | T__59 | T__60 | T__61 | T__62 | T__63 | T__64 | T__65 | T__66 | T__67 | T__68 | T__69 | T__70 | T__71 | T__72 | T__73 | RULE_ID | RULE_INT | RULE_STRING | RULE_ML_COMMENT | RULE_SL_COMMENT | RULE_WS | RULE_ANY_OTHER )
-        int alt12=70;
-        alt12 = dfa12.predict(input);
-        switch (alt12) {
-            case 1 :
-                // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1:10: T__11
-                {
-                mT__11(); 
-
-                }
-                break;
-            case 2 :
-                // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1:16: T__12
-                {
-                mT__12(); 
-
-                }
-                break;
-            case 3 :
-                // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1:22: T__13
-                {
-                mT__13(); 
-
-                }
-                break;
-            case 4 :
-                // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1:28: T__14
-                {
-                mT__14(); 
-
-                }
-                break;
-            case 5 :
-                // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1:34: T__15
-                {
-                mT__15(); 
-
-                }
-                break;
-            case 6 :
-                // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1:40: T__16
-                {
-                mT__16(); 
-
-                }
-                break;
-            case 7 :
-                // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1:46: T__17
-                {
-                mT__17(); 
-
-                }
-                break;
-            case 8 :
-                // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1:52: T__18
-                {
-                mT__18(); 
-
-                }
-                break;
-            case 9 :
-                // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1:58: T__19
-                {
-                mT__19(); 
-
-                }
-                break;
-            case 10 :
-                // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1:64: T__20
-                {
-                mT__20(); 
-
-                }
-                break;
-            case 11 :
-                // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1:70: T__21
-                {
-                mT__21(); 
-
-                }
-                break;
-            case 12 :
-                // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1:76: T__22
-                {
-                mT__22(); 
-
-                }
-                break;
-            case 13 :
-                // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1:82: T__23
-                {
-                mT__23(); 
-
-                }
-                break;
-            case 14 :
-                // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1:88: T__24
-                {
-                mT__24(); 
-
-                }
-                break;
-            case 15 :
-                // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1:94: T__25
-                {
-                mT__25(); 
-
-                }
-                break;
-            case 16 :
-                // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1:100: T__26
-                {
-                mT__26(); 
-
-                }
-                break;
-            case 17 :
-                // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1:106: T__27
-                {
-                mT__27(); 
-
-                }
-                break;
-            case 18 :
-                // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1:112: T__28
-                {
-                mT__28(); 
-
-                }
-                break;
-            case 19 :
-                // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1:118: T__29
-                {
-                mT__29(); 
-
-                }
-                break;
-            case 20 :
-                // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1:124: T__30
-                {
-                mT__30(); 
-
-                }
-                break;
-            case 21 :
-                // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1:130: T__31
-                {
-                mT__31(); 
-
-                }
-                break;
-            case 22 :
-                // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1:136: T__32
-                {
-                mT__32(); 
-
-                }
-                break;
-            case 23 :
-                // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1:142: T__33
-                {
-                mT__33(); 
-
-                }
-                break;
-            case 24 :
-                // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1:148: T__34
-                {
-                mT__34(); 
-
-                }
-                break;
-            case 25 :
-                // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1:154: T__35
-                {
-                mT__35(); 
-
-                }
-                break;
-            case 26 :
-                // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1:160: T__36
-                {
-                mT__36(); 
-
-                }
-                break;
-            case 27 :
-                // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1:166: T__37
-                {
-                mT__37(); 
-
-                }
-                break;
-            case 28 :
-                // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1:172: T__38
-                {
-                mT__38(); 
-
-                }
-                break;
-            case 29 :
-                // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1:178: T__39
-                {
-                mT__39(); 
-
-                }
-                break;
-            case 30 :
-                // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1:184: T__40
-                {
-                mT__40(); 
-
-                }
-                break;
-            case 31 :
-                // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1:190: T__41
-                {
-                mT__41(); 
-
-                }
-                break;
-            case 32 :
-                // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1:196: T__42
-                {
-                mT__42(); 
-
-                }
-                break;
-            case 33 :
-                // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1:202: T__43
-                {
-                mT__43(); 
-
-                }
-                break;
-            case 34 :
-                // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1:208: T__44
-                {
-                mT__44(); 
-
-                }
-                break;
-            case 35 :
-                // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1:214: T__45
-                {
-                mT__45(); 
-
-                }
-                break;
-            case 36 :
-                // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1:220: T__46
-                {
-                mT__46(); 
-
-                }
-                break;
-            case 37 :
-                // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1:226: T__47
-                {
-                mT__47(); 
-
-                }
-                break;
-            case 38 :
-                // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1:232: T__48
-                {
-                mT__48(); 
-
-                }
-                break;
-            case 39 :
-                // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1:238: T__49
-                {
-                mT__49(); 
-
-                }
-                break;
-            case 40 :
-                // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1:244: T__50
-                {
-                mT__50(); 
-
-                }
-                break;
-            case 41 :
-                // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1:250: T__51
-                {
-                mT__51(); 
-
-                }
-                break;
-            case 42 :
-                // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1:256: T__52
-                {
-                mT__52(); 
-
-                }
-                break;
-            case 43 :
-                // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1:262: T__53
-                {
-                mT__53(); 
-
-                }
-                break;
-            case 44 :
-                // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1:268: T__54
-                {
-                mT__54(); 
-
-                }
-                break;
-            case 45 :
-                // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1:274: T__55
-                {
-                mT__55(); 
-
-                }
-                break;
-            case 46 :
-                // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1:280: T__56
-                {
-                mT__56(); 
-
-                }
-                break;
-            case 47 :
-                // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1:286: T__57
-                {
-                mT__57(); 
-
-                }
-                break;
-            case 48 :
-                // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1:292: T__58
-                {
-                mT__58(); 
-
-                }
-                break;
-            case 49 :
-                // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1:298: T__59
-                {
-                mT__59(); 
-
-                }
-                break;
-            case 50 :
-                // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1:304: T__60
-                {
-                mT__60(); 
-
-                }
-                break;
-            case 51 :
-                // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1:310: T__61
-                {
-                mT__61(); 
-
-                }
-                break;
-            case 52 :
-                // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1:316: T__62
-                {
-                mT__62(); 
-
-                }
-                break;
-            case 53 :
-                // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1:322: T__63
-                {
-                mT__63(); 
-
-                }
-                break;
-            case 54 :
-                // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1:328: T__64
-                {
-                mT__64(); 
-
-                }
-                break;
-            case 55 :
-                // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1:334: T__65
-                {
-                mT__65(); 
-
-                }
-                break;
-            case 56 :
-                // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1:340: T__66
-                {
-                mT__66(); 
-
-                }
-                break;
-            case 57 :
-                // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1:346: T__67
-                {
-                mT__67(); 
-
-                }
-                break;
-            case 58 :
-                // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1:352: T__68
-                {
-                mT__68(); 
-
-                }
-                break;
-            case 59 :
-                // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1:358: T__69
-                {
-                mT__69(); 
-
-                }
-                break;
-            case 60 :
-                // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1:364: T__70
-                {
-                mT__70(); 
-
-                }
-                break;
-            case 61 :
-                // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1:370: T__71
-                {
-                mT__71(); 
-
-                }
-                break;
-            case 62 :
-                // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1:376: T__72
-                {
-                mT__72(); 
-
-                }
-                break;
-            case 63 :
-                // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1:382: T__73
-                {
-                mT__73(); 
-
-                }
-                break;
-            case 64 :
-                // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1:388: RULE_ID
-                {
-                mRULE_ID(); 
-
-                }
-                break;
-            case 65 :
-                // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1:396: RULE_INT
-                {
-                mRULE_INT(); 
-
-                }
-                break;
-            case 66 :
-                // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1:405: RULE_STRING
-                {
-                mRULE_STRING(); 
-
-                }
-                break;
-            case 67 :
-                // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1:417: RULE_ML_COMMENT
-                {
-                mRULE_ML_COMMENT(); 
-
-                }
-                break;
-            case 68 :
-                // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1:433: RULE_SL_COMMENT
-                {
-                mRULE_SL_COMMENT(); 
-
-                }
-                break;
-            case 69 :
-                // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1:449: RULE_WS
-                {
-                mRULE_WS(); 
-
-                }
-                break;
-            case 70 :
-                // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1:457: RULE_ANY_OTHER
-                {
-                mRULE_ANY_OTHER(); 
-
-                }
-                break;
-
-        }
-
-    }
-
-
-    protected DFA12 dfa12 = new DFA12(this);
-    static final String DFA12_eotS =
-        "\1\uffff\10\45\2\uffff\1\45\1\uffff\2\45\3\uffff\1\45\2\uffff\7"+
-        "\45\1\43\2\uffff\3\43\2\uffff\1\45\1\uffff\14\45\2\uffff\2\45\1"+
-        "\uffff\2\45\3\uffff\2\45\2\uffff\7\45\5\uffff\1\45\1\156\27\45\1"+
-        "\u0086\7\45\1\u008e\1\uffff\4\45\1\u0093\1\u0094\2\45\1\u0097\2"+
-        "\45\1\u009a\13\45\1\uffff\2\45\1\u00a9\4\45\1\uffff\4\45\2\uffff"+
-        "\2\45\1\uffff\2\45\1\uffff\16\45\1\uffff\6\45\1\u00ce\2\45\1\u00d1"+
-        "\4\45\1\u00d8\25\45\1\uffff\2\45\1\uffff\5\45\1\u00f8\1\uffff\37"+
-        "\45\1\uffff\6\45\1\u011f\12\45\1\u012e\4\45\1\u0133\1\45\1\u0135"+
-        "\10\45\1\u013f\3\45\1\u0143\1\uffff\16\45\1\uffff\4\45\1\uffff\1"+
-        "\45\1\uffff\5\45\1\u015d\2\45\1\u0160\1\uffff\3\45\1\uffff\1\u0164"+
-        "\30\45\1\uffff\2\45\1\uffff\3\45\1\uffff\1\45\1\u0183\26\45\1\u019c"+
-        "\5\45\1\uffff\1\u01a3\2\45\1\u01a6\1\u01a8\3\45\1\u01ac\17\45\1"+
-        "\uffff\5\45\1\u01c1\1\uffff\2\45\1\uffff\1\u01c4\1\uffff\3\45\1"+
-        "\uffff\11\45\1\u01d1\12\45\1\uffff\2\45\1\uffff\14\45\1\uffff\20"+
-        "\45\1\u01fb\1\45\1\u01fd\4\45\1\u0202\11\45\1\u020c\6\45\1\u0213"+
-        "\1\uffff\1\45\1\uffff\4\45\1\uffff\1\45\1\u021a\4\45\1\u021f\1\u0220"+
-        "\1\u0221\1\uffff\4\45\1\u0226\1\45\1\uffff\1\45\1\u0229\1\45\1\u022b"+
-        "\1\u022c\1\u022d\1\uffff\1\u022e\3\45\3\uffff\4\45\1\uffff\1\45"+
-        "\1\u0237\1\uffff\1\45\4\uffff\1\45\1\u023a\6\45\1\uffff\2\45\1\uffff"+
-        "\16\45\1\u0251\7\45\1\uffff\12\45\1\u0263\1\45\1\u0265\1\45\1\u0267"+
-        "\2\45\1\uffff\1\45\1\uffff\1\45\1\uffff\4\45\1\u0270\2\45\1\u0273"+
-        "\1\uffff\1\u0274\1\u0275\3\uffff";
-    static final String DFA12_eofS =
-        "\u0276\uffff";
-    static final String DFA12_minS =
-        "\1\0\1\157\1\116\1\124\2\117\1\110\1\117\1\145\2\uffff\1\155\1"+
-        "\uffff\1\141\1\157\3\uffff\1\141\2\uffff\1\145\1\162\1\171\2\163"+
-        "\1\156\1\165\1\101\2\uffff\2\0\1\52\2\uffff\1\151\1\uffff\1\124"+
-        "\1\156\1\122\1\142\1\117\1\124\1\163\1\125\1\101\1\154\1\116\1\160"+
-        "\2\uffff\1\160\1\156\1\uffff\1\164\1\155\3\uffff\1\162\1\157\2\uffff"+
-        "\1\146\1\151\1\160\2\163\1\143\1\164\5\uffff\1\144\1\60\2\145\1"+
-        "\111\1\123\1\114\1\105\1\151\1\102\1\122\1\154\1\160\1\107\1\157"+
-        "\1\165\1\157\2\145\1\141\1\160\1\145\1\166\1\141\1\165\1\60\1\155"+
-        "\1\166\3\145\1\141\1\145\1\60\1\uffff\2\162\1\116\1\171\2\60\1\143"+
-        "\1\114\1\60\1\145\1\157\1\60\1\163\1\151\3\162\1\124\1\157\1\156"+
-        "\1\151\1\164\1\151\1\uffff\2\151\1\60\2\155\1\160\1\162\1\uffff"+
-        "\1\146\1\104\1\107\1\163\2\uffff\1\103\1\105\1\uffff\1\143\1\163"+
-        "\1\uffff\1\151\1\162\1\164\1\146\1\104\2\171\1\156\1\164\1\144\1"+
-        "\151\1\162\1\164\1\144\1\uffff\2\142\1\163\1\120\1\141\1\145\1\60"+
-        "\1\164\1\157\1\60\1\164\1\145\1\164\1\145\1\60\1\141\1\171\1\145"+
-        "\1\162\1\145\2\160\1\145\1\111\1\145\1\157\1\145\1\151\1\145\2\154"+
-        "\1\165\1\162\1\145\2\143\1\uffff\1\145\1\155\1\uffff\1\151\1\164"+
-        "\1\144\1\157\1\144\1\60\1\uffff\1\143\1\160\1\143\1\157\1\161\2"+
-        "\145\2\156\1\171\1\144\2\156\1\144\1\156\1\166\1\144\2\171\1\154"+
-        "\1\157\1\161\1\145\1\154\1\155\1\160\1\157\1\145\1\123\1\162\1\104"+
-        "\1\uffff\2\145\1\154\1\166\1\165\1\163\1\60\2\164\1\160\1\104\1"+
-        "\147\1\163\1\104\1\147\1\145\1\104\1\60\1\103\1\141\1\166\1\165"+
-        "\1\60\1\141\1\60\1\157\1\156\1\103\1\164\1\171\1\157\1\145\1\163"+
-        "\1\60\1\141\2\151\1\60\1\uffff\1\163\2\145\1\157\1\145\1\101\1\150"+
-        "\1\157\1\145\1\101\1\104\1\157\1\145\1\157\1\uffff\1\157\1\164\2"+
-        "\151\1\uffff\1\162\1\uffff\1\156\1\104\1\141\1\157\1\162\1\60\2"+
-        "\154\1\60\1\uffff\1\162\1\144\1\162\1\uffff\1\60\1\162\1\163\2\154"+
-        "\1\163\1\151\2\154\1\163\1\141\2\154\2\156\1\145\1\144\1\162\1\141"+
-        "\1\145\1\141\1\164\1\155\1\165\1\157\1\uffff\2\145\1\uffff\1\141"+
-        "\2\145\1\uffff\1\146\1\60\2\145\1\163\1\160\2\145\1\163\1\164\2"+
-        "\145\2\156\1\144\2\145\1\164\1\156\1\164\1\141\1\160\1\143\1\155"+
-        "\1\60\1\147\1\164\2\144\1\141\1\uffff\1\60\1\147\1\145\2\60\1\147"+
-        "\1\145\1\141\1\60\1\147\4\145\1\103\2\144\1\151\1\164\1\141\1\124"+
-        "\1\157\1\164\1\160\1\uffff\1\141\1\151\2\122\1\143\1\60\1\uffff"+
-        "\1\141\1\155\1\uffff\1\60\1\uffff\1\141\1\155\1\124\1\uffff\1\141"+
-        "\1\170\1\143\1\170\1\143\1\157\2\122\1\157\1\60\1\124\1\171\1\156"+
-        "\1\165\1\157\1\164\3\157\1\145\1\uffff\1\164\1\142\1\uffff\1\164"+
-        "\1\142\1\171\5\164\1\155\2\157\1\156\1\uffff\1\171\1\160\1\145\1"+
-        "\162\1\156\1\151\1\156\2\154\1\163\1\151\1\154\1\151\1\154\1\160"+
-        "\1\151\1\60\1\157\1\60\1\157\1\160\2\154\1\60\1\160\1\145\1\156"+
-        "\2\145\1\157\1\163\2\145\1\60\1\157\1\171\1\157\1\171\1\145\1\157"+
-        "\1\60\1\uffff\1\162\1\uffff\1\162\1\157\2\145\1\uffff\1\145\1\60"+
-        "\1\164\1\101\2\156\3\60\1\uffff\1\156\1\103\1\156\1\103\1\60\1\156"+
-        "\1\uffff\1\163\1\60\1\156\3\60\1\uffff\1\60\1\163\1\164\1\103\3"+
-        "\uffff\1\103\1\157\1\103\1\157\1\uffff\1\103\1\60\1\uffff\1\145"+
-        "\4\uffff\1\163\1\60\2\157\1\156\1\157\1\156\1\157\1\uffff\1\156"+
-        "\1\145\1\uffff\2\156\1\164\1\156\1\164\1\156\1\164\1\155\2\156\1"+
-        "\145\1\156\1\145\1\156\1\60\1\142\2\145\1\170\1\145\1\170\1\145"+
-        "\1\uffff\1\154\2\143\1\164\1\143\1\164\1\143\1\171\2\164\1\60\1"+
-        "\164\1\60\1\164\1\60\2\157\1\uffff\1\157\1\uffff\1\157\1\uffff\4"+
-        "\162\1\60\2\163\1\60\1\uffff\2\60\3\uffff";
-    static final String DFA12_maxS =
-        "\1\uffff\1\157\1\156\1\165\1\141\1\117\1\157\1\117\1\145\2\uffff"+
-        "\1\156\1\uffff\1\141\1\157\3\uffff\1\162\2\uffff\1\145\1\162\1\171"+
-        "\2\163\1\156\1\165\1\172\2\uffff\2\uffff\1\57\2\uffff\1\151\1\uffff"+
-        "\1\124\1\164\1\122\1\142\1\117\1\124\1\163\1\125\1\101\1\155\1\116"+
-        "\1\161\2\uffff\1\160\1\164\1\uffff\1\164\1\155\3\uffff\1\162\1\157"+
-        "\2\uffff\1\161\1\157\1\160\2\163\1\143\1\164\5\uffff\1\144\1\172"+
-        "\2\145\1\111\1\123\1\114\1\105\1\151\1\102\1\122\1\154\1\160\1\107"+
-        "\1\157\1\165\1\157\2\145\1\141\1\160\1\145\1\166\1\141\1\165\1\172"+
-        "\1\155\1\166\3\145\1\141\1\145\1\172\1\uffff\2\162\1\116\1\171\2"+
-        "\172\1\143\1\114\1\172\1\145\1\157\1\172\1\163\1\151\3\162\1\164"+
-        "\1\157\1\156\1\151\1\164\1\151\1\uffff\2\151\1\172\2\155\1\160\1"+
-        "\162\1\uffff\1\146\1\104\1\107\1\163\2\uffff\1\103\1\105\1\uffff"+
-        "\1\143\1\163\1\uffff\1\151\1\162\1\164\1\146\1\124\2\171\1\156\1"+
-        "\164\1\144\1\151\1\162\1\164\1\144\1\uffff\2\142\1\163\1\122\1\141"+
-        "\1\145\1\172\1\164\1\157\1\172\1\164\1\151\1\164\1\145\1\172\1\141"+
-        "\1\171\1\145\1\162\1\145\2\160\1\145\1\124\1\151\1\157\2\151\1\145"+
-        "\2\154\1\165\1\162\1\145\2\143\1\uffff\1\145\1\155\1\uffff\1\151"+
-        "\1\164\1\144\1\157\1\144\1\172\1\uffff\1\143\1\160\1\143\1\157\1"+
-        "\161\2\145\2\156\1\171\1\144\2\156\1\144\1\156\1\166\1\144\2\171"+
-        "\1\154\1\157\1\161\1\145\1\154\1\155\1\160\1\157\1\145\1\123\1\162"+
-        "\1\122\1\uffff\2\145\1\154\1\166\1\165\1\163\1\172\2\164\1\160\1"+
-        "\122\1\147\1\163\1\122\1\147\1\145\1\122\1\172\1\103\1\141\1\166"+
-        "\1\165\1\172\1\141\1\172\1\157\1\156\1\104\1\164\1\171\1\157\1\145"+
-        "\1\163\1\172\1\141\2\151\1\172\1\uffff\1\163\2\145\1\157\1\145\1"+
-        "\101\1\150\1\157\1\145\1\101\1\104\1\157\1\145\1\157\1\uffff\1\157"+
-        "\1\164\2\151\1\uffff\1\162\1\uffff\1\156\1\104\1\141\1\157\1\162"+
-        "\1\172\2\154\1\172\1\uffff\1\162\1\144\1\162\1\uffff\1\172\1\162"+
-        "\1\163\2\154\1\163\1\151\2\154\1\163\1\141\2\154\2\156\1\145\1\144"+
-        "\1\162\1\141\1\145\1\141\1\164\1\155\1\165\1\157\1\uffff\2\145\1"+
-        "\uffff\1\141\2\145\1\uffff\1\146\1\172\2\145\1\163\1\160\2\145\1"+
-        "\163\1\164\2\145\2\164\1\144\2\145\1\164\1\156\1\164\1\141\1\160"+
-        "\1\143\1\155\1\172\1\147\1\164\2\144\1\141\1\uffff\1\172\1\147\1"+
-        "\145\2\172\1\147\1\145\1\141\1\172\1\147\4\145\1\103\2\144\1\151"+
-        "\1\164\1\141\1\124\1\157\1\164\1\160\1\uffff\1\141\1\151\2\122\1"+
-        "\143\1\172\1\uffff\1\141\1\155\1\uffff\1\172\1\uffff\1\141\1\155"+
-        "\1\124\1\uffff\1\141\1\170\1\143\1\170\1\143\1\157\2\122\1\157\1"+
-        "\172\1\124\1\171\1\156\1\165\1\157\1\164\3\157\1\145\1\uffff\1\164"+
-        "\1\142\1\uffff\1\164\1\142\1\171\5\164\1\155\2\157\1\156\1\uffff"+
-        "\1\171\1\160\1\145\1\162\1\156\1\151\1\156\2\154\1\163\1\151\1\154"+
-        "\1\151\1\154\1\160\1\151\1\172\1\157\1\172\1\157\1\160\2\154\1\172"+
-        "\1\160\1\145\1\156\2\145\1\157\1\163\2\145\1\172\1\157\1\171\1\157"+
-        "\1\171\1\145\1\157\1\172\1\uffff\1\162\1\uffff\1\162\1\157\2\145"+
-        "\1\uffff\1\145\1\172\1\164\1\101\2\156\3\172\1\uffff\1\156\1\103"+
-        "\1\156\1\103\1\172\1\156\1\uffff\1\163\1\172\1\156\3\172\1\uffff"+
-        "\1\172\1\163\1\164\1\103\3\uffff\1\103\1\157\1\103\1\157\1\uffff"+
-        "\1\103\1\172\1\uffff\1\145\4\uffff\1\163\1\172\2\157\1\156\1\157"+
-        "\1\156\1\157\1\uffff\1\156\1\145\1\uffff\2\156\1\164\1\156\1\164"+
-        "\1\156\1\164\1\155\2\156\1\145\1\156\1\145\1\156\1\172\1\142\2\145"+
-        "\1\170\1\145\1\170\1\145\1\uffff\1\154\2\143\1\164\1\143\1\164\1"+
-        "\143\1\171\2\164\1\172\1\164\1\172\1\164\1\172\2\157\1\uffff\1\157"+
-        "\1\uffff\1\157\1\uffff\4\162\1\172\2\163\1\172\1\uffff\2\172\3\uffff";
-    static final String DFA12_acceptS =
-        "\11\uffff\1\12\1\13\1\uffff\1\15\2\uffff\1\20\1\23\1\24\1\uffff"+
-        "\1\27\1\30\10\uffff\1\100\1\101\3\uffff\1\105\1\106\1\uffff\1\100"+
-        "\14\uffff\1\12\1\13\2\uffff\1\15\2\uffff\1\20\1\23\1\24\2\uffff"+
-        "\1\27\1\30\7\uffff\1\101\1\102\1\103\1\104\1\105\42\uffff\1\2\27"+
-        "\uffff\1\44\7\uffff\1\1\4\uffff\1\4\1\7\2\uffff\1\6\2\uffff\1\10"+
-        "\16\uffff\1\43\44\uffff\1\3\2\uffff\1\5\6\uffff\1\22\37\uffff\1"+
-        "\14\46\uffff\1\46\16\uffff\1\53\4\uffff\1\25\1\uffff\1\54\11\uffff"+
-        "\1\36\3\uffff\1\16\31\uffff\1\11\2\uffff\1\21\3\uffff\1\17\36\uffff"+
-        "\1\40\30\uffff\1\50\6\uffff\1\66\2\uffff\1\32\1\uffff\1\65\3\uffff"+
-        "\1\47\24\uffff\1\33\2\uffff\1\34\14\uffff\1\51\51\uffff\1\72\1\uffff"+
-        "\1\62\4\uffff\1\45\11\uffff\1\26\6\uffff\1\56\6\uffff\1\37\4\uffff"+
-        "\1\41\1\73\1\76\4\uffff\1\42\2\uffff\1\64\1\uffff\1\74\1\77\1\35"+
-        "\1\52\10\uffff\1\57\2\uffff\1\31\26\uffff\1\63\21\uffff\1\67\1\uffff"+
-        "\1\70\1\uffff\1\55\10\uffff\1\75\2\uffff\1\71\1\60\1\61";
-    static final String DFA12_specialS =
-        "\1\1\36\uffff\1\0\1\2\u0255\uffff}>";
-    static final String[] DFA12_transitionS = {
-            "\11\43\2\42\2\43\1\42\22\43\1\42\1\43\1\37\4\43\1\40\1\23\1"+
-            "\24\1\21\1\43\1\14\1\43\1\20\1\41\12\36\1\43\1\17\5\43\1\31"+
-            "\1\4\1\6\1\5\4\35\1\2\2\35\1\7\3\35\1\26\1\35\1\10\1\3\7\35"+
-            "\3\43\1\34\1\35\1\43\1\30\1\35\1\16\1\15\1\32\3\35\1\13\5\35"+
-            "\1\33\1\22\1\35\1\25\1\35\1\27\1\35\1\1\4\35\1\11\1\43\1\12"+
-            "\uff82\43",
-            "\1\44",
-            "\1\46\37\uffff\1\47",
-            "\1\50\40\uffff\1\51",
-            "\1\52\11\uffff\1\53\7\uffff\1\54",
-            "\1\55",
-            "\1\56\46\uffff\1\57",
-            "\1\60",
-            "\1\61",
-            "",
-            "",
-            "\1\64\1\65",
-            "",
-            "\1\67",
-            "\1\70",
-            "",
-            "",
-            "",
-            "\1\74\20\uffff\1\75",
-            "",
-            "",
-            "\1\100",
-            "\1\101",
-            "\1\102",
-            "\1\103",
-            "\1\104",
-            "\1\105",
-            "\1\106",
-            "\32\45\4\uffff\1\45\1\uffff\32\45",
-            "",
-            "",
-            "\0\110",
-            "\0\110",
-            "\1\111\4\uffff\1\112",
-            "",
-            "",
-            "\1\114",
-            "",
-            "\1\115",
-            "\1\117\5\uffff\1\116",
-            "\1\120",
-            "\1\121",
-            "\1\122",
-            "\1\123",
-            "\1\124",
-            "\1\125",
-            "\1\126",
-            "\1\127\1\130",
-            "\1\131",
-            "\1\132\1\133",
-            "",
-            "",
-            "\1\134",
-            "\1\136\5\uffff\1\135",
-            "",
-            "\1\137",
-            "\1\140",
-            "",
-            "",
-            "",
-            "\1\141",
-            "\1\142",
-            "",
-            "",
-            "\1\145\5\uffff\1\143\4\uffff\1\144",
-            "\1\146\5\uffff\1\147",
-            "\1\150",
-            "\1\151",
-            "\1\152",
-            "\1\153",
-            "\1\154",
-            "",
-            "",
-            "",
-            "",
-            "",
-            "\1\155",
-            "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45",
-            "\1\157",
-            "\1\160",
-            "\1\161",
-            "\1\162",
-            "\1\163",
-            "\1\164",
-            "\1\165",
-            "\1\166",
-            "\1\167",
-            "\1\170",
-            "\1\171",
-            "\1\172",
-            "\1\173",
-            "\1\174",
-            "\1\175",
-            "\1\176",
-            "\1\177",
-            "\1\u0080",
-            "\1\u0081",
-            "\1\u0082",
-            "\1\u0083",
-            "\1\u0084",
-            "\1\u0085",
-            "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45",
-            "\1\u0087",
-            "\1\u0088",
-            "\1\u0089",
-            "\1\u008a",
-            "\1\u008b",
-            "\1\u008c",
-            "\1\u008d",
-            "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45",
-            "",
-            "\1\u008f",
-            "\1\u0090",
-            "\1\u0091",
-            "\1\u0092",
-            "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45",
-            "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45",
-            "\1\u0095",
-            "\1\u0096",
-            "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45",
-            "\1\u0098",
-            "\1\u0099",
-            "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45",
-            "\1\u009b",
-            "\1\u009c",
-            "\1\u009d",
-            "\1\u009e",
-            "\1\u009f",
-            "\1\u00a1\37\uffff\1\u00a0",
-            "\1\u00a2",
-            "\1\u00a3",
-            "\1\u00a4",
-            "\1\u00a5",
-            "\1\u00a6",
-            "",
-            "\1\u00a7",
-            "\1\u00a8",
-            "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45",
-            "\1\u00aa",
-            "\1\u00ab",
-            "\1\u00ac",
-            "\1\u00ad",
-            "",
-            "\1\u00ae",
-            "\1\u00af",
-            "\1\u00b0",
-            "\1\u00b1",
-            "",
-            "",
-            "\1\u00b2",
-            "\1\u00b3",
-            "",
-            "\1\u00b4",
-            "\1\u00b5",
-            "",
-            "\1\u00b6",
-            "\1\u00b7",
-            "\1\u00b8",
-            "\1\u00b9",
-            "\1\u00bb\13\uffff\1\u00bc\1\uffff\1\u00bd\1\uffff\1\u00ba",
-            "\1\u00be",
-            "\1\u00bf",
-            "\1\u00c0",
-            "\1\u00c1",
-            "\1\u00c2",
-            "\1\u00c3",
-            "\1\u00c4",
-            "\1\u00c5",
-            "\1\u00c6",
-            "",
-            "\1\u00c7",
-            "\1\u00c8",
-            "\1\u00c9",
-            "\1\u00ca\1\uffff\1\u00cb",
-            "\1\u00cc",
-            "\1\u00cd",
-            "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45",
-            "\1\u00cf",
-            "\1\u00d0",
-            "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45",
-            "\1\u00d2",
-            "\1\u00d4\3\uffff\1\u00d3",
-            "\1\u00d5",
-            "\1\u00d6",
-            "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\22\45\1\u00d7\7"+
-            "\45",
-            "\1\u00d9",
-            "\1\u00da",
-            "\1\u00db",
-            "\1\u00dc",
-            "\1\u00dd",
-            "\1\u00de",
-            "\1\u00df",
-            "\1\u00e0",
-            "\1\u00e1\12\uffff\1\u00e2",
-            "\1\u00e3\3\uffff\1\u00e4",
-            "\1\u00e5",
-            "\1\u00e6\3\uffff\1\u00e7",
-            "\1\u00e8",
-            "\1\u00e9",
-            "\1\u00ea",
-            "\1\u00eb",
-            "\1\u00ec",
-            "\1\u00ed",
-            "\1\u00ee",
-            "\1\u00ef",
-            "\1\u00f0",
-            "",
-            "\1\u00f1",
-            "\1\u00f2",
-            "",
-            "\1\u00f3",
-            "\1\u00f4",
-            "\1\u00f5",
-            "\1\u00f6",
-            "\1\u00f7",
-            "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45",
-            "",
-            "\1\u00f9",
-            "\1\u00fa",
-            "\1\u00fb",
-            "\1\u00fc",
-            "\1\u00fd",
-            "\1\u00fe",
-            "\1\u00ff",
-            "\1\u0100",
-            "\1\u0101",
-            "\1\u0102",
-            "\1\u0103",
-            "\1\u0104",
-            "\1\u0105",
-            "\1\u0106",
-            "\1\u0107",
-            "\1\u0108",
-            "\1\u0109",
-            "\1\u010a",
-            "\1\u010b",
-            "\1\u010c",
-            "\1\u010d",
-            "\1\u010e",
-            "\1\u010f",
-            "\1\u0110",
-            "\1\u0111",
-            "\1\u0112",
-            "\1\u0113",
-            "\1\u0114",
-            "\1\u0115",
-            "\1\u0116",
-            "\1\u0118\15\uffff\1\u0117",
-            "",
-            "\1\u0119",
-            "\1\u011a",
-            "\1\u011b",
-            "\1\u011c",
-            "\1\u011d",
-            "\1\u011e",
-            "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45",
-            "\1\u0120",
-            "\1\u0121",
-            "\1\u0122",
-            "\1\u0124\15\uffff\1\u0123",
-            "\1\u0125",
-            "\1\u0126",
-            "\1\u0128\15\uffff\1\u0127",
-            "\1\u0129",
-            "\1\u012a",
-            "\1\u012c\15\uffff\1\u012b",
-            "\12\45\7\uffff\2\45\1\u012d\27\45\4\uffff\1\45\1\uffff\32"+
-            "\45",
-            "\1\u012f",
-            "\1\u0130",
-            "\1\u0131",
-            "\1\u0132",
-            "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45",
-            "\1\u0134",
-            "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45",
-            "\1\u0136",
-            "\1\u0137",
-            "\1\u0139\1\u0138",
-            "\1\u013a",
-            "\1\u013b",
-            "\1\u013c",
-            "\1\u013d",
-            "\1\u013e",
-            "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45",
-            "\1\u0140",
-            "\1\u0141",
-            "\1\u0142",
-            "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45",
-            "",
-            "\1\u0144",
-            "\1\u0145",
-            "\1\u0146",
-            "\1\u0147",
-            "\1\u0148",
-            "\1\u0149",
-            "\1\u014a",
-            "\1\u014b",
-            "\1\u014c",
-            "\1\u014d",
-            "\1\u014e",
-            "\1\u014f",
-            "\1\u0150",
-            "\1\u0151",
-            "",
-            "\1\u0152",
-            "\1\u0153",
-            "\1\u0154",
-            "\1\u0155",
-            "",
-            "\1\u0156",
-            "",
-            "\1\u0157",
-            "\1\u0158",
-            "\1\u0159",
-            "\1\u015a",
-            "\1\u015b",
-            "\12\45\7\uffff\2\45\1\u015c\27\45\4\uffff\1\45\1\uffff\32"+
-            "\45",
-            "\1\u015e",
-            "\1\u015f",
-            "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45",
-            "",
-            "\1\u0161",
-            "\1\u0162",
-            "\1\u0163",
-            "",
-            "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45",
-            "\1\u0165",
-            "\1\u0166",
-            "\1\u0167",
-            "\1\u0168",
-            "\1\u0169",
-            "\1\u016a",
-            "\1\u016b",
-            "\1\u016c",
-            "\1\u016d",
-            "\1\u016e",
-            "\1\u016f",
-            "\1\u0170",
-            "\1\u0171",
-            "\1\u0172",
-            "\1\u0173",
-            "\1\u0174",
-            "\1\u0175",
-            "\1\u0176",
-            "\1\u0177",
-            "\1\u0178",
-            "\1\u0179",
-            "\1\u017a",
-            "\1\u017b",
-            "\1\u017c",
-            "",
-            "\1\u017d",
-            "\1\u017e",
-            "",
-            "\1\u017f",
-            "\1\u0180",
-            "\1\u0181",
-            "",
-            "\1\u0182",
-            "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45",
-            "\1\u0184",
-            "\1\u0185",
-            "\1\u0186",
-            "\1\u0187",
-            "\1\u0188",
-            "\1\u0189",
-            "\1\u018a",
-            "\1\u018b",
-            "\1\u018c",
-            "\1\u018d",
-            "\1\u018f\5\uffff\1\u018e",
-            "\1\u0191\5\uffff\1\u0190",
-            "\1\u0192",
-            "\1\u0193",
-            "\1\u0194",
-            "\1\u0195",
-            "\1\u0196",
-            "\1\u0197",
-            "\1\u0198",
-            "\1\u0199",
-            "\1\u019a",
-            "\1\u019b",
-            "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45",
-            "\1\u019d",
-            "\1\u019e",
-            "\1\u019f",
-            "\1\u01a0",
-            "\1\u01a1",
-            "",
-            "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\22\45\1\u01a2\7"+
-            "\45",
-            "\1\u01a4",
-            "\1\u01a5",
-            "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45",
-            "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\22\45\1\u01a7\7"+
-            "\45",
-            "\1\u01a9",
-            "\1\u01aa",
-            "\1\u01ab",
-            "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45",
-            "\1\u01ad",
-            "\1\u01ae",
-            "\1\u01af",
-            "\1\u01b0",
-            "\1\u01b1",
-            "\1\u01b2",
-            "\1\u01b3",
-            "\1\u01b4",
-            "\1\u01b5",
-            "\1\u01b6",
-            "\1\u01b7",
-            "\1\u01b8",
-            "\1\u01b9",
-            "\1\u01ba",
-            "\1\u01bb",
-            "",
-            "\1\u01bc",
-            "\1\u01bd",
-            "\1\u01be",
-            "\1\u01bf",
-            "\1\u01c0",
-            "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45",
-            "",
-            "\1\u01c2",
-            "\1\u01c3",
-            "",
-            "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45",
-            "",
-            "\1\u01c5",
-            "\1\u01c6",
-            "\1\u01c7",
-            "",
-            "\1\u01c8",
-            "\1\u01c9",
-            "\1\u01ca",
-            "\1\u01cb",
-            "\1\u01cc",
-            "\1\u01cd",
-            "\1\u01ce",
-            "\1\u01cf",
-            "\1\u01d0",
-            "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45",
-            "\1\u01d2",
-            "\1\u01d3",
-            "\1\u01d4",
-            "\1\u01d5",
-            "\1\u01d6",
-            "\1\u01d7",
-            "\1\u01d8",
-            "\1\u01d9",
-            "\1\u01da",
-            "\1\u01db",
-            "",
-            "\1\u01dc",
-            "\1\u01dd",
-            "",
-            "\1\u01de",
-            "\1\u01df",
-            "\1\u01e0",
-            "\1\u01e1",
-            "\1\u01e2",
-            "\1\u01e3",
-            "\1\u01e4",
-            "\1\u01e5",
-            "\1\u01e6",
-            "\1\u01e7",
-            "\1\u01e8",
-            "\1\u01e9",
-            "",
-            "\1\u01ea",
-            "\1\u01eb",
-            "\1\u01ec",
-            "\1\u01ed",
-            "\1\u01ee",
-            "\1\u01ef",
-            "\1\u01f0",
-            "\1\u01f1",
-            "\1\u01f2",
-            "\1\u01f3",
-            "\1\u01f4",
-            "\1\u01f5",
-            "\1\u01f6",
-            "\1\u01f7",
-            "\1\u01f8",
-            "\1\u01f9",
-            "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\22\45\1\u01fa\7"+
-            "\45",
-            "\1\u01fc",
-            "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45",
-            "\1\u01fe",
-            "\1\u01ff",
-            "\1\u0200",
-            "\1\u0201",
-            "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45",
-            "\1\u0203",
-            "\1\u0204",
-            "\1\u0205",
-            "\1\u0206",
-            "\1\u0207",
-            "\1\u0208",
-            "\1\u0209",
-            "\1\u020a",
-            "\1\u020b",
-            "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45",
-            "\1\u020d",
-            "\1\u020e",
-            "\1\u020f",
-            "\1\u0210",
-            "\1\u0211",
-            "\1\u0212",
-            "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45",
-            "",
-            "\1\u0214",
-            "",
-            "\1\u0215",
-            "\1\u0216",
-            "\1\u0217",
-            "\1\u0218",
-            "",
-            "\1\u0219",
-            "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45",
-            "\1\u021b",
-            "\1\u021c",
-            "\1\u021d",
-            "\1\u021e",
-            "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45",
-            "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45",
-            "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45",
-            "",
-            "\1\u0222",
-            "\1\u0223",
-            "\1\u0224",
-            "\1\u0225",
-            "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45",
-            "\1\u0227",
-            "",
-            "\1\u0228",
-            "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45",
-            "\1\u022a",
-            "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45",
-            "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45",
-            "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45",
-            "",
-            "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45",
-            "\1\u022f",
-            "\1\u0230",
-            "\1\u0231",
-            "",
-            "",
-            "",
-            "\1\u0232",
-            "\1\u0233",
-            "\1\u0234",
-            "\1\u0235",
-            "",
-            "\1\u0236",
-            "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45",
-            "",
-            "\1\u0238",
-            "",
-            "",
-            "",
-            "",
-            "\1\u0239",
-            "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45",
-            "\1\u023b",
-            "\1\u023c",
-            "\1\u023d",
-            "\1\u023e",
-            "\1\u023f",
-            "\1\u0240",
-            "",
-            "\1\u0241",
-            "\1\u0242",
-            "",
-            "\1\u0243",
-            "\1\u0244",
-            "\1\u0245",
-            "\1\u0246",
-            "\1\u0247",
-            "\1\u0248",
-            "\1\u0249",
-            "\1\u024a",
-            "\1\u024b",
-            "\1\u024c",
-            "\1\u024d",
-            "\1\u024e",
-            "\1\u024f",
-            "\1\u0250",
-            "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45",
-            "\1\u0252",
-            "\1\u0253",
-            "\1\u0254",
-            "\1\u0255",
-            "\1\u0256",
-            "\1\u0257",
-            "\1\u0258",
-            "",
-            "\1\u0259",
-            "\1\u025a",
-            "\1\u025b",
-            "\1\u025c",
-            "\1\u025d",
-            "\1\u025e",
-            "\1\u025f",
-            "\1\u0260",
-            "\1\u0261",
-            "\1\u0262",
-            "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45",
-            "\1\u0264",
-            "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45",
-            "\1\u0266",
-            "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45",
-            "\1\u0268",
-            "\1\u0269",
-            "",
-            "\1\u026a",
-            "",
-            "\1\u026b",
-            "",
-            "\1\u026c",
-            "\1\u026d",
-            "\1\u026e",
-            "\1\u026f",
-            "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45",
-            "\1\u0271",
-            "\1\u0272",
-            "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45",
-            "",
-            "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45",
-            "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45",
-            "",
-            "",
-            ""
-    };
-
-    static final short[] DFA12_eot = DFA.unpackEncodedString(DFA12_eotS);
-    static final short[] DFA12_eof = DFA.unpackEncodedString(DFA12_eofS);
-    static final char[] DFA12_min = DFA.unpackEncodedStringToUnsignedChars(DFA12_minS);
-    static final char[] DFA12_max = DFA.unpackEncodedStringToUnsignedChars(DFA12_maxS);
-    static final short[] DFA12_accept = DFA.unpackEncodedString(DFA12_acceptS);
-    static final short[] DFA12_special = DFA.unpackEncodedString(DFA12_specialS);
-    static final short[][] DFA12_transition;
-
-    static {
-        int numStates = DFA12_transitionS.length;
-        DFA12_transition = new short[numStates][];
-        for (int i=0; i<numStates; i++) {
-            DFA12_transition[i] = DFA.unpackEncodedString(DFA12_transitionS[i]);
-        }
-    }
-
-    static class DFA12 extends DFA {
-
-        public DFA12(BaseRecognizer recognizer) {
-            this.recognizer = recognizer;
-            this.decisionNumber = 12;
-            this.eot = DFA12_eot;
-            this.eof = DFA12_eof;
-            this.min = DFA12_min;
-            this.max = DFA12_max;
-            this.accept = DFA12_accept;
-            this.special = DFA12_special;
-            this.transition = DFA12_transition;
-        }
-        public String getDescription() {
-            return "1:1: Tokens : ( T__11 | T__12 | T__13 | T__14 | T__15 | T__16 | T__17 | T__18 | T__19 | T__20 | T__21 | T__22 | T__23 | T__24 | T__25 | T__26 | T__27 | T__28 | T__29 | T__30 | T__31 | T__32 | T__33 | T__34 | T__35 | T__36 | T__37 | T__38 | T__39 | T__40 | T__41 | T__42 | T__43 | T__44 | T__45 | T__46 | T__47 | T__48 | T__49 | T__50 | T__51 | T__52 | T__53 | T__54 | T__55 | T__56 | T__57 | T__58 | T__59 | T__60 | T__61 | T__62 | T__63 | T__64 | T__65 | T__66 | T__67 | T__68 | T__69 | T__70 | T__71 | T__72 | T__73 | RULE_ID | RULE_INT | RULE_STRING | RULE_ML_COMMENT | RULE_SL_COMMENT | RULE_WS | RULE_ANY_OTHER );";
-        }
-        public int specialStateTransition(int s, IntStream _input) throws NoViableAltException {
-            IntStream input = _input;
-        	int _s = s;
-            switch ( s ) {
-                    case 0 : 
-                        int LA12_31 = input.LA(1);
-
-                        s = -1;
-                        if ( ((LA12_31>='\u0000' && LA12_31<='\uFFFF')) ) {s = 72;}
-
-                        else s = 35;
-
-                        if ( s>=0 ) return s;
-                        break;
-                    case 1 : 
-                        int LA12_0 = input.LA(1);
-
-                        s = -1;
-                        if ( (LA12_0=='v') ) {s = 1;}
-
-                        else if ( (LA12_0=='I') ) {s = 2;}
-
-                        else if ( (LA12_0=='S') ) {s = 3;}
-
-                        else if ( (LA12_0=='B') ) {s = 4;}
-
-                        else if ( (LA12_0=='D') ) {s = 5;}
-
-                        else if ( (LA12_0=='C') ) {s = 6;}
-
-                        else if ( (LA12_0=='L') ) {s = 7;}
-
-                        else if ( (LA12_0=='R') ) {s = 8;}
-
-                        else if ( (LA12_0=='{') ) {s = 9;}
-
-                        else if ( (LA12_0=='}') ) {s = 10;}
-
-                        else if ( (LA12_0=='i') ) {s = 11;}
-
-                        else if ( (LA12_0==',') ) {s = 12;}
-
-                        else if ( (LA12_0=='d') ) {s = 13;}
-
-                        else if ( (LA12_0=='c') ) {s = 14;}
-
-                        else if ( (LA12_0==';') ) {s = 15;}
-
-                        else if ( (LA12_0=='.') ) {s = 16;}
-
-                        else if ( (LA12_0=='*') ) {s = 17;}
-
-                        else if ( (LA12_0=='p') ) {s = 18;}
-
-                        else if ( (LA12_0=='(') ) {s = 19;}
-
-                        else if ( (LA12_0==')') ) {s = 20;}
-
-                        else if ( (LA12_0=='r') ) {s = 21;}
-
-                        else if ( (LA12_0=='P') ) {s = 22;}
-
-                        else if ( (LA12_0=='t') ) {s = 23;}
-
-                        else if ( (LA12_0=='a') ) {s = 24;}
-
-                        else if ( (LA12_0=='A') ) {s = 25;}
-
-                        else if ( (LA12_0=='e') ) {s = 26;}
-
-                        else if ( (LA12_0=='o') ) {s = 27;}
-
-                        else if ( (LA12_0=='^') ) {s = 28;}
-
-                        else if ( ((LA12_0>='E' && LA12_0<='H')||(LA12_0>='J' && LA12_0<='K')||(LA12_0>='M' && LA12_0<='O')||LA12_0=='Q'||(LA12_0>='T' && LA12_0<='Z')||LA12_0=='_'||LA12_0=='b'||(LA12_0>='f' && LA12_0<='h')||(LA12_0>='j' && LA12_0<='n')||LA12_0=='q'||LA12_0=='s'||LA12_0=='u'||(LA12_0>='w' && LA12_0<='z')) ) {s = 29;}
-
-                        else if ( ((LA12_0>='0' && LA12_0<='9')) ) {s = 30;}
-
-                        else if ( (LA12_0=='\"') ) {s = 31;}
-
-                        else if ( (LA12_0=='\'') ) {s = 32;}
-
-                        else if ( (LA12_0=='/') ) {s = 33;}
-
-                        else if ( ((LA12_0>='\t' && LA12_0<='\n')||LA12_0=='\r'||LA12_0==' ') ) {s = 34;}
-
-                        else if ( ((LA12_0>='\u0000' && LA12_0<='\b')||(LA12_0>='\u000B' && LA12_0<='\f')||(LA12_0>='\u000E' && LA12_0<='\u001F')||LA12_0=='!'||(LA12_0>='#' && LA12_0<='&')||LA12_0=='+'||LA12_0=='-'||LA12_0==':'||(LA12_0>='<' && LA12_0<='@')||(LA12_0>='[' && LA12_0<=']')||LA12_0=='`'||LA12_0=='|'||(LA12_0>='~' && LA12_0<='\uFFFF')) ) {s = 35;}
-
-                        if ( s>=0 ) return s;
-                        break;
-                    case 2 : 
-                        int LA12_32 = input.LA(1);
-
-                        s = -1;
-                        if ( ((LA12_32>='\u0000' && LA12_32<='\uFFFF')) ) {s = 72;}
-
-                        else s = 35;
-
-                        if ( s>=0 ) return s;
-                        break;
-            }
-            NoViableAltException nvae =
-                new NoViableAltException(getDescription(), 12, _s, input);
-            error(nvae);
-            throw nvae;
-        }
-    }
- 
-
-}
\ No newline at end of file
diff --git a/org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTestParser.java b/org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTestParser.java
deleted file mode 100644
index a7ec7754..00000000
--- a/org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTestParser.java
+++ /dev/null
@@ -1,31810 +0,0 @@
-package org.xtext.example.mydsl.ui.contentassist.antlr.internal; 
-
-import java.io.InputStream;
-import org.eclipse.xtext.*;
-import org.eclipse.xtext.parser.*;
-import org.eclipse.xtext.parser.impl.*;
-import org.eclipse.emf.ecore.util.EcoreUtil;
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.xtext.parser.antlr.XtextTokenStream;
-import org.eclipse.xtext.parser.antlr.XtextTokenStream.HiddenTokens;
-import org.eclipse.xtext.ui.editor.contentassist.antlr.internal.AbstractInternalContentAssistParser;
-import org.eclipse.xtext.ui.editor.contentassist.antlr.internal.DFA;
-import org.xtext.example.mydsl.services.MyDslTestGrammarAccess;
-
-
-
-import org.antlr.runtime.*;
-import java.util.Stack;
-import java.util.List;
-import java.util.ArrayList;
-
-@SuppressWarnings("all")
-public class InternalMyDslTestParser extends AbstractInternalContentAssistParser {
-    public static final String[] tokenNames = new String[] {
-        "<invalid>", "<EOR>", "<DOWN>", "<UP>", "RULE_STRING", "RULE_ID", "RULE_INT", "RULE_ML_COMMENT", "RULE_SL_COMMENT", "RULE_WS", "RULE_ANY_OTHER", "'void'", "'INT'", "'STRING'", "'BOOL'", "'DOUBLE'", "'CHAR'", "'BYTE'", "'LONG'", "'Repository'", "'{'", "'}'", "'imports'", "','", "'datatypes'", "'components'", "';'", "'interfaces'", "'import'", "'.'", "'*'", "'Interface'", "'parentInterfaces'", "'('", "')'", "'RepositoryComponent'", "'relationship'", "'providedRoles'", "'requiredRoles'", "'CollectionDataType'", "'innerType'", "'CompositeDataType'", "'parentTypes'", "'innerDeclarations'", "'PrimitiveDataType'", "'type'", "'ref'", "'InnerDeclaration'", "'dataType'", "'ProvidedRole'", "'RequiredRole'", "'BasicComponent'", "'CompositeComponent'", "'assembly'", "'SubSystem'", "'ComposedStructureAssembly'", "'assemblyContexts'", "'assemblyConnectors'", "'providedDelegationConnectors'", "'requiredDelegationConnectors'", "'AssemblyContext'", "'encapsulatedComponent'", "'AssemblyConnector'", "'requiredRole'", "'providedRole'", "'providingAssemblyContext'", "'requiringAssemblyContext'", "'ProvidedDelegationConnector'", "'assemblyContext'", "'innerProvidedRole'", "'outerProvidedRole'", "'RequiredDelegationConnector'", "'innerRequiredRole'", "'outerRequiredRole'"
-    };
-    public static final int T__68=68;
-    public static final int T__69=69;
-    public static final int RULE_ID=5;
-    public static final int T__66=66;
-    public static final int T__67=67;
-    public static final int T__64=64;
-    public static final int T__29=29;
-    public static final int T__65=65;
-    public static final int T__28=28;
-    public static final int T__62=62;
-    public static final int T__27=27;
-    public static final int T__63=63;
-    public static final int T__26=26;
-    public static final int T__25=25;
-    public static final int T__24=24;
-    public static final int T__23=23;
-    public static final int T__22=22;
-    public static final int RULE_ANY_OTHER=10;
-    public static final int T__21=21;
-    public static final int T__20=20;
-    public static final int T__61=61;
-    public static final int T__60=60;
-    public static final int EOF=-1;
-    public static final int T__55=55;
-    public static final int T__56=56;
-    public static final int T__19=19;
-    public static final int T__57=57;
-    public static final int T__58=58;
-    public static final int T__51=51;
-    public static final int T__16=16;
-    public static final int T__52=52;
-    public static final int T__15=15;
-    public static final int T__53=53;
-    public static final int T__18=18;
-    public static final int T__54=54;
-    public static final int T__17=17;
-    public static final int T__12=12;
-    public static final int T__11=11;
-    public static final int T__14=14;
-    public static final int T__13=13;
-    public static final int T__59=59;
-    public static final int RULE_INT=6;
-    public static final int T__50=50;
-    public static final int T__42=42;
-    public static final int T__43=43;
-    public static final int T__40=40;
-    public static final int T__41=41;
-    public static final int T__46=46;
-    public static final int T__47=47;
-    public static final int T__44=44;
-    public static final int T__45=45;
-    public static final int T__48=48;
-    public static final int T__49=49;
-    public static final int RULE_SL_COMMENT=8;
-    public static final int RULE_ML_COMMENT=7;
-    public static final int T__30=30;
-    public static final int T__31=31;
-    public static final int RULE_STRING=4;
-    public static final int T__32=32;
-    public static final int T__71=71;
-    public static final int T__33=33;
-    public static final int T__72=72;
-    public static final int T__34=34;
-    public static final int T__35=35;
-    public static final int T__70=70;
-    public static final int T__36=36;
-    public static final int T__37=37;
-    public static final int T__38=38;
-    public static final int T__39=39;
-    public static final int RULE_WS=9;
-    public static final int T__73=73;
-
-    // delegates
-    // delegators
-
-
-        public InternalMyDslTestParser(TokenStream input) {
-            this(input, new RecognizerSharedState());
-        }
-        public InternalMyDslTestParser(TokenStream input, RecognizerSharedState state) {
-            super(input, state);
-             
-        }
-        
-
-    public String[] getTokenNames() { return InternalMyDslTestParser.tokenNames; }
-    public String getGrammarFileName() { return "../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g"; }
-
-
-     
-     	private MyDslTestGrammarAccess grammarAccess;
-     	
-        public void setGrammarAccess(MyDslTestGrammarAccess grammarAccess) {
-        	this.grammarAccess = grammarAccess;
-        }
-        
-        @Override
-        protected Grammar getGrammar() {
-        	return grammarAccess.getGrammar();
-        }
-        
-        @Override
-        protected String getValueForTokenName(String tokenName) {
-        	return tokenName;
-        }
-
-
-
-
-    // $ANTLR start "entryRuleRepository"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:60:1: entryRuleRepository : ruleRepository EOF ;
-    public final void entryRuleRepository() throws RecognitionException {
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:61:1: ( ruleRepository EOF )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:62:1: ruleRepository EOF
-            {
-             before(grammarAccess.getRepositoryRule()); 
-            pushFollow(FollowSets000.FOLLOW_ruleRepository_in_entryRuleRepository61);
-            ruleRepository();
-
-            state._fsp--;
-
-             after(grammarAccess.getRepositoryRule()); 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleRepository68); 
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-        }
-        return ;
-    }
-    // $ANTLR end "entryRuleRepository"
-
-
-    // $ANTLR start "ruleRepository"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:69:1: ruleRepository : ( ( rule__Repository__Group__0 ) ) ;
-    public final void ruleRepository() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:73:2: ( ( ( rule__Repository__Group__0 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:74:1: ( ( rule__Repository__Group__0 ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:74:1: ( ( rule__Repository__Group__0 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:75:1: ( rule__Repository__Group__0 )
-            {
-             before(grammarAccess.getRepositoryAccess().getGroup()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:76:1: ( rule__Repository__Group__0 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:76:2: rule__Repository__Group__0
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group__0_in_ruleRepository94);
-            rule__Repository__Group__0();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getRepositoryAccess().getGroup()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "ruleRepository"
-
-
-    // $ANTLR start "entryRuleImport"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:88:1: entryRuleImport : ruleImport EOF ;
-    public final void entryRuleImport() throws RecognitionException {
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:89:1: ( ruleImport EOF )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:90:1: ruleImport EOF
-            {
-             before(grammarAccess.getImportRule()); 
-            pushFollow(FollowSets000.FOLLOW_ruleImport_in_entryRuleImport121);
-            ruleImport();
-
-            state._fsp--;
-
-             after(grammarAccess.getImportRule()); 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleImport128); 
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-        }
-        return ;
-    }
-    // $ANTLR end "entryRuleImport"
-
-
-    // $ANTLR start "ruleImport"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:97:1: ruleImport : ( ( rule__Import__Group__0 ) ) ;
-    public final void ruleImport() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:101:2: ( ( ( rule__Import__Group__0 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:102:1: ( ( rule__Import__Group__0 ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:102:1: ( ( rule__Import__Group__0 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:103:1: ( rule__Import__Group__0 )
-            {
-             before(grammarAccess.getImportAccess().getGroup()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:104:1: ( rule__Import__Group__0 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:104:2: rule__Import__Group__0
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Import__Group__0_in_ruleImport154);
-            rule__Import__Group__0();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getImportAccess().getGroup()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "ruleImport"
-
-
-    // $ANTLR start "entryRuleQualifiedNameWithWildCard"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:116:1: entryRuleQualifiedNameWithWildCard : ruleQualifiedNameWithWildCard EOF ;
-    public final void entryRuleQualifiedNameWithWildCard() throws RecognitionException {
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:117:1: ( ruleQualifiedNameWithWildCard EOF )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:118:1: ruleQualifiedNameWithWildCard EOF
-            {
-             before(grammarAccess.getQualifiedNameWithWildCardRule()); 
-            pushFollow(FollowSets000.FOLLOW_ruleQualifiedNameWithWildCard_in_entryRuleQualifiedNameWithWildCard181);
-            ruleQualifiedNameWithWildCard();
-
-            state._fsp--;
-
-             after(grammarAccess.getQualifiedNameWithWildCardRule()); 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleQualifiedNameWithWildCard188); 
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-        }
-        return ;
-    }
-    // $ANTLR end "entryRuleQualifiedNameWithWildCard"
-
-
-    // $ANTLR start "ruleQualifiedNameWithWildCard"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:125:1: ruleQualifiedNameWithWildCard : ( ( rule__QualifiedNameWithWildCard__Group__0 ) ) ;
-    public final void ruleQualifiedNameWithWildCard() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:129:2: ( ( ( rule__QualifiedNameWithWildCard__Group__0 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:130:1: ( ( rule__QualifiedNameWithWildCard__Group__0 ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:130:1: ( ( rule__QualifiedNameWithWildCard__Group__0 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:131:1: ( rule__QualifiedNameWithWildCard__Group__0 )
-            {
-             before(grammarAccess.getQualifiedNameWithWildCardAccess().getGroup()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:132:1: ( rule__QualifiedNameWithWildCard__Group__0 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:132:2: rule__QualifiedNameWithWildCard__Group__0
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__QualifiedNameWithWildCard__Group__0_in_ruleQualifiedNameWithWildCard214);
-            rule__QualifiedNameWithWildCard__Group__0();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getQualifiedNameWithWildCardAccess().getGroup()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "ruleQualifiedNameWithWildCard"
-
-
-    // $ANTLR start "entryRuleQualifiedName"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:144:1: entryRuleQualifiedName : ruleQualifiedName EOF ;
-    public final void entryRuleQualifiedName() throws RecognitionException {
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:145:1: ( ruleQualifiedName EOF )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:146:1: ruleQualifiedName EOF
-            {
-             before(grammarAccess.getQualifiedNameRule()); 
-            pushFollow(FollowSets000.FOLLOW_ruleQualifiedName_in_entryRuleQualifiedName241);
-            ruleQualifiedName();
-
-            state._fsp--;
-
-             after(grammarAccess.getQualifiedNameRule()); 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleQualifiedName248); 
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-        }
-        return ;
-    }
-    // $ANTLR end "entryRuleQualifiedName"
-
-
-    // $ANTLR start "ruleQualifiedName"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:153:1: ruleQualifiedName : ( ( rule__QualifiedName__Group__0 ) ) ;
-    public final void ruleQualifiedName() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:157:2: ( ( ( rule__QualifiedName__Group__0 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:158:1: ( ( rule__QualifiedName__Group__0 ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:158:1: ( ( rule__QualifiedName__Group__0 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:159:1: ( rule__QualifiedName__Group__0 )
-            {
-             before(grammarAccess.getQualifiedNameAccess().getGroup()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:160:1: ( rule__QualifiedName__Group__0 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:160:2: rule__QualifiedName__Group__0
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__QualifiedName__Group__0_in_ruleQualifiedName274);
-            rule__QualifiedName__Group__0();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getQualifiedNameAccess().getGroup()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "ruleQualifiedName"
-
-
-    // $ANTLR start "entryRuleDataType"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:172:1: entryRuleDataType : ruleDataType EOF ;
-    public final void entryRuleDataType() throws RecognitionException {
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:173:1: ( ruleDataType EOF )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:174:1: ruleDataType EOF
-            {
-             before(grammarAccess.getDataTypeRule()); 
-            pushFollow(FollowSets000.FOLLOW_ruleDataType_in_entryRuleDataType301);
-            ruleDataType();
-
-            state._fsp--;
-
-             after(grammarAccess.getDataTypeRule()); 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleDataType308); 
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-        }
-        return ;
-    }
-    // $ANTLR end "entryRuleDataType"
-
-
-    // $ANTLR start "ruleDataType"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:181:1: ruleDataType : ( ( rule__DataType__Alternatives ) ) ;
-    public final void ruleDataType() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:185:2: ( ( ( rule__DataType__Alternatives ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:186:1: ( ( rule__DataType__Alternatives ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:186:1: ( ( rule__DataType__Alternatives ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:187:1: ( rule__DataType__Alternatives )
-            {
-             before(grammarAccess.getDataTypeAccess().getAlternatives()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:188:1: ( rule__DataType__Alternatives )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:188:2: rule__DataType__Alternatives
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__DataType__Alternatives_in_ruleDataType334);
-            rule__DataType__Alternatives();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getDataTypeAccess().getAlternatives()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "ruleDataType"
-
-
-    // $ANTLR start "entryRuleRepositoryComponent"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:200:1: entryRuleRepositoryComponent : ruleRepositoryComponent EOF ;
-    public final void entryRuleRepositoryComponent() throws RecognitionException {
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:201:1: ( ruleRepositoryComponent EOF )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:202:1: ruleRepositoryComponent EOF
-            {
-             before(grammarAccess.getRepositoryComponentRule()); 
-            pushFollow(FollowSets000.FOLLOW_ruleRepositoryComponent_in_entryRuleRepositoryComponent361);
-            ruleRepositoryComponent();
-
-            state._fsp--;
-
-             after(grammarAccess.getRepositoryComponentRule()); 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleRepositoryComponent368); 
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-        }
-        return ;
-    }
-    // $ANTLR end "entryRuleRepositoryComponent"
-
-
-    // $ANTLR start "ruleRepositoryComponent"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:209:1: ruleRepositoryComponent : ( ( rule__RepositoryComponent__Alternatives ) ) ;
-    public final void ruleRepositoryComponent() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:213:2: ( ( ( rule__RepositoryComponent__Alternatives ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:214:1: ( ( rule__RepositoryComponent__Alternatives ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:214:1: ( ( rule__RepositoryComponent__Alternatives ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:215:1: ( rule__RepositoryComponent__Alternatives )
-            {
-             before(grammarAccess.getRepositoryComponentAccess().getAlternatives()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:216:1: ( rule__RepositoryComponent__Alternatives )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:216:2: rule__RepositoryComponent__Alternatives
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent__Alternatives_in_ruleRepositoryComponent394);
-            rule__RepositoryComponent__Alternatives();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getRepositoryComponentAccess().getAlternatives()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "ruleRepositoryComponent"
-
-
-    // $ANTLR start "entryRuleEString"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:228:1: entryRuleEString : ruleEString EOF ;
-    public final void entryRuleEString() throws RecognitionException {
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:229:1: ( ruleEString EOF )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:230:1: ruleEString EOF
-            {
-             before(grammarAccess.getEStringRule()); 
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_entryRuleEString421);
-            ruleEString();
-
-            state._fsp--;
-
-             after(grammarAccess.getEStringRule()); 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleEString428); 
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-        }
-        return ;
-    }
-    // $ANTLR end "entryRuleEString"
-
-
-    // $ANTLR start "ruleEString"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:237:1: ruleEString : ( ( rule__EString__Alternatives ) ) ;
-    public final void ruleEString() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:241:2: ( ( ( rule__EString__Alternatives ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:242:1: ( ( rule__EString__Alternatives ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:242:1: ( ( rule__EString__Alternatives ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:243:1: ( rule__EString__Alternatives )
-            {
-             before(grammarAccess.getEStringAccess().getAlternatives()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:244:1: ( rule__EString__Alternatives )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:244:2: rule__EString__Alternatives
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__EString__Alternatives_in_ruleEString454);
-            rule__EString__Alternatives();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getEStringAccess().getAlternatives()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "ruleEString"
-
-
-    // $ANTLR start "entryRuleInterface"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:256:1: entryRuleInterface : ruleInterface EOF ;
-    public final void entryRuleInterface() throws RecognitionException {
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:257:1: ( ruleInterface EOF )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:258:1: ruleInterface EOF
-            {
-             before(grammarAccess.getInterfaceRule()); 
-            pushFollow(FollowSets000.FOLLOW_ruleInterface_in_entryRuleInterface481);
-            ruleInterface();
-
-            state._fsp--;
-
-             after(grammarAccess.getInterfaceRule()); 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleInterface488); 
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-        }
-        return ;
-    }
-    // $ANTLR end "entryRuleInterface"
-
-
-    // $ANTLR start "ruleInterface"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:265:1: ruleInterface : ( ( rule__Interface__Group__0 ) ) ;
-    public final void ruleInterface() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:269:2: ( ( ( rule__Interface__Group__0 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:270:1: ( ( rule__Interface__Group__0 ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:270:1: ( ( rule__Interface__Group__0 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:271:1: ( rule__Interface__Group__0 )
-            {
-             before(grammarAccess.getInterfaceAccess().getGroup()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:272:1: ( rule__Interface__Group__0 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:272:2: rule__Interface__Group__0
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Interface__Group__0_in_ruleInterface514);
-            rule__Interface__Group__0();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getInterfaceAccess().getGroup()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "ruleInterface"
-
-
-    // $ANTLR start "entryRuleRepositoryComponent_Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:284:1: entryRuleRepositoryComponent_Impl : ruleRepositoryComponent_Impl EOF ;
-    public final void entryRuleRepositoryComponent_Impl() throws RecognitionException {
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:285:1: ( ruleRepositoryComponent_Impl EOF )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:286:1: ruleRepositoryComponent_Impl EOF
-            {
-             before(grammarAccess.getRepositoryComponent_ImplRule()); 
-            pushFollow(FollowSets000.FOLLOW_ruleRepositoryComponent_Impl_in_entryRuleRepositoryComponent_Impl541);
-            ruleRepositoryComponent_Impl();
-
-            state._fsp--;
-
-             after(grammarAccess.getRepositoryComponent_ImplRule()); 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleRepositoryComponent_Impl548); 
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-        }
-        return ;
-    }
-    // $ANTLR end "entryRuleRepositoryComponent_Impl"
-
-
-    // $ANTLR start "ruleRepositoryComponent_Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:293:1: ruleRepositoryComponent_Impl : ( ( rule__RepositoryComponent_Impl__Group__0 ) ) ;
-    public final void ruleRepositoryComponent_Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:297:2: ( ( ( rule__RepositoryComponent_Impl__Group__0 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:298:1: ( ( rule__RepositoryComponent_Impl__Group__0 ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:298:1: ( ( rule__RepositoryComponent_Impl__Group__0 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:299:1: ( rule__RepositoryComponent_Impl__Group__0 )
-            {
-             before(grammarAccess.getRepositoryComponent_ImplAccess().getGroup()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:300:1: ( rule__RepositoryComponent_Impl__Group__0 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:300:2: rule__RepositoryComponent_Impl__Group__0
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group__0_in_ruleRepositoryComponent_Impl574);
-            rule__RepositoryComponent_Impl__Group__0();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getRepositoryComponent_ImplAccess().getGroup()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "ruleRepositoryComponent_Impl"
-
-
-    // $ANTLR start "entryRuleCollectionDataType"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:312:1: entryRuleCollectionDataType : ruleCollectionDataType EOF ;
-    public final void entryRuleCollectionDataType() throws RecognitionException {
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:313:1: ( ruleCollectionDataType EOF )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:314:1: ruleCollectionDataType EOF
-            {
-             before(grammarAccess.getCollectionDataTypeRule()); 
-            pushFollow(FollowSets000.FOLLOW_ruleCollectionDataType_in_entryRuleCollectionDataType601);
-            ruleCollectionDataType();
-
-            state._fsp--;
-
-             after(grammarAccess.getCollectionDataTypeRule()); 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleCollectionDataType608); 
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-        }
-        return ;
-    }
-    // $ANTLR end "entryRuleCollectionDataType"
-
-
-    // $ANTLR start "ruleCollectionDataType"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:321:1: ruleCollectionDataType : ( ( rule__CollectionDataType__Group__0 ) ) ;
-    public final void ruleCollectionDataType() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:325:2: ( ( ( rule__CollectionDataType__Group__0 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:326:1: ( ( rule__CollectionDataType__Group__0 ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:326:1: ( ( rule__CollectionDataType__Group__0 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:327:1: ( rule__CollectionDataType__Group__0 )
-            {
-             before(grammarAccess.getCollectionDataTypeAccess().getGroup()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:328:1: ( rule__CollectionDataType__Group__0 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:328:2: rule__CollectionDataType__Group__0
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__CollectionDataType__Group__0_in_ruleCollectionDataType634);
-            rule__CollectionDataType__Group__0();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getCollectionDataTypeAccess().getGroup()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "ruleCollectionDataType"
-
-
-    // $ANTLR start "entryRuleCompositeDataType"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:340:1: entryRuleCompositeDataType : ruleCompositeDataType EOF ;
-    public final void entryRuleCompositeDataType() throws RecognitionException {
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:341:1: ( ruleCompositeDataType EOF )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:342:1: ruleCompositeDataType EOF
-            {
-             before(grammarAccess.getCompositeDataTypeRule()); 
-            pushFollow(FollowSets000.FOLLOW_ruleCompositeDataType_in_entryRuleCompositeDataType661);
-            ruleCompositeDataType();
-
-            state._fsp--;
-
-             after(grammarAccess.getCompositeDataTypeRule()); 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleCompositeDataType668); 
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-        }
-        return ;
-    }
-    // $ANTLR end "entryRuleCompositeDataType"
-
-
-    // $ANTLR start "ruleCompositeDataType"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:349:1: ruleCompositeDataType : ( ( rule__CompositeDataType__Group__0 ) ) ;
-    public final void ruleCompositeDataType() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:353:2: ( ( ( rule__CompositeDataType__Group__0 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:354:1: ( ( rule__CompositeDataType__Group__0 ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:354:1: ( ( rule__CompositeDataType__Group__0 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:355:1: ( rule__CompositeDataType__Group__0 )
-            {
-             before(grammarAccess.getCompositeDataTypeAccess().getGroup()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:356:1: ( rule__CompositeDataType__Group__0 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:356:2: rule__CompositeDataType__Group__0
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group__0_in_ruleCompositeDataType694);
-            rule__CompositeDataType__Group__0();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getCompositeDataTypeAccess().getGroup()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "ruleCompositeDataType"
-
-
-    // $ANTLR start "entryRulePrimitiveDataType"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:368:1: entryRulePrimitiveDataType : rulePrimitiveDataType EOF ;
-    public final void entryRulePrimitiveDataType() throws RecognitionException {
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:369:1: ( rulePrimitiveDataType EOF )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:370:1: rulePrimitiveDataType EOF
-            {
-             before(grammarAccess.getPrimitiveDataTypeRule()); 
-            pushFollow(FollowSets000.FOLLOW_rulePrimitiveDataType_in_entryRulePrimitiveDataType721);
-            rulePrimitiveDataType();
-
-            state._fsp--;
-
-             after(grammarAccess.getPrimitiveDataTypeRule()); 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRulePrimitiveDataType728); 
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-        }
-        return ;
-    }
-    // $ANTLR end "entryRulePrimitiveDataType"
-
-
-    // $ANTLR start "rulePrimitiveDataType"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:377:1: rulePrimitiveDataType : ( ( rule__PrimitiveDataType__Group__0 ) ) ;
-    public final void rulePrimitiveDataType() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:381:2: ( ( ( rule__PrimitiveDataType__Group__0 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:382:1: ( ( rule__PrimitiveDataType__Group__0 ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:382:1: ( ( rule__PrimitiveDataType__Group__0 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:383:1: ( rule__PrimitiveDataType__Group__0 )
-            {
-             before(grammarAccess.getPrimitiveDataTypeAccess().getGroup()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:384:1: ( rule__PrimitiveDataType__Group__0 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:384:2: rule__PrimitiveDataType__Group__0
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__PrimitiveDataType__Group__0_in_rulePrimitiveDataType754);
-            rule__PrimitiveDataType__Group__0();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getPrimitiveDataTypeAccess().getGroup()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rulePrimitiveDataType"
-
-
-    // $ANTLR start "entryRuleInnerDeclaration"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:396:1: entryRuleInnerDeclaration : ruleInnerDeclaration EOF ;
-    public final void entryRuleInnerDeclaration() throws RecognitionException {
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:397:1: ( ruleInnerDeclaration EOF )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:398:1: ruleInnerDeclaration EOF
-            {
-             before(grammarAccess.getInnerDeclarationRule()); 
-            pushFollow(FollowSets000.FOLLOW_ruleInnerDeclaration_in_entryRuleInnerDeclaration781);
-            ruleInnerDeclaration();
-
-            state._fsp--;
-
-             after(grammarAccess.getInnerDeclarationRule()); 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleInnerDeclaration788); 
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-        }
-        return ;
-    }
-    // $ANTLR end "entryRuleInnerDeclaration"
-
-
-    // $ANTLR start "ruleInnerDeclaration"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:405:1: ruleInnerDeclaration : ( ( rule__InnerDeclaration__Group__0 ) ) ;
-    public final void ruleInnerDeclaration() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:409:2: ( ( ( rule__InnerDeclaration__Group__0 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:410:1: ( ( rule__InnerDeclaration__Group__0 ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:410:1: ( ( rule__InnerDeclaration__Group__0 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:411:1: ( rule__InnerDeclaration__Group__0 )
-            {
-             before(grammarAccess.getInnerDeclarationAccess().getGroup()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:412:1: ( rule__InnerDeclaration__Group__0 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:412:2: rule__InnerDeclaration__Group__0
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__InnerDeclaration__Group__0_in_ruleInnerDeclaration814);
-            rule__InnerDeclaration__Group__0();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getInnerDeclarationAccess().getGroup()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "ruleInnerDeclaration"
-
-
-    // $ANTLR start "entryRuleSignature"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:424:1: entryRuleSignature : ruleSignature EOF ;
-    public final void entryRuleSignature() throws RecognitionException {
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:425:1: ( ruleSignature EOF )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:426:1: ruleSignature EOF
-            {
-             before(grammarAccess.getSignatureRule()); 
-            pushFollow(FollowSets000.FOLLOW_ruleSignature_in_entryRuleSignature841);
-            ruleSignature();
-
-            state._fsp--;
-
-             after(grammarAccess.getSignatureRule()); 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleSignature848); 
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-        }
-        return ;
-    }
-    // $ANTLR end "entryRuleSignature"
-
-
-    // $ANTLR start "ruleSignature"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:433:1: ruleSignature : ( ( rule__Signature__Group__0 ) ) ;
-    public final void ruleSignature() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:437:2: ( ( ( rule__Signature__Group__0 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:438:1: ( ( rule__Signature__Group__0 ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:438:1: ( ( rule__Signature__Group__0 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:439:1: ( rule__Signature__Group__0 )
-            {
-             before(grammarAccess.getSignatureAccess().getGroup()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:440:1: ( rule__Signature__Group__0 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:440:2: rule__Signature__Group__0
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Signature__Group__0_in_ruleSignature874);
-            rule__Signature__Group__0();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getSignatureAccess().getGroup()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "ruleSignature"
-
-
-    // $ANTLR start "entryRuleParameter"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:452:1: entryRuleParameter : ruleParameter EOF ;
-    public final void entryRuleParameter() throws RecognitionException {
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:453:1: ( ruleParameter EOF )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:454:1: ruleParameter EOF
-            {
-             before(grammarAccess.getParameterRule()); 
-            pushFollow(FollowSets000.FOLLOW_ruleParameter_in_entryRuleParameter901);
-            ruleParameter();
-
-            state._fsp--;
-
-             after(grammarAccess.getParameterRule()); 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleParameter908); 
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-        }
-        return ;
-    }
-    // $ANTLR end "entryRuleParameter"
-
-
-    // $ANTLR start "ruleParameter"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:461:1: ruleParameter : ( ( rule__Parameter__Group__0 ) ) ;
-    public final void ruleParameter() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:465:2: ( ( ( rule__Parameter__Group__0 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:466:1: ( ( rule__Parameter__Group__0 ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:466:1: ( ( rule__Parameter__Group__0 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:467:1: ( rule__Parameter__Group__0 )
-            {
-             before(grammarAccess.getParameterAccess().getGroup()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:468:1: ( rule__Parameter__Group__0 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:468:2: rule__Parameter__Group__0
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Parameter__Group__0_in_ruleParameter934);
-            rule__Parameter__Group__0();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getParameterAccess().getGroup()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "ruleParameter"
-
-
-    // $ANTLR start "entryRuleProvidedRole"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:480:1: entryRuleProvidedRole : ruleProvidedRole EOF ;
-    public final void entryRuleProvidedRole() throws RecognitionException {
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:481:1: ( ruleProvidedRole EOF )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:482:1: ruleProvidedRole EOF
-            {
-             before(grammarAccess.getProvidedRoleRule()); 
-            pushFollow(FollowSets000.FOLLOW_ruleProvidedRole_in_entryRuleProvidedRole961);
-            ruleProvidedRole();
-
-            state._fsp--;
-
-             after(grammarAccess.getProvidedRoleRule()); 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleProvidedRole968); 
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-        }
-        return ;
-    }
-    // $ANTLR end "entryRuleProvidedRole"
-
-
-    // $ANTLR start "ruleProvidedRole"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:489:1: ruleProvidedRole : ( ( rule__ProvidedRole__Group__0 ) ) ;
-    public final void ruleProvidedRole() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:493:2: ( ( ( rule__ProvidedRole__Group__0 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:494:1: ( ( rule__ProvidedRole__Group__0 ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:494:1: ( ( rule__ProvidedRole__Group__0 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:495:1: ( rule__ProvidedRole__Group__0 )
-            {
-             before(grammarAccess.getProvidedRoleAccess().getGroup()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:496:1: ( rule__ProvidedRole__Group__0 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:496:2: rule__ProvidedRole__Group__0
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__ProvidedRole__Group__0_in_ruleProvidedRole994);
-            rule__ProvidedRole__Group__0();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getProvidedRoleAccess().getGroup()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "ruleProvidedRole"
-
-
-    // $ANTLR start "entryRuleRequiredRole"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:508:1: entryRuleRequiredRole : ruleRequiredRole EOF ;
-    public final void entryRuleRequiredRole() throws RecognitionException {
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:509:1: ( ruleRequiredRole EOF )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:510:1: ruleRequiredRole EOF
-            {
-             before(grammarAccess.getRequiredRoleRule()); 
-            pushFollow(FollowSets000.FOLLOW_ruleRequiredRole_in_entryRuleRequiredRole1021);
-            ruleRequiredRole();
-
-            state._fsp--;
-
-             after(grammarAccess.getRequiredRoleRule()); 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleRequiredRole1028); 
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-        }
-        return ;
-    }
-    // $ANTLR end "entryRuleRequiredRole"
-
-
-    // $ANTLR start "ruleRequiredRole"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:517:1: ruleRequiredRole : ( ( rule__RequiredRole__Group__0 ) ) ;
-    public final void ruleRequiredRole() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:521:2: ( ( ( rule__RequiredRole__Group__0 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:522:1: ( ( rule__RequiredRole__Group__0 ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:522:1: ( ( rule__RequiredRole__Group__0 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:523:1: ( rule__RequiredRole__Group__0 )
-            {
-             before(grammarAccess.getRequiredRoleAccess().getGroup()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:524:1: ( rule__RequiredRole__Group__0 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:524:2: rule__RequiredRole__Group__0
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__RequiredRole__Group__0_in_ruleRequiredRole1054);
-            rule__RequiredRole__Group__0();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getRequiredRoleAccess().getGroup()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "ruleRequiredRole"
-
-
-    // $ANTLR start "entryRuleBasicComponent"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:536:1: entryRuleBasicComponent : ruleBasicComponent EOF ;
-    public final void entryRuleBasicComponent() throws RecognitionException {
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:537:1: ( ruleBasicComponent EOF )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:538:1: ruleBasicComponent EOF
-            {
-             before(grammarAccess.getBasicComponentRule()); 
-            pushFollow(FollowSets000.FOLLOW_ruleBasicComponent_in_entryRuleBasicComponent1081);
-            ruleBasicComponent();
-
-            state._fsp--;
-
-             after(grammarAccess.getBasicComponentRule()); 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleBasicComponent1088); 
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-        }
-        return ;
-    }
-    // $ANTLR end "entryRuleBasicComponent"
-
-
-    // $ANTLR start "ruleBasicComponent"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:545:1: ruleBasicComponent : ( ( rule__BasicComponent__Group__0 ) ) ;
-    public final void ruleBasicComponent() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:549:2: ( ( ( rule__BasicComponent__Group__0 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:550:1: ( ( rule__BasicComponent__Group__0 ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:550:1: ( ( rule__BasicComponent__Group__0 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:551:1: ( rule__BasicComponent__Group__0 )
-            {
-             before(grammarAccess.getBasicComponentAccess().getGroup()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:552:1: ( rule__BasicComponent__Group__0 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:552:2: rule__BasicComponent__Group__0
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group__0_in_ruleBasicComponent1114);
-            rule__BasicComponent__Group__0();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getBasicComponentAccess().getGroup()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "ruleBasicComponent"
-
-
-    // $ANTLR start "entryRuleCompositeComponent"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:564:1: entryRuleCompositeComponent : ruleCompositeComponent EOF ;
-    public final void entryRuleCompositeComponent() throws RecognitionException {
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:565:1: ( ruleCompositeComponent EOF )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:566:1: ruleCompositeComponent EOF
-            {
-             before(grammarAccess.getCompositeComponentRule()); 
-            pushFollow(FollowSets000.FOLLOW_ruleCompositeComponent_in_entryRuleCompositeComponent1141);
-            ruleCompositeComponent();
-
-            state._fsp--;
-
-             after(grammarAccess.getCompositeComponentRule()); 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleCompositeComponent1148); 
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-        }
-        return ;
-    }
-    // $ANTLR end "entryRuleCompositeComponent"
-
-
-    // $ANTLR start "ruleCompositeComponent"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:573:1: ruleCompositeComponent : ( ( rule__CompositeComponent__Group__0 ) ) ;
-    public final void ruleCompositeComponent() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:577:2: ( ( ( rule__CompositeComponent__Group__0 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:578:1: ( ( rule__CompositeComponent__Group__0 ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:578:1: ( ( rule__CompositeComponent__Group__0 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:579:1: ( rule__CompositeComponent__Group__0 )
-            {
-             before(grammarAccess.getCompositeComponentAccess().getGroup()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:580:1: ( rule__CompositeComponent__Group__0 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:580:2: rule__CompositeComponent__Group__0
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group__0_in_ruleCompositeComponent1174);
-            rule__CompositeComponent__Group__0();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getCompositeComponentAccess().getGroup()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "ruleCompositeComponent"
-
-
-    // $ANTLR start "entryRuleSubSystem"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:592:1: entryRuleSubSystem : ruleSubSystem EOF ;
-    public final void entryRuleSubSystem() throws RecognitionException {
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:593:1: ( ruleSubSystem EOF )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:594:1: ruleSubSystem EOF
-            {
-             before(grammarAccess.getSubSystemRule()); 
-            pushFollow(FollowSets000.FOLLOW_ruleSubSystem_in_entryRuleSubSystem1201);
-            ruleSubSystem();
-
-            state._fsp--;
-
-             after(grammarAccess.getSubSystemRule()); 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleSubSystem1208); 
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-        }
-        return ;
-    }
-    // $ANTLR end "entryRuleSubSystem"
-
-
-    // $ANTLR start "ruleSubSystem"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:601:1: ruleSubSystem : ( ( rule__SubSystem__Group__0 ) ) ;
-    public final void ruleSubSystem() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:605:2: ( ( ( rule__SubSystem__Group__0 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:606:1: ( ( rule__SubSystem__Group__0 ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:606:1: ( ( rule__SubSystem__Group__0 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:607:1: ( rule__SubSystem__Group__0 )
-            {
-             before(grammarAccess.getSubSystemAccess().getGroup()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:608:1: ( rule__SubSystem__Group__0 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:608:2: rule__SubSystem__Group__0
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group__0_in_ruleSubSystem1234);
-            rule__SubSystem__Group__0();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getSubSystemAccess().getGroup()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "ruleSubSystem"
-
-
-    // $ANTLR start "entryRuleComposedStructureAssembly"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:620:1: entryRuleComposedStructureAssembly : ruleComposedStructureAssembly EOF ;
-    public final void entryRuleComposedStructureAssembly() throws RecognitionException {
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:621:1: ( ruleComposedStructureAssembly EOF )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:622:1: ruleComposedStructureAssembly EOF
-            {
-             before(grammarAccess.getComposedStructureAssemblyRule()); 
-            pushFollow(FollowSets000.FOLLOW_ruleComposedStructureAssembly_in_entryRuleComposedStructureAssembly1261);
-            ruleComposedStructureAssembly();
-
-            state._fsp--;
-
-             after(grammarAccess.getComposedStructureAssemblyRule()); 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleComposedStructureAssembly1268); 
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-        }
-        return ;
-    }
-    // $ANTLR end "entryRuleComposedStructureAssembly"
-
-
-    // $ANTLR start "ruleComposedStructureAssembly"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:629:1: ruleComposedStructureAssembly : ( ( rule__ComposedStructureAssembly__Group__0 ) ) ;
-    public final void ruleComposedStructureAssembly() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:633:2: ( ( ( rule__ComposedStructureAssembly__Group__0 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:634:1: ( ( rule__ComposedStructureAssembly__Group__0 ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:634:1: ( ( rule__ComposedStructureAssembly__Group__0 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:635:1: ( rule__ComposedStructureAssembly__Group__0 )
-            {
-             before(grammarAccess.getComposedStructureAssemblyAccess().getGroup()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:636:1: ( rule__ComposedStructureAssembly__Group__0 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:636:2: rule__ComposedStructureAssembly__Group__0
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group__0_in_ruleComposedStructureAssembly1294);
-            rule__ComposedStructureAssembly__Group__0();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getComposedStructureAssemblyAccess().getGroup()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "ruleComposedStructureAssembly"
-
-
-    // $ANTLR start "entryRuleAssemblyContext"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:648:1: entryRuleAssemblyContext : ruleAssemblyContext EOF ;
-    public final void entryRuleAssemblyContext() throws RecognitionException {
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:649:1: ( ruleAssemblyContext EOF )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:650:1: ruleAssemblyContext EOF
-            {
-             before(grammarAccess.getAssemblyContextRule()); 
-            pushFollow(FollowSets000.FOLLOW_ruleAssemblyContext_in_entryRuleAssemblyContext1321);
-            ruleAssemblyContext();
-
-            state._fsp--;
-
-             after(grammarAccess.getAssemblyContextRule()); 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleAssemblyContext1328); 
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-        }
-        return ;
-    }
-    // $ANTLR end "entryRuleAssemblyContext"
-
-
-    // $ANTLR start "ruleAssemblyContext"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:657:1: ruleAssemblyContext : ( ( rule__AssemblyContext__Group__0 ) ) ;
-    public final void ruleAssemblyContext() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:661:2: ( ( ( rule__AssemblyContext__Group__0 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:662:1: ( ( rule__AssemblyContext__Group__0 ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:662:1: ( ( rule__AssemblyContext__Group__0 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:663:1: ( rule__AssemblyContext__Group__0 )
-            {
-             before(grammarAccess.getAssemblyContextAccess().getGroup()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:664:1: ( rule__AssemblyContext__Group__0 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:664:2: rule__AssemblyContext__Group__0
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__AssemblyContext__Group__0_in_ruleAssemblyContext1354);
-            rule__AssemblyContext__Group__0();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getAssemblyContextAccess().getGroup()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "ruleAssemblyContext"
-
-
-    // $ANTLR start "entryRuleAssemblyConnector"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:676:1: entryRuleAssemblyConnector : ruleAssemblyConnector EOF ;
-    public final void entryRuleAssemblyConnector() throws RecognitionException {
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:677:1: ( ruleAssemblyConnector EOF )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:678:1: ruleAssemblyConnector EOF
-            {
-             before(grammarAccess.getAssemblyConnectorRule()); 
-            pushFollow(FollowSets000.FOLLOW_ruleAssemblyConnector_in_entryRuleAssemblyConnector1381);
-            ruleAssemblyConnector();
-
-            state._fsp--;
-
-             after(grammarAccess.getAssemblyConnectorRule()); 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleAssemblyConnector1388); 
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-        }
-        return ;
-    }
-    // $ANTLR end "entryRuleAssemblyConnector"
-
-
-    // $ANTLR start "ruleAssemblyConnector"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:685:1: ruleAssemblyConnector : ( ( rule__AssemblyConnector__Group__0 ) ) ;
-    public final void ruleAssemblyConnector() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:689:2: ( ( ( rule__AssemblyConnector__Group__0 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:690:1: ( ( rule__AssemblyConnector__Group__0 ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:690:1: ( ( rule__AssemblyConnector__Group__0 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:691:1: ( rule__AssemblyConnector__Group__0 )
-            {
-             before(grammarAccess.getAssemblyConnectorAccess().getGroup()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:692:1: ( rule__AssemblyConnector__Group__0 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:692:2: rule__AssemblyConnector__Group__0
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__AssemblyConnector__Group__0_in_ruleAssemblyConnector1414);
-            rule__AssemblyConnector__Group__0();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getAssemblyConnectorAccess().getGroup()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "ruleAssemblyConnector"
-
-
-    // $ANTLR start "entryRuleProvidedDelegationConnector"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:704:1: entryRuleProvidedDelegationConnector : ruleProvidedDelegationConnector EOF ;
-    public final void entryRuleProvidedDelegationConnector() throws RecognitionException {
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:705:1: ( ruleProvidedDelegationConnector EOF )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:706:1: ruleProvidedDelegationConnector EOF
-            {
-             before(grammarAccess.getProvidedDelegationConnectorRule()); 
-            pushFollow(FollowSets000.FOLLOW_ruleProvidedDelegationConnector_in_entryRuleProvidedDelegationConnector1441);
-            ruleProvidedDelegationConnector();
-
-            state._fsp--;
-
-             after(grammarAccess.getProvidedDelegationConnectorRule()); 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleProvidedDelegationConnector1448); 
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-        }
-        return ;
-    }
-    // $ANTLR end "entryRuleProvidedDelegationConnector"
-
-
-    // $ANTLR start "ruleProvidedDelegationConnector"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:713:1: ruleProvidedDelegationConnector : ( ( rule__ProvidedDelegationConnector__Group__0 ) ) ;
-    public final void ruleProvidedDelegationConnector() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:717:2: ( ( ( rule__ProvidedDelegationConnector__Group__0 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:718:1: ( ( rule__ProvidedDelegationConnector__Group__0 ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:718:1: ( ( rule__ProvidedDelegationConnector__Group__0 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:719:1: ( rule__ProvidedDelegationConnector__Group__0 )
-            {
-             before(grammarAccess.getProvidedDelegationConnectorAccess().getGroup()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:720:1: ( rule__ProvidedDelegationConnector__Group__0 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:720:2: rule__ProvidedDelegationConnector__Group__0
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__ProvidedDelegationConnector__Group__0_in_ruleProvidedDelegationConnector1474);
-            rule__ProvidedDelegationConnector__Group__0();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getProvidedDelegationConnectorAccess().getGroup()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "ruleProvidedDelegationConnector"
-
-
-    // $ANTLR start "entryRuleRequiredDelegationConnector"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:732:1: entryRuleRequiredDelegationConnector : ruleRequiredDelegationConnector EOF ;
-    public final void entryRuleRequiredDelegationConnector() throws RecognitionException {
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:733:1: ( ruleRequiredDelegationConnector EOF )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:734:1: ruleRequiredDelegationConnector EOF
-            {
-             before(grammarAccess.getRequiredDelegationConnectorRule()); 
-            pushFollow(FollowSets000.FOLLOW_ruleRequiredDelegationConnector_in_entryRuleRequiredDelegationConnector1501);
-            ruleRequiredDelegationConnector();
-
-            state._fsp--;
-
-             after(grammarAccess.getRequiredDelegationConnectorRule()); 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleRequiredDelegationConnector1508); 
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-        }
-        return ;
-    }
-    // $ANTLR end "entryRuleRequiredDelegationConnector"
-
-
-    // $ANTLR start "ruleRequiredDelegationConnector"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:741:1: ruleRequiredDelegationConnector : ( ( rule__RequiredDelegationConnector__Group__0 ) ) ;
-    public final void ruleRequiredDelegationConnector() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:745:2: ( ( ( rule__RequiredDelegationConnector__Group__0 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:746:1: ( ( rule__RequiredDelegationConnector__Group__0 ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:746:1: ( ( rule__RequiredDelegationConnector__Group__0 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:747:1: ( rule__RequiredDelegationConnector__Group__0 )
-            {
-             before(grammarAccess.getRequiredDelegationConnectorAccess().getGroup()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:748:1: ( rule__RequiredDelegationConnector__Group__0 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:748:2: rule__RequiredDelegationConnector__Group__0
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__RequiredDelegationConnector__Group__0_in_ruleRequiredDelegationConnector1534);
-            rule__RequiredDelegationConnector__Group__0();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getRequiredDelegationConnectorAccess().getGroup()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "ruleRequiredDelegationConnector"
-
-
-    // $ANTLR start "rulePrimitiveTypeEnum"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:761:1: rulePrimitiveTypeEnum : ( ( rule__PrimitiveTypeEnum__Alternatives ) ) ;
-    public final void rulePrimitiveTypeEnum() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:765:1: ( ( ( rule__PrimitiveTypeEnum__Alternatives ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:766:1: ( ( rule__PrimitiveTypeEnum__Alternatives ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:766:1: ( ( rule__PrimitiveTypeEnum__Alternatives ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:767:1: ( rule__PrimitiveTypeEnum__Alternatives )
-            {
-             before(grammarAccess.getPrimitiveTypeEnumAccess().getAlternatives()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:768:1: ( rule__PrimitiveTypeEnum__Alternatives )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:768:2: rule__PrimitiveTypeEnum__Alternatives
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__PrimitiveTypeEnum__Alternatives_in_rulePrimitiveTypeEnum1571);
-            rule__PrimitiveTypeEnum__Alternatives();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getPrimitiveTypeEnumAccess().getAlternatives()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rulePrimitiveTypeEnum"
-
-
-    // $ANTLR start "rule__DataType__Alternatives"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:779:1: rule__DataType__Alternatives : ( ( ruleCollectionDataType ) | ( ruleCompositeDataType ) | ( rulePrimitiveDataType ) );
-    public final void rule__DataType__Alternatives() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:783:1: ( ( ruleCollectionDataType ) | ( ruleCompositeDataType ) | ( rulePrimitiveDataType ) )
-            int alt1=3;
-            switch ( input.LA(1) ) {
-            case 39:
-                {
-                alt1=1;
-                }
-                break;
-            case 41:
-                {
-                alt1=2;
-                }
-                break;
-            case 44:
-                {
-                alt1=3;
-                }
-                break;
-            default:
-                NoViableAltException nvae =
-                    new NoViableAltException("", 1, 0, input);
-
-                throw nvae;
-            }
-
-            switch (alt1) {
-                case 1 :
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:784:1: ( ruleCollectionDataType )
-                    {
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:784:1: ( ruleCollectionDataType )
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:785:1: ruleCollectionDataType
-                    {
-                     before(grammarAccess.getDataTypeAccess().getCollectionDataTypeParserRuleCall_0()); 
-                    pushFollow(FollowSets000.FOLLOW_ruleCollectionDataType_in_rule__DataType__Alternatives1606);
-                    ruleCollectionDataType();
-
-                    state._fsp--;
-
-                     after(grammarAccess.getDataTypeAccess().getCollectionDataTypeParserRuleCall_0()); 
-
-                    }
-
-
-                    }
-                    break;
-                case 2 :
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:790:6: ( ruleCompositeDataType )
-                    {
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:790:6: ( ruleCompositeDataType )
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:791:1: ruleCompositeDataType
-                    {
-                     before(grammarAccess.getDataTypeAccess().getCompositeDataTypeParserRuleCall_1()); 
-                    pushFollow(FollowSets000.FOLLOW_ruleCompositeDataType_in_rule__DataType__Alternatives1623);
-                    ruleCompositeDataType();
-
-                    state._fsp--;
-
-                     after(grammarAccess.getDataTypeAccess().getCompositeDataTypeParserRuleCall_1()); 
-
-                    }
-
-
-                    }
-                    break;
-                case 3 :
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:796:6: ( rulePrimitiveDataType )
-                    {
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:796:6: ( rulePrimitiveDataType )
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:797:1: rulePrimitiveDataType
-                    {
-                     before(grammarAccess.getDataTypeAccess().getPrimitiveDataTypeParserRuleCall_2()); 
-                    pushFollow(FollowSets000.FOLLOW_rulePrimitiveDataType_in_rule__DataType__Alternatives1640);
-                    rulePrimitiveDataType();
-
-                    state._fsp--;
-
-                     after(grammarAccess.getDataTypeAccess().getPrimitiveDataTypeParserRuleCall_2()); 
-
-                    }
-
-
-                    }
-                    break;
-
-            }
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__DataType__Alternatives"
-
-
-    // $ANTLR start "rule__RepositoryComponent__Alternatives"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:807:1: rule__RepositoryComponent__Alternatives : ( ( ruleRepositoryComponent_Impl ) | ( ruleBasicComponent ) | ( ruleCompositeComponent ) | ( ruleSubSystem ) );
-    public final void rule__RepositoryComponent__Alternatives() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:811:1: ( ( ruleRepositoryComponent_Impl ) | ( ruleBasicComponent ) | ( ruleCompositeComponent ) | ( ruleSubSystem ) )
-            int alt2=4;
-            switch ( input.LA(1) ) {
-            case 35:
-                {
-                alt2=1;
-                }
-                break;
-            case 51:
-                {
-                alt2=2;
-                }
-                break;
-            case 52:
-                {
-                alt2=3;
-                }
-                break;
-            case 54:
-                {
-                alt2=4;
-                }
-                break;
-            default:
-                NoViableAltException nvae =
-                    new NoViableAltException("", 2, 0, input);
-
-                throw nvae;
-            }
-
-            switch (alt2) {
-                case 1 :
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:812:1: ( ruleRepositoryComponent_Impl )
-                    {
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:812:1: ( ruleRepositoryComponent_Impl )
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:813:1: ruleRepositoryComponent_Impl
-                    {
-                     before(grammarAccess.getRepositoryComponentAccess().getRepositoryComponent_ImplParserRuleCall_0()); 
-                    pushFollow(FollowSets000.FOLLOW_ruleRepositoryComponent_Impl_in_rule__RepositoryComponent__Alternatives1672);
-                    ruleRepositoryComponent_Impl();
-
-                    state._fsp--;
-
-                     after(grammarAccess.getRepositoryComponentAccess().getRepositoryComponent_ImplParserRuleCall_0()); 
-
-                    }
-
-
-                    }
-                    break;
-                case 2 :
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:818:6: ( ruleBasicComponent )
-                    {
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:818:6: ( ruleBasicComponent )
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:819:1: ruleBasicComponent
-                    {
-                     before(grammarAccess.getRepositoryComponentAccess().getBasicComponentParserRuleCall_1()); 
-                    pushFollow(FollowSets000.FOLLOW_ruleBasicComponent_in_rule__RepositoryComponent__Alternatives1689);
-                    ruleBasicComponent();
-
-                    state._fsp--;
-
-                     after(grammarAccess.getRepositoryComponentAccess().getBasicComponentParserRuleCall_1()); 
-
-                    }
-
-
-                    }
-                    break;
-                case 3 :
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:824:6: ( ruleCompositeComponent )
-                    {
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:824:6: ( ruleCompositeComponent )
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:825:1: ruleCompositeComponent
-                    {
-                     before(grammarAccess.getRepositoryComponentAccess().getCompositeComponentParserRuleCall_2()); 
-                    pushFollow(FollowSets000.FOLLOW_ruleCompositeComponent_in_rule__RepositoryComponent__Alternatives1706);
-                    ruleCompositeComponent();
-
-                    state._fsp--;
-
-                     after(grammarAccess.getRepositoryComponentAccess().getCompositeComponentParserRuleCall_2()); 
-
-                    }
-
-
-                    }
-                    break;
-                case 4 :
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:830:6: ( ruleSubSystem )
-                    {
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:830:6: ( ruleSubSystem )
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:831:1: ruleSubSystem
-                    {
-                     before(grammarAccess.getRepositoryComponentAccess().getSubSystemParserRuleCall_3()); 
-                    pushFollow(FollowSets000.FOLLOW_ruleSubSystem_in_rule__RepositoryComponent__Alternatives1723);
-                    ruleSubSystem();
-
-                    state._fsp--;
-
-                     after(grammarAccess.getRepositoryComponentAccess().getSubSystemParserRuleCall_3()); 
-
-                    }
-
-
-                    }
-                    break;
-
-            }
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__RepositoryComponent__Alternatives"
-
-
-    // $ANTLR start "rule__EString__Alternatives"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:841:1: rule__EString__Alternatives : ( ( RULE_STRING ) | ( RULE_ID ) );
-    public final void rule__EString__Alternatives() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:845:1: ( ( RULE_STRING ) | ( RULE_ID ) )
-            int alt3=2;
-            int LA3_0 = input.LA(1);
-
-            if ( (LA3_0==RULE_STRING) ) {
-                alt3=1;
-            }
-            else if ( (LA3_0==RULE_ID) ) {
-                alt3=2;
-            }
-            else {
-                NoViableAltException nvae =
-                    new NoViableAltException("", 3, 0, input);
-
-                throw nvae;
-            }
-            switch (alt3) {
-                case 1 :
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:846:1: ( RULE_STRING )
-                    {
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:846:1: ( RULE_STRING )
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:847:1: RULE_STRING
-                    {
-                     before(grammarAccess.getEStringAccess().getSTRINGTerminalRuleCall_0()); 
-                    match(input,RULE_STRING,FollowSets000.FOLLOW_RULE_STRING_in_rule__EString__Alternatives1755); 
-                     after(grammarAccess.getEStringAccess().getSTRINGTerminalRuleCall_0()); 
-
-                    }
-
-
-                    }
-                    break;
-                case 2 :
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:852:6: ( RULE_ID )
-                    {
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:852:6: ( RULE_ID )
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:853:1: RULE_ID
-                    {
-                     before(grammarAccess.getEStringAccess().getIDTerminalRuleCall_1()); 
-                    match(input,RULE_ID,FollowSets000.FOLLOW_RULE_ID_in_rule__EString__Alternatives1772); 
-                     after(grammarAccess.getEStringAccess().getIDTerminalRuleCall_1()); 
-
-                    }
-
-
-                    }
-                    break;
-
-            }
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__EString__Alternatives"
-
-
-    // $ANTLR start "rule__Signature__Alternatives_0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:863:1: rule__Signature__Alternatives_0 : ( ( ( rule__Signature__ReturnTypeAssignment_0_0 ) ) | ( 'void' ) );
-    public final void rule__Signature__Alternatives_0() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:867:1: ( ( ( rule__Signature__ReturnTypeAssignment_0_0 ) ) | ( 'void' ) )
-            int alt4=2;
-            int LA4_0 = input.LA(1);
-
-            if ( ((LA4_0>=RULE_STRING && LA4_0<=RULE_ID)) ) {
-                alt4=1;
-            }
-            else if ( (LA4_0==11) ) {
-                alt4=2;
-            }
-            else {
-                NoViableAltException nvae =
-                    new NoViableAltException("", 4, 0, input);
-
-                throw nvae;
-            }
-            switch (alt4) {
-                case 1 :
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:868:1: ( ( rule__Signature__ReturnTypeAssignment_0_0 ) )
-                    {
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:868:1: ( ( rule__Signature__ReturnTypeAssignment_0_0 ) )
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:869:1: ( rule__Signature__ReturnTypeAssignment_0_0 )
-                    {
-                     before(grammarAccess.getSignatureAccess().getReturnTypeAssignment_0_0()); 
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:870:1: ( rule__Signature__ReturnTypeAssignment_0_0 )
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:870:2: rule__Signature__ReturnTypeAssignment_0_0
-                    {
-                    pushFollow(FollowSets000.FOLLOW_rule__Signature__ReturnTypeAssignment_0_0_in_rule__Signature__Alternatives_01804);
-                    rule__Signature__ReturnTypeAssignment_0_0();
-
-                    state._fsp--;
-
-
-                    }
-
-                     after(grammarAccess.getSignatureAccess().getReturnTypeAssignment_0_0()); 
-
-                    }
-
-
-                    }
-                    break;
-                case 2 :
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:874:6: ( 'void' )
-                    {
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:874:6: ( 'void' )
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:875:1: 'void'
-                    {
-                     before(grammarAccess.getSignatureAccess().getVoidKeyword_0_1()); 
-                    match(input,11,FollowSets000.FOLLOW_11_in_rule__Signature__Alternatives_01823); 
-                     after(grammarAccess.getSignatureAccess().getVoidKeyword_0_1()); 
-
-                    }
-
-
-                    }
-                    break;
-
-            }
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Signature__Alternatives_0"
-
-
-    // $ANTLR start "rule__PrimitiveTypeEnum__Alternatives"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:887:1: rule__PrimitiveTypeEnum__Alternatives : ( ( ( 'INT' ) ) | ( ( 'STRING' ) ) | ( ( 'BOOL' ) ) | ( ( 'DOUBLE' ) ) | ( ( 'CHAR' ) ) | ( ( 'BYTE' ) ) | ( ( 'LONG' ) ) );
-    public final void rule__PrimitiveTypeEnum__Alternatives() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:891:1: ( ( ( 'INT' ) ) | ( ( 'STRING' ) ) | ( ( 'BOOL' ) ) | ( ( 'DOUBLE' ) ) | ( ( 'CHAR' ) ) | ( ( 'BYTE' ) ) | ( ( 'LONG' ) ) )
-            int alt5=7;
-            switch ( input.LA(1) ) {
-            case 12:
-                {
-                alt5=1;
-                }
-                break;
-            case 13:
-                {
-                alt5=2;
-                }
-                break;
-            case 14:
-                {
-                alt5=3;
-                }
-                break;
-            case 15:
-                {
-                alt5=4;
-                }
-                break;
-            case 16:
-                {
-                alt5=5;
-                }
-                break;
-            case 17:
-                {
-                alt5=6;
-                }
-                break;
-            case 18:
-                {
-                alt5=7;
-                }
-                break;
-            default:
-                NoViableAltException nvae =
-                    new NoViableAltException("", 5, 0, input);
-
-                throw nvae;
-            }
-
-            switch (alt5) {
-                case 1 :
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:892:1: ( ( 'INT' ) )
-                    {
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:892:1: ( ( 'INT' ) )
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:893:1: ( 'INT' )
-                    {
-                     before(grammarAccess.getPrimitiveTypeEnumAccess().getINTEnumLiteralDeclaration_0()); 
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:894:1: ( 'INT' )
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:894:3: 'INT'
-                    {
-                    match(input,12,FollowSets000.FOLLOW_12_in_rule__PrimitiveTypeEnum__Alternatives1858); 
-
-                    }
-
-                     after(grammarAccess.getPrimitiveTypeEnumAccess().getINTEnumLiteralDeclaration_0()); 
-
-                    }
-
-
-                    }
-                    break;
-                case 2 :
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:899:6: ( ( 'STRING' ) )
-                    {
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:899:6: ( ( 'STRING' ) )
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:900:1: ( 'STRING' )
-                    {
-                     before(grammarAccess.getPrimitiveTypeEnumAccess().getSTRINGEnumLiteralDeclaration_1()); 
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:901:1: ( 'STRING' )
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:901:3: 'STRING'
-                    {
-                    match(input,13,FollowSets000.FOLLOW_13_in_rule__PrimitiveTypeEnum__Alternatives1879); 
-
-                    }
-
-                     after(grammarAccess.getPrimitiveTypeEnumAccess().getSTRINGEnumLiteralDeclaration_1()); 
-
-                    }
-
-
-                    }
-                    break;
-                case 3 :
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:906:6: ( ( 'BOOL' ) )
-                    {
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:906:6: ( ( 'BOOL' ) )
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:907:1: ( 'BOOL' )
-                    {
-                     before(grammarAccess.getPrimitiveTypeEnumAccess().getBOOLEnumLiteralDeclaration_2()); 
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:908:1: ( 'BOOL' )
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:908:3: 'BOOL'
-                    {
-                    match(input,14,FollowSets000.FOLLOW_14_in_rule__PrimitiveTypeEnum__Alternatives1900); 
-
-                    }
-
-                     after(grammarAccess.getPrimitiveTypeEnumAccess().getBOOLEnumLiteralDeclaration_2()); 
-
-                    }
-
-
-                    }
-                    break;
-                case 4 :
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:913:6: ( ( 'DOUBLE' ) )
-                    {
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:913:6: ( ( 'DOUBLE' ) )
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:914:1: ( 'DOUBLE' )
-                    {
-                     before(grammarAccess.getPrimitiveTypeEnumAccess().getDOUBLEEnumLiteralDeclaration_3()); 
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:915:1: ( 'DOUBLE' )
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:915:3: 'DOUBLE'
-                    {
-                    match(input,15,FollowSets000.FOLLOW_15_in_rule__PrimitiveTypeEnum__Alternatives1921); 
-
-                    }
-
-                     after(grammarAccess.getPrimitiveTypeEnumAccess().getDOUBLEEnumLiteralDeclaration_3()); 
-
-                    }
-
-
-                    }
-                    break;
-                case 5 :
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:920:6: ( ( 'CHAR' ) )
-                    {
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:920:6: ( ( 'CHAR' ) )
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:921:1: ( 'CHAR' )
-                    {
-                     before(grammarAccess.getPrimitiveTypeEnumAccess().getCHAREnumLiteralDeclaration_4()); 
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:922:1: ( 'CHAR' )
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:922:3: 'CHAR'
-                    {
-                    match(input,16,FollowSets000.FOLLOW_16_in_rule__PrimitiveTypeEnum__Alternatives1942); 
-
-                    }
-
-                     after(grammarAccess.getPrimitiveTypeEnumAccess().getCHAREnumLiteralDeclaration_4()); 
-
-                    }
-
-
-                    }
-                    break;
-                case 6 :
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:927:6: ( ( 'BYTE' ) )
-                    {
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:927:6: ( ( 'BYTE' ) )
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:928:1: ( 'BYTE' )
-                    {
-                     before(grammarAccess.getPrimitiveTypeEnumAccess().getBYTEEnumLiteralDeclaration_5()); 
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:929:1: ( 'BYTE' )
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:929:3: 'BYTE'
-                    {
-                    match(input,17,FollowSets000.FOLLOW_17_in_rule__PrimitiveTypeEnum__Alternatives1963); 
-
-                    }
-
-                     after(grammarAccess.getPrimitiveTypeEnumAccess().getBYTEEnumLiteralDeclaration_5()); 
-
-                    }
-
-
-                    }
-                    break;
-                case 7 :
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:934:6: ( ( 'LONG' ) )
-                    {
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:934:6: ( ( 'LONG' ) )
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:935:1: ( 'LONG' )
-                    {
-                     before(grammarAccess.getPrimitiveTypeEnumAccess().getLONGEnumLiteralDeclaration_6()); 
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:936:1: ( 'LONG' )
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:936:3: 'LONG'
-                    {
-                    match(input,18,FollowSets000.FOLLOW_18_in_rule__PrimitiveTypeEnum__Alternatives1984); 
-
-                    }
-
-                     after(grammarAccess.getPrimitiveTypeEnumAccess().getLONGEnumLiteralDeclaration_6()); 
-
-                    }
-
-
-                    }
-                    break;
-
-            }
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__PrimitiveTypeEnum__Alternatives"
-
-
-    // $ANTLR start "rule__Repository__Group__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:948:1: rule__Repository__Group__0 : rule__Repository__Group__0__Impl rule__Repository__Group__1 ;
-    public final void rule__Repository__Group__0() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:952:1: ( rule__Repository__Group__0__Impl rule__Repository__Group__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:953:2: rule__Repository__Group__0__Impl rule__Repository__Group__1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group__0__Impl_in_rule__Repository__Group__02017);
-            rule__Repository__Group__0__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group__1_in_rule__Repository__Group__02020);
-            rule__Repository__Group__1();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group__0"
-
-
-    // $ANTLR start "rule__Repository__Group__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:960:1: rule__Repository__Group__0__Impl : ( 'Repository' ) ;
-    public final void rule__Repository__Group__0__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:964:1: ( ( 'Repository' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:965:1: ( 'Repository' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:965:1: ( 'Repository' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:966:1: 'Repository'
-            {
-             before(grammarAccess.getRepositoryAccess().getRepositoryKeyword_0()); 
-            match(input,19,FollowSets000.FOLLOW_19_in_rule__Repository__Group__0__Impl2048); 
-             after(grammarAccess.getRepositoryAccess().getRepositoryKeyword_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group__0__Impl"
-
-
-    // $ANTLR start "rule__Repository__Group__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:979:1: rule__Repository__Group__1 : rule__Repository__Group__1__Impl rule__Repository__Group__2 ;
-    public final void rule__Repository__Group__1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:983:1: ( rule__Repository__Group__1__Impl rule__Repository__Group__2 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:984:2: rule__Repository__Group__1__Impl rule__Repository__Group__2
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group__1__Impl_in_rule__Repository__Group__12079);
-            rule__Repository__Group__1__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group__2_in_rule__Repository__Group__12082);
-            rule__Repository__Group__2();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group__1"
-
-
-    // $ANTLR start "rule__Repository__Group__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:991:1: rule__Repository__Group__1__Impl : ( ( rule__Repository__NameAssignment_1 ) ) ;
-    public final void rule__Repository__Group__1__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:995:1: ( ( ( rule__Repository__NameAssignment_1 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:996:1: ( ( rule__Repository__NameAssignment_1 ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:996:1: ( ( rule__Repository__NameAssignment_1 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:997:1: ( rule__Repository__NameAssignment_1 )
-            {
-             before(grammarAccess.getRepositoryAccess().getNameAssignment_1()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:998:1: ( rule__Repository__NameAssignment_1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:998:2: rule__Repository__NameAssignment_1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__NameAssignment_1_in_rule__Repository__Group__1__Impl2109);
-            rule__Repository__NameAssignment_1();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getRepositoryAccess().getNameAssignment_1()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group__1__Impl"
-
-
-    // $ANTLR start "rule__Repository__Group__2"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1008:1: rule__Repository__Group__2 : rule__Repository__Group__2__Impl rule__Repository__Group__3 ;
-    public final void rule__Repository__Group__2() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1012:1: ( rule__Repository__Group__2__Impl rule__Repository__Group__3 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1013:2: rule__Repository__Group__2__Impl rule__Repository__Group__3
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group__2__Impl_in_rule__Repository__Group__22139);
-            rule__Repository__Group__2__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group__3_in_rule__Repository__Group__22142);
-            rule__Repository__Group__3();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group__2"
-
-
-    // $ANTLR start "rule__Repository__Group__2__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1020:1: rule__Repository__Group__2__Impl : ( '{' ) ;
-    public final void rule__Repository__Group__2__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1024:1: ( ( '{' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1025:1: ( '{' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1025:1: ( '{' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1026:1: '{'
-            {
-             before(grammarAccess.getRepositoryAccess().getLeftCurlyBracketKeyword_2()); 
-            match(input,20,FollowSets000.FOLLOW_20_in_rule__Repository__Group__2__Impl2170); 
-             after(grammarAccess.getRepositoryAccess().getLeftCurlyBracketKeyword_2()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group__2__Impl"
-
-
-    // $ANTLR start "rule__Repository__Group__3"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1039:1: rule__Repository__Group__3 : rule__Repository__Group__3__Impl rule__Repository__Group__4 ;
-    public final void rule__Repository__Group__3() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1043:1: ( rule__Repository__Group__3__Impl rule__Repository__Group__4 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1044:2: rule__Repository__Group__3__Impl rule__Repository__Group__4
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group__3__Impl_in_rule__Repository__Group__32201);
-            rule__Repository__Group__3__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group__4_in_rule__Repository__Group__32204);
-            rule__Repository__Group__4();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group__3"
-
-
-    // $ANTLR start "rule__Repository__Group__3__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1051:1: rule__Repository__Group__3__Impl : ( ( rule__Repository__Group_3__0 )? ) ;
-    public final void rule__Repository__Group__3__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1055:1: ( ( ( rule__Repository__Group_3__0 )? ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1056:1: ( ( rule__Repository__Group_3__0 )? )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1056:1: ( ( rule__Repository__Group_3__0 )? )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1057:1: ( rule__Repository__Group_3__0 )?
-            {
-             before(grammarAccess.getRepositoryAccess().getGroup_3()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1058:1: ( rule__Repository__Group_3__0 )?
-            int alt6=2;
-            int LA6_0 = input.LA(1);
-
-            if ( (LA6_0==22) ) {
-                alt6=1;
-            }
-            switch (alt6) {
-                case 1 :
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1058:2: rule__Repository__Group_3__0
-                    {
-                    pushFollow(FollowSets000.FOLLOW_rule__Repository__Group_3__0_in_rule__Repository__Group__3__Impl2231);
-                    rule__Repository__Group_3__0();
-
-                    state._fsp--;
-
-
-                    }
-                    break;
-
-            }
-
-             after(grammarAccess.getRepositoryAccess().getGroup_3()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group__3__Impl"
-
-
-    // $ANTLR start "rule__Repository__Group__4"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1068:1: rule__Repository__Group__4 : rule__Repository__Group__4__Impl rule__Repository__Group__5 ;
-    public final void rule__Repository__Group__4() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1072:1: ( rule__Repository__Group__4__Impl rule__Repository__Group__5 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1073:2: rule__Repository__Group__4__Impl rule__Repository__Group__5
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group__4__Impl_in_rule__Repository__Group__42262);
-            rule__Repository__Group__4__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group__5_in_rule__Repository__Group__42265);
-            rule__Repository__Group__5();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group__4"
-
-
-    // $ANTLR start "rule__Repository__Group__4__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1080:1: rule__Repository__Group__4__Impl : ( ( rule__Repository__Group_4__0 )? ) ;
-    public final void rule__Repository__Group__4__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1084:1: ( ( ( rule__Repository__Group_4__0 )? ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1085:1: ( ( rule__Repository__Group_4__0 )? )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1085:1: ( ( rule__Repository__Group_4__0 )? )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1086:1: ( rule__Repository__Group_4__0 )?
-            {
-             before(grammarAccess.getRepositoryAccess().getGroup_4()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1087:1: ( rule__Repository__Group_4__0 )?
-            int alt7=2;
-            int LA7_0 = input.LA(1);
-
-            if ( (LA7_0==24) ) {
-                alt7=1;
-            }
-            switch (alt7) {
-                case 1 :
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1087:2: rule__Repository__Group_4__0
-                    {
-                    pushFollow(FollowSets000.FOLLOW_rule__Repository__Group_4__0_in_rule__Repository__Group__4__Impl2292);
-                    rule__Repository__Group_4__0();
-
-                    state._fsp--;
-
-
-                    }
-                    break;
-
-            }
-
-             after(grammarAccess.getRepositoryAccess().getGroup_4()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group__4__Impl"
-
-
-    // $ANTLR start "rule__Repository__Group__5"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1097:1: rule__Repository__Group__5 : rule__Repository__Group__5__Impl rule__Repository__Group__6 ;
-    public final void rule__Repository__Group__5() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1101:1: ( rule__Repository__Group__5__Impl rule__Repository__Group__6 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1102:2: rule__Repository__Group__5__Impl rule__Repository__Group__6
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group__5__Impl_in_rule__Repository__Group__52323);
-            rule__Repository__Group__5__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group__6_in_rule__Repository__Group__52326);
-            rule__Repository__Group__6();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group__5"
-
-
-    // $ANTLR start "rule__Repository__Group__5__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1109:1: rule__Repository__Group__5__Impl : ( ( rule__Repository__Group_5__0 )? ) ;
-    public final void rule__Repository__Group__5__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1113:1: ( ( ( rule__Repository__Group_5__0 )? ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1114:1: ( ( rule__Repository__Group_5__0 )? )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1114:1: ( ( rule__Repository__Group_5__0 )? )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1115:1: ( rule__Repository__Group_5__0 )?
-            {
-             before(grammarAccess.getRepositoryAccess().getGroup_5()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1116:1: ( rule__Repository__Group_5__0 )?
-            int alt8=2;
-            int LA8_0 = input.LA(1);
-
-            if ( (LA8_0==25) ) {
-                alt8=1;
-            }
-            switch (alt8) {
-                case 1 :
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1116:2: rule__Repository__Group_5__0
-                    {
-                    pushFollow(FollowSets000.FOLLOW_rule__Repository__Group_5__0_in_rule__Repository__Group__5__Impl2353);
-                    rule__Repository__Group_5__0();
-
-                    state._fsp--;
-
-
-                    }
-                    break;
-
-            }
-
-             after(grammarAccess.getRepositoryAccess().getGroup_5()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group__5__Impl"
-
-
-    // $ANTLR start "rule__Repository__Group__6"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1126:1: rule__Repository__Group__6 : rule__Repository__Group__6__Impl rule__Repository__Group__7 ;
-    public final void rule__Repository__Group__6() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1130:1: ( rule__Repository__Group__6__Impl rule__Repository__Group__7 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1131:2: rule__Repository__Group__6__Impl rule__Repository__Group__7
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group__6__Impl_in_rule__Repository__Group__62384);
-            rule__Repository__Group__6__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group__7_in_rule__Repository__Group__62387);
-            rule__Repository__Group__7();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group__6"
-
-
-    // $ANTLR start "rule__Repository__Group__6__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1138:1: rule__Repository__Group__6__Impl : ( ( rule__Repository__Group_6__0 )? ) ;
-    public final void rule__Repository__Group__6__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1142:1: ( ( ( rule__Repository__Group_6__0 )? ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1143:1: ( ( rule__Repository__Group_6__0 )? )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1143:1: ( ( rule__Repository__Group_6__0 )? )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1144:1: ( rule__Repository__Group_6__0 )?
-            {
-             before(grammarAccess.getRepositoryAccess().getGroup_6()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1145:1: ( rule__Repository__Group_6__0 )?
-            int alt9=2;
-            int LA9_0 = input.LA(1);
-
-            if ( (LA9_0==27) ) {
-                alt9=1;
-            }
-            switch (alt9) {
-                case 1 :
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1145:2: rule__Repository__Group_6__0
-                    {
-                    pushFollow(FollowSets000.FOLLOW_rule__Repository__Group_6__0_in_rule__Repository__Group__6__Impl2414);
-                    rule__Repository__Group_6__0();
-
-                    state._fsp--;
-
-
-                    }
-                    break;
-
-            }
-
-             after(grammarAccess.getRepositoryAccess().getGroup_6()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group__6__Impl"
-
-
-    // $ANTLR start "rule__Repository__Group__7"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1155:1: rule__Repository__Group__7 : rule__Repository__Group__7__Impl ;
-    public final void rule__Repository__Group__7() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1159:1: ( rule__Repository__Group__7__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1160:2: rule__Repository__Group__7__Impl
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group__7__Impl_in_rule__Repository__Group__72445);
-            rule__Repository__Group__7__Impl();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group__7"
-
-
-    // $ANTLR start "rule__Repository__Group__7__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1166:1: rule__Repository__Group__7__Impl : ( '}' ) ;
-    public final void rule__Repository__Group__7__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1170:1: ( ( '}' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1171:1: ( '}' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1171:1: ( '}' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1172:1: '}'
-            {
-             before(grammarAccess.getRepositoryAccess().getRightCurlyBracketKeyword_7()); 
-            match(input,21,FollowSets000.FOLLOW_21_in_rule__Repository__Group__7__Impl2473); 
-             after(grammarAccess.getRepositoryAccess().getRightCurlyBracketKeyword_7()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group__7__Impl"
-
-
-    // $ANTLR start "rule__Repository__Group_3__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1201:1: rule__Repository__Group_3__0 : rule__Repository__Group_3__0__Impl rule__Repository__Group_3__1 ;
-    public final void rule__Repository__Group_3__0() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1205:1: ( rule__Repository__Group_3__0__Impl rule__Repository__Group_3__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1206:2: rule__Repository__Group_3__0__Impl rule__Repository__Group_3__1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group_3__0__Impl_in_rule__Repository__Group_3__02520);
-            rule__Repository__Group_3__0__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group_3__1_in_rule__Repository__Group_3__02523);
-            rule__Repository__Group_3__1();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group_3__0"
-
-
-    // $ANTLR start "rule__Repository__Group_3__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1213:1: rule__Repository__Group_3__0__Impl : ( 'imports' ) ;
-    public final void rule__Repository__Group_3__0__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1217:1: ( ( 'imports' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1218:1: ( 'imports' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1218:1: ( 'imports' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1219:1: 'imports'
-            {
-             before(grammarAccess.getRepositoryAccess().getImportsKeyword_3_0()); 
-            match(input,22,FollowSets000.FOLLOW_22_in_rule__Repository__Group_3__0__Impl2551); 
-             after(grammarAccess.getRepositoryAccess().getImportsKeyword_3_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group_3__0__Impl"
-
-
-    // $ANTLR start "rule__Repository__Group_3__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1232:1: rule__Repository__Group_3__1 : rule__Repository__Group_3__1__Impl rule__Repository__Group_3__2 ;
-    public final void rule__Repository__Group_3__1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1236:1: ( rule__Repository__Group_3__1__Impl rule__Repository__Group_3__2 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1237:2: rule__Repository__Group_3__1__Impl rule__Repository__Group_3__2
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group_3__1__Impl_in_rule__Repository__Group_3__12582);
-            rule__Repository__Group_3__1__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group_3__2_in_rule__Repository__Group_3__12585);
-            rule__Repository__Group_3__2();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group_3__1"
-
-
-    // $ANTLR start "rule__Repository__Group_3__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1244:1: rule__Repository__Group_3__1__Impl : ( '{' ) ;
-    public final void rule__Repository__Group_3__1__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1248:1: ( ( '{' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1249:1: ( '{' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1249:1: ( '{' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1250:1: '{'
-            {
-             before(grammarAccess.getRepositoryAccess().getLeftCurlyBracketKeyword_3_1()); 
-            match(input,20,FollowSets000.FOLLOW_20_in_rule__Repository__Group_3__1__Impl2613); 
-             after(grammarAccess.getRepositoryAccess().getLeftCurlyBracketKeyword_3_1()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group_3__1__Impl"
-
-
-    // $ANTLR start "rule__Repository__Group_3__2"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1263:1: rule__Repository__Group_3__2 : rule__Repository__Group_3__2__Impl rule__Repository__Group_3__3 ;
-    public final void rule__Repository__Group_3__2() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1267:1: ( rule__Repository__Group_3__2__Impl rule__Repository__Group_3__3 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1268:2: rule__Repository__Group_3__2__Impl rule__Repository__Group_3__3
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group_3__2__Impl_in_rule__Repository__Group_3__22644);
-            rule__Repository__Group_3__2__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group_3__3_in_rule__Repository__Group_3__22647);
-            rule__Repository__Group_3__3();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group_3__2"
-
-
-    // $ANTLR start "rule__Repository__Group_3__2__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1275:1: rule__Repository__Group_3__2__Impl : ( ( rule__Repository__ImportsAssignment_3_2 ) ) ;
-    public final void rule__Repository__Group_3__2__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1279:1: ( ( ( rule__Repository__ImportsAssignment_3_2 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1280:1: ( ( rule__Repository__ImportsAssignment_3_2 ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1280:1: ( ( rule__Repository__ImportsAssignment_3_2 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1281:1: ( rule__Repository__ImportsAssignment_3_2 )
-            {
-             before(grammarAccess.getRepositoryAccess().getImportsAssignment_3_2()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1282:1: ( rule__Repository__ImportsAssignment_3_2 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1282:2: rule__Repository__ImportsAssignment_3_2
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__ImportsAssignment_3_2_in_rule__Repository__Group_3__2__Impl2674);
-            rule__Repository__ImportsAssignment_3_2();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getRepositoryAccess().getImportsAssignment_3_2()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group_3__2__Impl"
-
-
-    // $ANTLR start "rule__Repository__Group_3__3"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1292:1: rule__Repository__Group_3__3 : rule__Repository__Group_3__3__Impl rule__Repository__Group_3__4 ;
-    public final void rule__Repository__Group_3__3() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1296:1: ( rule__Repository__Group_3__3__Impl rule__Repository__Group_3__4 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1297:2: rule__Repository__Group_3__3__Impl rule__Repository__Group_3__4
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group_3__3__Impl_in_rule__Repository__Group_3__32704);
-            rule__Repository__Group_3__3__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group_3__4_in_rule__Repository__Group_3__32707);
-            rule__Repository__Group_3__4();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group_3__3"
-
-
-    // $ANTLR start "rule__Repository__Group_3__3__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1304:1: rule__Repository__Group_3__3__Impl : ( ( rule__Repository__Group_3_3__0 )* ) ;
-    public final void rule__Repository__Group_3__3__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1308:1: ( ( ( rule__Repository__Group_3_3__0 )* ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1309:1: ( ( rule__Repository__Group_3_3__0 )* )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1309:1: ( ( rule__Repository__Group_3_3__0 )* )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1310:1: ( rule__Repository__Group_3_3__0 )*
-            {
-             before(grammarAccess.getRepositoryAccess().getGroup_3_3()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1311:1: ( rule__Repository__Group_3_3__0 )*
-            loop10:
-            do {
-                int alt10=2;
-                int LA10_0 = input.LA(1);
-
-                if ( (LA10_0==23) ) {
-                    alt10=1;
-                }
-
-
-                switch (alt10) {
-            	case 1 :
-            	    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1311:2: rule__Repository__Group_3_3__0
-            	    {
-            	    pushFollow(FollowSets000.FOLLOW_rule__Repository__Group_3_3__0_in_rule__Repository__Group_3__3__Impl2734);
-            	    rule__Repository__Group_3_3__0();
-
-            	    state._fsp--;
-
-
-            	    }
-            	    break;
-
-            	default :
-            	    break loop10;
-                }
-            } while (true);
-
-             after(grammarAccess.getRepositoryAccess().getGroup_3_3()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group_3__3__Impl"
-
-
-    // $ANTLR start "rule__Repository__Group_3__4"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1321:1: rule__Repository__Group_3__4 : rule__Repository__Group_3__4__Impl ;
-    public final void rule__Repository__Group_3__4() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1325:1: ( rule__Repository__Group_3__4__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1326:2: rule__Repository__Group_3__4__Impl
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group_3__4__Impl_in_rule__Repository__Group_3__42765);
-            rule__Repository__Group_3__4__Impl();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group_3__4"
-
-
-    // $ANTLR start "rule__Repository__Group_3__4__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1332:1: rule__Repository__Group_3__4__Impl : ( '}' ) ;
-    public final void rule__Repository__Group_3__4__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1336:1: ( ( '}' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1337:1: ( '}' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1337:1: ( '}' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1338:1: '}'
-            {
-             before(grammarAccess.getRepositoryAccess().getRightCurlyBracketKeyword_3_4()); 
-            match(input,21,FollowSets000.FOLLOW_21_in_rule__Repository__Group_3__4__Impl2793); 
-             after(grammarAccess.getRepositoryAccess().getRightCurlyBracketKeyword_3_4()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group_3__4__Impl"
-
-
-    // $ANTLR start "rule__Repository__Group_3_3__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1361:1: rule__Repository__Group_3_3__0 : rule__Repository__Group_3_3__0__Impl rule__Repository__Group_3_3__1 ;
-    public final void rule__Repository__Group_3_3__0() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1365:1: ( rule__Repository__Group_3_3__0__Impl rule__Repository__Group_3_3__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1366:2: rule__Repository__Group_3_3__0__Impl rule__Repository__Group_3_3__1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group_3_3__0__Impl_in_rule__Repository__Group_3_3__02834);
-            rule__Repository__Group_3_3__0__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group_3_3__1_in_rule__Repository__Group_3_3__02837);
-            rule__Repository__Group_3_3__1();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group_3_3__0"
-
-
-    // $ANTLR start "rule__Repository__Group_3_3__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1373:1: rule__Repository__Group_3_3__0__Impl : ( ',' ) ;
-    public final void rule__Repository__Group_3_3__0__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1377:1: ( ( ',' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1378:1: ( ',' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1378:1: ( ',' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1379:1: ','
-            {
-             before(grammarAccess.getRepositoryAccess().getCommaKeyword_3_3_0()); 
-            match(input,23,FollowSets000.FOLLOW_23_in_rule__Repository__Group_3_3__0__Impl2865); 
-             after(grammarAccess.getRepositoryAccess().getCommaKeyword_3_3_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group_3_3__0__Impl"
-
-
-    // $ANTLR start "rule__Repository__Group_3_3__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1392:1: rule__Repository__Group_3_3__1 : rule__Repository__Group_3_3__1__Impl ;
-    public final void rule__Repository__Group_3_3__1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1396:1: ( rule__Repository__Group_3_3__1__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1397:2: rule__Repository__Group_3_3__1__Impl
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group_3_3__1__Impl_in_rule__Repository__Group_3_3__12896);
-            rule__Repository__Group_3_3__1__Impl();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group_3_3__1"
-
-
-    // $ANTLR start "rule__Repository__Group_3_3__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1403:1: rule__Repository__Group_3_3__1__Impl : ( ( rule__Repository__ImportsAssignment_3_3_1 ) ) ;
-    public final void rule__Repository__Group_3_3__1__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1407:1: ( ( ( rule__Repository__ImportsAssignment_3_3_1 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1408:1: ( ( rule__Repository__ImportsAssignment_3_3_1 ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1408:1: ( ( rule__Repository__ImportsAssignment_3_3_1 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1409:1: ( rule__Repository__ImportsAssignment_3_3_1 )
-            {
-             before(grammarAccess.getRepositoryAccess().getImportsAssignment_3_3_1()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1410:1: ( rule__Repository__ImportsAssignment_3_3_1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1410:2: rule__Repository__ImportsAssignment_3_3_1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__ImportsAssignment_3_3_1_in_rule__Repository__Group_3_3__1__Impl2923);
-            rule__Repository__ImportsAssignment_3_3_1();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getRepositoryAccess().getImportsAssignment_3_3_1()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group_3_3__1__Impl"
-
-
-    // $ANTLR start "rule__Repository__Group_4__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1424:1: rule__Repository__Group_4__0 : rule__Repository__Group_4__0__Impl rule__Repository__Group_4__1 ;
-    public final void rule__Repository__Group_4__0() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1428:1: ( rule__Repository__Group_4__0__Impl rule__Repository__Group_4__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1429:2: rule__Repository__Group_4__0__Impl rule__Repository__Group_4__1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group_4__0__Impl_in_rule__Repository__Group_4__02957);
-            rule__Repository__Group_4__0__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group_4__1_in_rule__Repository__Group_4__02960);
-            rule__Repository__Group_4__1();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group_4__0"
-
-
-    // $ANTLR start "rule__Repository__Group_4__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1436:1: rule__Repository__Group_4__0__Impl : ( 'datatypes' ) ;
-    public final void rule__Repository__Group_4__0__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1440:1: ( ( 'datatypes' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1441:1: ( 'datatypes' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1441:1: ( 'datatypes' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1442:1: 'datatypes'
-            {
-             before(grammarAccess.getRepositoryAccess().getDatatypesKeyword_4_0()); 
-            match(input,24,FollowSets000.FOLLOW_24_in_rule__Repository__Group_4__0__Impl2988); 
-             after(grammarAccess.getRepositoryAccess().getDatatypesKeyword_4_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group_4__0__Impl"
-
-
-    // $ANTLR start "rule__Repository__Group_4__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1455:1: rule__Repository__Group_4__1 : rule__Repository__Group_4__1__Impl rule__Repository__Group_4__2 ;
-    public final void rule__Repository__Group_4__1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1459:1: ( rule__Repository__Group_4__1__Impl rule__Repository__Group_4__2 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1460:2: rule__Repository__Group_4__1__Impl rule__Repository__Group_4__2
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group_4__1__Impl_in_rule__Repository__Group_4__13019);
-            rule__Repository__Group_4__1__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group_4__2_in_rule__Repository__Group_4__13022);
-            rule__Repository__Group_4__2();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group_4__1"
-
-
-    // $ANTLR start "rule__Repository__Group_4__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1467:1: rule__Repository__Group_4__1__Impl : ( '{' ) ;
-    public final void rule__Repository__Group_4__1__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1471:1: ( ( '{' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1472:1: ( '{' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1472:1: ( '{' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1473:1: '{'
-            {
-             before(grammarAccess.getRepositoryAccess().getLeftCurlyBracketKeyword_4_1()); 
-            match(input,20,FollowSets000.FOLLOW_20_in_rule__Repository__Group_4__1__Impl3050); 
-             after(grammarAccess.getRepositoryAccess().getLeftCurlyBracketKeyword_4_1()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group_4__1__Impl"
-
-
-    // $ANTLR start "rule__Repository__Group_4__2"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1486:1: rule__Repository__Group_4__2 : rule__Repository__Group_4__2__Impl rule__Repository__Group_4__3 ;
-    public final void rule__Repository__Group_4__2() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1490:1: ( rule__Repository__Group_4__2__Impl rule__Repository__Group_4__3 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1491:2: rule__Repository__Group_4__2__Impl rule__Repository__Group_4__3
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group_4__2__Impl_in_rule__Repository__Group_4__23081);
-            rule__Repository__Group_4__2__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group_4__3_in_rule__Repository__Group_4__23084);
-            rule__Repository__Group_4__3();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group_4__2"
-
-
-    // $ANTLR start "rule__Repository__Group_4__2__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1498:1: rule__Repository__Group_4__2__Impl : ( ( rule__Repository__DatatypesAssignment_4_2 ) ) ;
-    public final void rule__Repository__Group_4__2__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1502:1: ( ( ( rule__Repository__DatatypesAssignment_4_2 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1503:1: ( ( rule__Repository__DatatypesAssignment_4_2 ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1503:1: ( ( rule__Repository__DatatypesAssignment_4_2 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1504:1: ( rule__Repository__DatatypesAssignment_4_2 )
-            {
-             before(grammarAccess.getRepositoryAccess().getDatatypesAssignment_4_2()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1505:1: ( rule__Repository__DatatypesAssignment_4_2 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1505:2: rule__Repository__DatatypesAssignment_4_2
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__DatatypesAssignment_4_2_in_rule__Repository__Group_4__2__Impl3111);
-            rule__Repository__DatatypesAssignment_4_2();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getRepositoryAccess().getDatatypesAssignment_4_2()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group_4__2__Impl"
-
-
-    // $ANTLR start "rule__Repository__Group_4__3"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1515:1: rule__Repository__Group_4__3 : rule__Repository__Group_4__3__Impl rule__Repository__Group_4__4 ;
-    public final void rule__Repository__Group_4__3() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1519:1: ( rule__Repository__Group_4__3__Impl rule__Repository__Group_4__4 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1520:2: rule__Repository__Group_4__3__Impl rule__Repository__Group_4__4
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group_4__3__Impl_in_rule__Repository__Group_4__33141);
-            rule__Repository__Group_4__3__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group_4__4_in_rule__Repository__Group_4__33144);
-            rule__Repository__Group_4__4();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group_4__3"
-
-
-    // $ANTLR start "rule__Repository__Group_4__3__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1527:1: rule__Repository__Group_4__3__Impl : ( ( rule__Repository__Group_4_3__0 )* ) ;
-    public final void rule__Repository__Group_4__3__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1531:1: ( ( ( rule__Repository__Group_4_3__0 )* ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1532:1: ( ( rule__Repository__Group_4_3__0 )* )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1532:1: ( ( rule__Repository__Group_4_3__0 )* )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1533:1: ( rule__Repository__Group_4_3__0 )*
-            {
-             before(grammarAccess.getRepositoryAccess().getGroup_4_3()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1534:1: ( rule__Repository__Group_4_3__0 )*
-            loop11:
-            do {
-                int alt11=2;
-                int LA11_0 = input.LA(1);
-
-                if ( (LA11_0==23) ) {
-                    alt11=1;
-                }
-
-
-                switch (alt11) {
-            	case 1 :
-            	    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1534:2: rule__Repository__Group_4_3__0
-            	    {
-            	    pushFollow(FollowSets000.FOLLOW_rule__Repository__Group_4_3__0_in_rule__Repository__Group_4__3__Impl3171);
-            	    rule__Repository__Group_4_3__0();
-
-            	    state._fsp--;
-
-
-            	    }
-            	    break;
-
-            	default :
-            	    break loop11;
-                }
-            } while (true);
-
-             after(grammarAccess.getRepositoryAccess().getGroup_4_3()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group_4__3__Impl"
-
-
-    // $ANTLR start "rule__Repository__Group_4__4"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1544:1: rule__Repository__Group_4__4 : rule__Repository__Group_4__4__Impl ;
-    public final void rule__Repository__Group_4__4() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1548:1: ( rule__Repository__Group_4__4__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1549:2: rule__Repository__Group_4__4__Impl
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group_4__4__Impl_in_rule__Repository__Group_4__43202);
-            rule__Repository__Group_4__4__Impl();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group_4__4"
-
-
-    // $ANTLR start "rule__Repository__Group_4__4__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1555:1: rule__Repository__Group_4__4__Impl : ( '}' ) ;
-    public final void rule__Repository__Group_4__4__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1559:1: ( ( '}' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1560:1: ( '}' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1560:1: ( '}' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1561:1: '}'
-            {
-             before(grammarAccess.getRepositoryAccess().getRightCurlyBracketKeyword_4_4()); 
-            match(input,21,FollowSets000.FOLLOW_21_in_rule__Repository__Group_4__4__Impl3230); 
-             after(grammarAccess.getRepositoryAccess().getRightCurlyBracketKeyword_4_4()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group_4__4__Impl"
-
-
-    // $ANTLR start "rule__Repository__Group_4_3__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1584:1: rule__Repository__Group_4_3__0 : rule__Repository__Group_4_3__0__Impl rule__Repository__Group_4_3__1 ;
-    public final void rule__Repository__Group_4_3__0() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1588:1: ( rule__Repository__Group_4_3__0__Impl rule__Repository__Group_4_3__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1589:2: rule__Repository__Group_4_3__0__Impl rule__Repository__Group_4_3__1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group_4_3__0__Impl_in_rule__Repository__Group_4_3__03271);
-            rule__Repository__Group_4_3__0__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group_4_3__1_in_rule__Repository__Group_4_3__03274);
-            rule__Repository__Group_4_3__1();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group_4_3__0"
-
-
-    // $ANTLR start "rule__Repository__Group_4_3__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1596:1: rule__Repository__Group_4_3__0__Impl : ( ',' ) ;
-    public final void rule__Repository__Group_4_3__0__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1600:1: ( ( ',' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1601:1: ( ',' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1601:1: ( ',' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1602:1: ','
-            {
-             before(grammarAccess.getRepositoryAccess().getCommaKeyword_4_3_0()); 
-            match(input,23,FollowSets000.FOLLOW_23_in_rule__Repository__Group_4_3__0__Impl3302); 
-             after(grammarAccess.getRepositoryAccess().getCommaKeyword_4_3_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group_4_3__0__Impl"
-
-
-    // $ANTLR start "rule__Repository__Group_4_3__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1615:1: rule__Repository__Group_4_3__1 : rule__Repository__Group_4_3__1__Impl ;
-    public final void rule__Repository__Group_4_3__1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1619:1: ( rule__Repository__Group_4_3__1__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1620:2: rule__Repository__Group_4_3__1__Impl
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group_4_3__1__Impl_in_rule__Repository__Group_4_3__13333);
-            rule__Repository__Group_4_3__1__Impl();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group_4_3__1"
-
-
-    // $ANTLR start "rule__Repository__Group_4_3__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1626:1: rule__Repository__Group_4_3__1__Impl : ( ( rule__Repository__DatatypesAssignment_4_3_1 ) ) ;
-    public final void rule__Repository__Group_4_3__1__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1630:1: ( ( ( rule__Repository__DatatypesAssignment_4_3_1 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1631:1: ( ( rule__Repository__DatatypesAssignment_4_3_1 ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1631:1: ( ( rule__Repository__DatatypesAssignment_4_3_1 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1632:1: ( rule__Repository__DatatypesAssignment_4_3_1 )
-            {
-             before(grammarAccess.getRepositoryAccess().getDatatypesAssignment_4_3_1()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1633:1: ( rule__Repository__DatatypesAssignment_4_3_1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1633:2: rule__Repository__DatatypesAssignment_4_3_1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__DatatypesAssignment_4_3_1_in_rule__Repository__Group_4_3__1__Impl3360);
-            rule__Repository__DatatypesAssignment_4_3_1();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getRepositoryAccess().getDatatypesAssignment_4_3_1()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group_4_3__1__Impl"
-
-
-    // $ANTLR start "rule__Repository__Group_5__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1647:1: rule__Repository__Group_5__0 : rule__Repository__Group_5__0__Impl rule__Repository__Group_5__1 ;
-    public final void rule__Repository__Group_5__0() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1651:1: ( rule__Repository__Group_5__0__Impl rule__Repository__Group_5__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1652:2: rule__Repository__Group_5__0__Impl rule__Repository__Group_5__1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group_5__0__Impl_in_rule__Repository__Group_5__03394);
-            rule__Repository__Group_5__0__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group_5__1_in_rule__Repository__Group_5__03397);
-            rule__Repository__Group_5__1();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group_5__0"
-
-
-    // $ANTLR start "rule__Repository__Group_5__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1659:1: rule__Repository__Group_5__0__Impl : ( 'components' ) ;
-    public final void rule__Repository__Group_5__0__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1663:1: ( ( 'components' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1664:1: ( 'components' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1664:1: ( 'components' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1665:1: 'components'
-            {
-             before(grammarAccess.getRepositoryAccess().getComponentsKeyword_5_0()); 
-            match(input,25,FollowSets000.FOLLOW_25_in_rule__Repository__Group_5__0__Impl3425); 
-             after(grammarAccess.getRepositoryAccess().getComponentsKeyword_5_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group_5__0__Impl"
-
-
-    // $ANTLR start "rule__Repository__Group_5__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1678:1: rule__Repository__Group_5__1 : rule__Repository__Group_5__1__Impl rule__Repository__Group_5__2 ;
-    public final void rule__Repository__Group_5__1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1682:1: ( rule__Repository__Group_5__1__Impl rule__Repository__Group_5__2 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1683:2: rule__Repository__Group_5__1__Impl rule__Repository__Group_5__2
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group_5__1__Impl_in_rule__Repository__Group_5__13456);
-            rule__Repository__Group_5__1__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group_5__2_in_rule__Repository__Group_5__13459);
-            rule__Repository__Group_5__2();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group_5__1"
-
-
-    // $ANTLR start "rule__Repository__Group_5__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1690:1: rule__Repository__Group_5__1__Impl : ( '{' ) ;
-    public final void rule__Repository__Group_5__1__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1694:1: ( ( '{' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1695:1: ( '{' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1695:1: ( '{' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1696:1: '{'
-            {
-             before(grammarAccess.getRepositoryAccess().getLeftCurlyBracketKeyword_5_1()); 
-            match(input,20,FollowSets000.FOLLOW_20_in_rule__Repository__Group_5__1__Impl3487); 
-             after(grammarAccess.getRepositoryAccess().getLeftCurlyBracketKeyword_5_1()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group_5__1__Impl"
-
-
-    // $ANTLR start "rule__Repository__Group_5__2"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1709:1: rule__Repository__Group_5__2 : rule__Repository__Group_5__2__Impl rule__Repository__Group_5__3 ;
-    public final void rule__Repository__Group_5__2() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1713:1: ( rule__Repository__Group_5__2__Impl rule__Repository__Group_5__3 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1714:2: rule__Repository__Group_5__2__Impl rule__Repository__Group_5__3
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group_5__2__Impl_in_rule__Repository__Group_5__23518);
-            rule__Repository__Group_5__2__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group_5__3_in_rule__Repository__Group_5__23521);
-            rule__Repository__Group_5__3();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group_5__2"
-
-
-    // $ANTLR start "rule__Repository__Group_5__2__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1721:1: rule__Repository__Group_5__2__Impl : ( ( rule__Repository__ComponentsAssignment_5_2 ) ) ;
-    public final void rule__Repository__Group_5__2__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1725:1: ( ( ( rule__Repository__ComponentsAssignment_5_2 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1726:1: ( ( rule__Repository__ComponentsAssignment_5_2 ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1726:1: ( ( rule__Repository__ComponentsAssignment_5_2 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1727:1: ( rule__Repository__ComponentsAssignment_5_2 )
-            {
-             before(grammarAccess.getRepositoryAccess().getComponentsAssignment_5_2()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1728:1: ( rule__Repository__ComponentsAssignment_5_2 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1728:2: rule__Repository__ComponentsAssignment_5_2
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__ComponentsAssignment_5_2_in_rule__Repository__Group_5__2__Impl3548);
-            rule__Repository__ComponentsAssignment_5_2();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getRepositoryAccess().getComponentsAssignment_5_2()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group_5__2__Impl"
-
-
-    // $ANTLR start "rule__Repository__Group_5__3"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1738:1: rule__Repository__Group_5__3 : rule__Repository__Group_5__3__Impl rule__Repository__Group_5__4 ;
-    public final void rule__Repository__Group_5__3() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1742:1: ( rule__Repository__Group_5__3__Impl rule__Repository__Group_5__4 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1743:2: rule__Repository__Group_5__3__Impl rule__Repository__Group_5__4
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group_5__3__Impl_in_rule__Repository__Group_5__33578);
-            rule__Repository__Group_5__3__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group_5__4_in_rule__Repository__Group_5__33581);
-            rule__Repository__Group_5__4();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group_5__3"
-
-
-    // $ANTLR start "rule__Repository__Group_5__3__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1750:1: rule__Repository__Group_5__3__Impl : ( ( rule__Repository__Group_5_3__0 )* ) ;
-    public final void rule__Repository__Group_5__3__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1754:1: ( ( ( rule__Repository__Group_5_3__0 )* ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1755:1: ( ( rule__Repository__Group_5_3__0 )* )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1755:1: ( ( rule__Repository__Group_5_3__0 )* )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1756:1: ( rule__Repository__Group_5_3__0 )*
-            {
-             before(grammarAccess.getRepositoryAccess().getGroup_5_3()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1757:1: ( rule__Repository__Group_5_3__0 )*
-            loop12:
-            do {
-                int alt12=2;
-                int LA12_0 = input.LA(1);
-
-                if ( (LA12_0==26) ) {
-                    alt12=1;
-                }
-
-
-                switch (alt12) {
-            	case 1 :
-            	    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1757:2: rule__Repository__Group_5_3__0
-            	    {
-            	    pushFollow(FollowSets000.FOLLOW_rule__Repository__Group_5_3__0_in_rule__Repository__Group_5__3__Impl3608);
-            	    rule__Repository__Group_5_3__0();
-
-            	    state._fsp--;
-
-
-            	    }
-            	    break;
-
-            	default :
-            	    break loop12;
-                }
-            } while (true);
-
-             after(grammarAccess.getRepositoryAccess().getGroup_5_3()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group_5__3__Impl"
-
-
-    // $ANTLR start "rule__Repository__Group_5__4"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1767:1: rule__Repository__Group_5__4 : rule__Repository__Group_5__4__Impl ;
-    public final void rule__Repository__Group_5__4() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1771:1: ( rule__Repository__Group_5__4__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1772:2: rule__Repository__Group_5__4__Impl
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group_5__4__Impl_in_rule__Repository__Group_5__43639);
-            rule__Repository__Group_5__4__Impl();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group_5__4"
-
-
-    // $ANTLR start "rule__Repository__Group_5__4__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1778:1: rule__Repository__Group_5__4__Impl : ( '}' ) ;
-    public final void rule__Repository__Group_5__4__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1782:1: ( ( '}' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1783:1: ( '}' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1783:1: ( '}' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1784:1: '}'
-            {
-             before(grammarAccess.getRepositoryAccess().getRightCurlyBracketKeyword_5_4()); 
-            match(input,21,FollowSets000.FOLLOW_21_in_rule__Repository__Group_5__4__Impl3667); 
-             after(grammarAccess.getRepositoryAccess().getRightCurlyBracketKeyword_5_4()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group_5__4__Impl"
-
-
-    // $ANTLR start "rule__Repository__Group_5_3__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1807:1: rule__Repository__Group_5_3__0 : rule__Repository__Group_5_3__0__Impl rule__Repository__Group_5_3__1 ;
-    public final void rule__Repository__Group_5_3__0() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1811:1: ( rule__Repository__Group_5_3__0__Impl rule__Repository__Group_5_3__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1812:2: rule__Repository__Group_5_3__0__Impl rule__Repository__Group_5_3__1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group_5_3__0__Impl_in_rule__Repository__Group_5_3__03708);
-            rule__Repository__Group_5_3__0__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group_5_3__1_in_rule__Repository__Group_5_3__03711);
-            rule__Repository__Group_5_3__1();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group_5_3__0"
-
-
-    // $ANTLR start "rule__Repository__Group_5_3__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1819:1: rule__Repository__Group_5_3__0__Impl : ( ';' ) ;
-    public final void rule__Repository__Group_5_3__0__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1823:1: ( ( ';' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1824:1: ( ';' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1824:1: ( ';' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1825:1: ';'
-            {
-             before(grammarAccess.getRepositoryAccess().getSemicolonKeyword_5_3_0()); 
-            match(input,26,FollowSets000.FOLLOW_26_in_rule__Repository__Group_5_3__0__Impl3739); 
-             after(grammarAccess.getRepositoryAccess().getSemicolonKeyword_5_3_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group_5_3__0__Impl"
-
-
-    // $ANTLR start "rule__Repository__Group_5_3__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1838:1: rule__Repository__Group_5_3__1 : rule__Repository__Group_5_3__1__Impl ;
-    public final void rule__Repository__Group_5_3__1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1842:1: ( rule__Repository__Group_5_3__1__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1843:2: rule__Repository__Group_5_3__1__Impl
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group_5_3__1__Impl_in_rule__Repository__Group_5_3__13770);
-            rule__Repository__Group_5_3__1__Impl();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group_5_3__1"
-
-
-    // $ANTLR start "rule__Repository__Group_5_3__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1849:1: rule__Repository__Group_5_3__1__Impl : ( ( rule__Repository__ComponentsAssignment_5_3_1 ) ) ;
-    public final void rule__Repository__Group_5_3__1__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1853:1: ( ( ( rule__Repository__ComponentsAssignment_5_3_1 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1854:1: ( ( rule__Repository__ComponentsAssignment_5_3_1 ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1854:1: ( ( rule__Repository__ComponentsAssignment_5_3_1 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1855:1: ( rule__Repository__ComponentsAssignment_5_3_1 )
-            {
-             before(grammarAccess.getRepositoryAccess().getComponentsAssignment_5_3_1()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1856:1: ( rule__Repository__ComponentsAssignment_5_3_1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1856:2: rule__Repository__ComponentsAssignment_5_3_1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__ComponentsAssignment_5_3_1_in_rule__Repository__Group_5_3__1__Impl3797);
-            rule__Repository__ComponentsAssignment_5_3_1();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getRepositoryAccess().getComponentsAssignment_5_3_1()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group_5_3__1__Impl"
-
-
-    // $ANTLR start "rule__Repository__Group_6__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1870:1: rule__Repository__Group_6__0 : rule__Repository__Group_6__0__Impl rule__Repository__Group_6__1 ;
-    public final void rule__Repository__Group_6__0() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1874:1: ( rule__Repository__Group_6__0__Impl rule__Repository__Group_6__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1875:2: rule__Repository__Group_6__0__Impl rule__Repository__Group_6__1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group_6__0__Impl_in_rule__Repository__Group_6__03831);
-            rule__Repository__Group_6__0__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group_6__1_in_rule__Repository__Group_6__03834);
-            rule__Repository__Group_6__1();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group_6__0"
-
-
-    // $ANTLR start "rule__Repository__Group_6__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1882:1: rule__Repository__Group_6__0__Impl : ( 'interfaces' ) ;
-    public final void rule__Repository__Group_6__0__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1886:1: ( ( 'interfaces' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1887:1: ( 'interfaces' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1887:1: ( 'interfaces' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1888:1: 'interfaces'
-            {
-             before(grammarAccess.getRepositoryAccess().getInterfacesKeyword_6_0()); 
-            match(input,27,FollowSets000.FOLLOW_27_in_rule__Repository__Group_6__0__Impl3862); 
-             after(grammarAccess.getRepositoryAccess().getInterfacesKeyword_6_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group_6__0__Impl"
-
-
-    // $ANTLR start "rule__Repository__Group_6__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1901:1: rule__Repository__Group_6__1 : rule__Repository__Group_6__1__Impl rule__Repository__Group_6__2 ;
-    public final void rule__Repository__Group_6__1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1905:1: ( rule__Repository__Group_6__1__Impl rule__Repository__Group_6__2 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1906:2: rule__Repository__Group_6__1__Impl rule__Repository__Group_6__2
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group_6__1__Impl_in_rule__Repository__Group_6__13893);
-            rule__Repository__Group_6__1__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group_6__2_in_rule__Repository__Group_6__13896);
-            rule__Repository__Group_6__2();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group_6__1"
-
-
-    // $ANTLR start "rule__Repository__Group_6__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1913:1: rule__Repository__Group_6__1__Impl : ( '{' ) ;
-    public final void rule__Repository__Group_6__1__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1917:1: ( ( '{' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1918:1: ( '{' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1918:1: ( '{' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1919:1: '{'
-            {
-             before(grammarAccess.getRepositoryAccess().getLeftCurlyBracketKeyword_6_1()); 
-            match(input,20,FollowSets000.FOLLOW_20_in_rule__Repository__Group_6__1__Impl3924); 
-             after(grammarAccess.getRepositoryAccess().getLeftCurlyBracketKeyword_6_1()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group_6__1__Impl"
-
-
-    // $ANTLR start "rule__Repository__Group_6__2"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1932:1: rule__Repository__Group_6__2 : rule__Repository__Group_6__2__Impl rule__Repository__Group_6__3 ;
-    public final void rule__Repository__Group_6__2() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1936:1: ( rule__Repository__Group_6__2__Impl rule__Repository__Group_6__3 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1937:2: rule__Repository__Group_6__2__Impl rule__Repository__Group_6__3
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group_6__2__Impl_in_rule__Repository__Group_6__23955);
-            rule__Repository__Group_6__2__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group_6__3_in_rule__Repository__Group_6__23958);
-            rule__Repository__Group_6__3();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group_6__2"
-
-
-    // $ANTLR start "rule__Repository__Group_6__2__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1944:1: rule__Repository__Group_6__2__Impl : ( ( rule__Repository__InterfacesAssignment_6_2 ) ) ;
-    public final void rule__Repository__Group_6__2__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1948:1: ( ( ( rule__Repository__InterfacesAssignment_6_2 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1949:1: ( ( rule__Repository__InterfacesAssignment_6_2 ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1949:1: ( ( rule__Repository__InterfacesAssignment_6_2 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1950:1: ( rule__Repository__InterfacesAssignment_6_2 )
-            {
-             before(grammarAccess.getRepositoryAccess().getInterfacesAssignment_6_2()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1951:1: ( rule__Repository__InterfacesAssignment_6_2 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1951:2: rule__Repository__InterfacesAssignment_6_2
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__InterfacesAssignment_6_2_in_rule__Repository__Group_6__2__Impl3985);
-            rule__Repository__InterfacesAssignment_6_2();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getRepositoryAccess().getInterfacesAssignment_6_2()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group_6__2__Impl"
-
-
-    // $ANTLR start "rule__Repository__Group_6__3"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1961:1: rule__Repository__Group_6__3 : rule__Repository__Group_6__3__Impl rule__Repository__Group_6__4 ;
-    public final void rule__Repository__Group_6__3() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1965:1: ( rule__Repository__Group_6__3__Impl rule__Repository__Group_6__4 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1966:2: rule__Repository__Group_6__3__Impl rule__Repository__Group_6__4
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group_6__3__Impl_in_rule__Repository__Group_6__34015);
-            rule__Repository__Group_6__3__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group_6__4_in_rule__Repository__Group_6__34018);
-            rule__Repository__Group_6__4();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group_6__3"
-
-
-    // $ANTLR start "rule__Repository__Group_6__3__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1973:1: rule__Repository__Group_6__3__Impl : ( ( rule__Repository__Group_6_3__0 )* ) ;
-    public final void rule__Repository__Group_6__3__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1977:1: ( ( ( rule__Repository__Group_6_3__0 )* ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1978:1: ( ( rule__Repository__Group_6_3__0 )* )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1978:1: ( ( rule__Repository__Group_6_3__0 )* )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1979:1: ( rule__Repository__Group_6_3__0 )*
-            {
-             before(grammarAccess.getRepositoryAccess().getGroup_6_3()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1980:1: ( rule__Repository__Group_6_3__0 )*
-            loop13:
-            do {
-                int alt13=2;
-                int LA13_0 = input.LA(1);
-
-                if ( (LA13_0==23) ) {
-                    alt13=1;
-                }
-
-
-                switch (alt13) {
-            	case 1 :
-            	    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1980:2: rule__Repository__Group_6_3__0
-            	    {
-            	    pushFollow(FollowSets000.FOLLOW_rule__Repository__Group_6_3__0_in_rule__Repository__Group_6__3__Impl4045);
-            	    rule__Repository__Group_6_3__0();
-
-            	    state._fsp--;
-
-
-            	    }
-            	    break;
-
-            	default :
-            	    break loop13;
-                }
-            } while (true);
-
-             after(grammarAccess.getRepositoryAccess().getGroup_6_3()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group_6__3__Impl"
-
-
-    // $ANTLR start "rule__Repository__Group_6__4"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1990:1: rule__Repository__Group_6__4 : rule__Repository__Group_6__4__Impl ;
-    public final void rule__Repository__Group_6__4() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1994:1: ( rule__Repository__Group_6__4__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1995:2: rule__Repository__Group_6__4__Impl
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group_6__4__Impl_in_rule__Repository__Group_6__44076);
-            rule__Repository__Group_6__4__Impl();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group_6__4"
-
-
-    // $ANTLR start "rule__Repository__Group_6__4__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2001:1: rule__Repository__Group_6__4__Impl : ( '}' ) ;
-    public final void rule__Repository__Group_6__4__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2005:1: ( ( '}' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2006:1: ( '}' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2006:1: ( '}' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2007:1: '}'
-            {
-             before(grammarAccess.getRepositoryAccess().getRightCurlyBracketKeyword_6_4()); 
-            match(input,21,FollowSets000.FOLLOW_21_in_rule__Repository__Group_6__4__Impl4104); 
-             after(grammarAccess.getRepositoryAccess().getRightCurlyBracketKeyword_6_4()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group_6__4__Impl"
-
-
-    // $ANTLR start "rule__Repository__Group_6_3__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2030:1: rule__Repository__Group_6_3__0 : rule__Repository__Group_6_3__0__Impl rule__Repository__Group_6_3__1 ;
-    public final void rule__Repository__Group_6_3__0() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2034:1: ( rule__Repository__Group_6_3__0__Impl rule__Repository__Group_6_3__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2035:2: rule__Repository__Group_6_3__0__Impl rule__Repository__Group_6_3__1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group_6_3__0__Impl_in_rule__Repository__Group_6_3__04145);
-            rule__Repository__Group_6_3__0__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group_6_3__1_in_rule__Repository__Group_6_3__04148);
-            rule__Repository__Group_6_3__1();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group_6_3__0"
-
-
-    // $ANTLR start "rule__Repository__Group_6_3__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2042:1: rule__Repository__Group_6_3__0__Impl : ( ',' ) ;
-    public final void rule__Repository__Group_6_3__0__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2046:1: ( ( ',' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2047:1: ( ',' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2047:1: ( ',' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2048:1: ','
-            {
-             before(grammarAccess.getRepositoryAccess().getCommaKeyword_6_3_0()); 
-            match(input,23,FollowSets000.FOLLOW_23_in_rule__Repository__Group_6_3__0__Impl4176); 
-             after(grammarAccess.getRepositoryAccess().getCommaKeyword_6_3_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group_6_3__0__Impl"
-
-
-    // $ANTLR start "rule__Repository__Group_6_3__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2061:1: rule__Repository__Group_6_3__1 : rule__Repository__Group_6_3__1__Impl ;
-    public final void rule__Repository__Group_6_3__1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2065:1: ( rule__Repository__Group_6_3__1__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2066:2: rule__Repository__Group_6_3__1__Impl
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group_6_3__1__Impl_in_rule__Repository__Group_6_3__14207);
-            rule__Repository__Group_6_3__1__Impl();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group_6_3__1"
-
-
-    // $ANTLR start "rule__Repository__Group_6_3__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2072:1: rule__Repository__Group_6_3__1__Impl : ( ( rule__Repository__InterfacesAssignment_6_3_1 ) ) ;
-    public final void rule__Repository__Group_6_3__1__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2076:1: ( ( ( rule__Repository__InterfacesAssignment_6_3_1 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2077:1: ( ( rule__Repository__InterfacesAssignment_6_3_1 ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2077:1: ( ( rule__Repository__InterfacesAssignment_6_3_1 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2078:1: ( rule__Repository__InterfacesAssignment_6_3_1 )
-            {
-             before(grammarAccess.getRepositoryAccess().getInterfacesAssignment_6_3_1()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2079:1: ( rule__Repository__InterfacesAssignment_6_3_1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2079:2: rule__Repository__InterfacesAssignment_6_3_1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__InterfacesAssignment_6_3_1_in_rule__Repository__Group_6_3__1__Impl4234);
-            rule__Repository__InterfacesAssignment_6_3_1();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getRepositoryAccess().getInterfacesAssignment_6_3_1()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group_6_3__1__Impl"
-
-
-    // $ANTLR start "rule__Import__Group__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2093:1: rule__Import__Group__0 : rule__Import__Group__0__Impl rule__Import__Group__1 ;
-    public final void rule__Import__Group__0() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2097:1: ( rule__Import__Group__0__Impl rule__Import__Group__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2098:2: rule__Import__Group__0__Impl rule__Import__Group__1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Import__Group__0__Impl_in_rule__Import__Group__04268);
-            rule__Import__Group__0__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__Import__Group__1_in_rule__Import__Group__04271);
-            rule__Import__Group__1();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Import__Group__0"
-
-
-    // $ANTLR start "rule__Import__Group__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2105:1: rule__Import__Group__0__Impl : ( 'import' ) ;
-    public final void rule__Import__Group__0__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2109:1: ( ( 'import' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2110:1: ( 'import' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2110:1: ( 'import' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2111:1: 'import'
-            {
-             before(grammarAccess.getImportAccess().getImportKeyword_0()); 
-            match(input,28,FollowSets000.FOLLOW_28_in_rule__Import__Group__0__Impl4299); 
-             after(grammarAccess.getImportAccess().getImportKeyword_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Import__Group__0__Impl"
-
-
-    // $ANTLR start "rule__Import__Group__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2124:1: rule__Import__Group__1 : rule__Import__Group__1__Impl ;
-    public final void rule__Import__Group__1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2128:1: ( rule__Import__Group__1__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2129:2: rule__Import__Group__1__Impl
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Import__Group__1__Impl_in_rule__Import__Group__14330);
-            rule__Import__Group__1__Impl();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Import__Group__1"
-
-
-    // $ANTLR start "rule__Import__Group__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2135:1: rule__Import__Group__1__Impl : ( ( rule__Import__ImportedNamespaceAssignment_1 ) ) ;
-    public final void rule__Import__Group__1__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2139:1: ( ( ( rule__Import__ImportedNamespaceAssignment_1 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2140:1: ( ( rule__Import__ImportedNamespaceAssignment_1 ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2140:1: ( ( rule__Import__ImportedNamespaceAssignment_1 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2141:1: ( rule__Import__ImportedNamespaceAssignment_1 )
-            {
-             before(grammarAccess.getImportAccess().getImportedNamespaceAssignment_1()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2142:1: ( rule__Import__ImportedNamespaceAssignment_1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2142:2: rule__Import__ImportedNamespaceAssignment_1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Import__ImportedNamespaceAssignment_1_in_rule__Import__Group__1__Impl4357);
-            rule__Import__ImportedNamespaceAssignment_1();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getImportAccess().getImportedNamespaceAssignment_1()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Import__Group__1__Impl"
-
-
-    // $ANTLR start "rule__QualifiedNameWithWildCard__Group__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2156:1: rule__QualifiedNameWithWildCard__Group__0 : rule__QualifiedNameWithWildCard__Group__0__Impl rule__QualifiedNameWithWildCard__Group__1 ;
-    public final void rule__QualifiedNameWithWildCard__Group__0() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2160:1: ( rule__QualifiedNameWithWildCard__Group__0__Impl rule__QualifiedNameWithWildCard__Group__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2161:2: rule__QualifiedNameWithWildCard__Group__0__Impl rule__QualifiedNameWithWildCard__Group__1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__QualifiedNameWithWildCard__Group__0__Impl_in_rule__QualifiedNameWithWildCard__Group__04391);
-            rule__QualifiedNameWithWildCard__Group__0__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__QualifiedNameWithWildCard__Group__1_in_rule__QualifiedNameWithWildCard__Group__04394);
-            rule__QualifiedNameWithWildCard__Group__1();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__QualifiedNameWithWildCard__Group__0"
-
-
-    // $ANTLR start "rule__QualifiedNameWithWildCard__Group__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2168:1: rule__QualifiedNameWithWildCard__Group__0__Impl : ( ruleQualifiedName ) ;
-    public final void rule__QualifiedNameWithWildCard__Group__0__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2172:1: ( ( ruleQualifiedName ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2173:1: ( ruleQualifiedName )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2173:1: ( ruleQualifiedName )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2174:1: ruleQualifiedName
-            {
-             before(grammarAccess.getQualifiedNameWithWildCardAccess().getQualifiedNameParserRuleCall_0()); 
-            pushFollow(FollowSets000.FOLLOW_ruleQualifiedName_in_rule__QualifiedNameWithWildCard__Group__0__Impl4421);
-            ruleQualifiedName();
-
-            state._fsp--;
-
-             after(grammarAccess.getQualifiedNameWithWildCardAccess().getQualifiedNameParserRuleCall_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__QualifiedNameWithWildCard__Group__0__Impl"
-
-
-    // $ANTLR start "rule__QualifiedNameWithWildCard__Group__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2185:1: rule__QualifiedNameWithWildCard__Group__1 : rule__QualifiedNameWithWildCard__Group__1__Impl ;
-    public final void rule__QualifiedNameWithWildCard__Group__1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2189:1: ( rule__QualifiedNameWithWildCard__Group__1__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2190:2: rule__QualifiedNameWithWildCard__Group__1__Impl
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__QualifiedNameWithWildCard__Group__1__Impl_in_rule__QualifiedNameWithWildCard__Group__14450);
-            rule__QualifiedNameWithWildCard__Group__1__Impl();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__QualifiedNameWithWildCard__Group__1"
-
-
-    // $ANTLR start "rule__QualifiedNameWithWildCard__Group__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2196:1: rule__QualifiedNameWithWildCard__Group__1__Impl : ( ( rule__QualifiedNameWithWildCard__Group_1__0 )? ) ;
-    public final void rule__QualifiedNameWithWildCard__Group__1__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2200:1: ( ( ( rule__QualifiedNameWithWildCard__Group_1__0 )? ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2201:1: ( ( rule__QualifiedNameWithWildCard__Group_1__0 )? )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2201:1: ( ( rule__QualifiedNameWithWildCard__Group_1__0 )? )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2202:1: ( rule__QualifiedNameWithWildCard__Group_1__0 )?
-            {
-             before(grammarAccess.getQualifiedNameWithWildCardAccess().getGroup_1()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2203:1: ( rule__QualifiedNameWithWildCard__Group_1__0 )?
-            int alt14=2;
-            int LA14_0 = input.LA(1);
-
-            if ( (LA14_0==29) ) {
-                alt14=1;
-            }
-            switch (alt14) {
-                case 1 :
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2203:2: rule__QualifiedNameWithWildCard__Group_1__0
-                    {
-                    pushFollow(FollowSets000.FOLLOW_rule__QualifiedNameWithWildCard__Group_1__0_in_rule__QualifiedNameWithWildCard__Group__1__Impl4477);
-                    rule__QualifiedNameWithWildCard__Group_1__0();
-
-                    state._fsp--;
-
-
-                    }
-                    break;
-
-            }
-
-             after(grammarAccess.getQualifiedNameWithWildCardAccess().getGroup_1()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__QualifiedNameWithWildCard__Group__1__Impl"
-
-
-    // $ANTLR start "rule__QualifiedNameWithWildCard__Group_1__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2217:1: rule__QualifiedNameWithWildCard__Group_1__0 : rule__QualifiedNameWithWildCard__Group_1__0__Impl rule__QualifiedNameWithWildCard__Group_1__1 ;
-    public final void rule__QualifiedNameWithWildCard__Group_1__0() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2221:1: ( rule__QualifiedNameWithWildCard__Group_1__0__Impl rule__QualifiedNameWithWildCard__Group_1__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2222:2: rule__QualifiedNameWithWildCard__Group_1__0__Impl rule__QualifiedNameWithWildCard__Group_1__1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__QualifiedNameWithWildCard__Group_1__0__Impl_in_rule__QualifiedNameWithWildCard__Group_1__04512);
-            rule__QualifiedNameWithWildCard__Group_1__0__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__QualifiedNameWithWildCard__Group_1__1_in_rule__QualifiedNameWithWildCard__Group_1__04515);
-            rule__QualifiedNameWithWildCard__Group_1__1();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__QualifiedNameWithWildCard__Group_1__0"
-
-
-    // $ANTLR start "rule__QualifiedNameWithWildCard__Group_1__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2229:1: rule__QualifiedNameWithWildCard__Group_1__0__Impl : ( '.' ) ;
-    public final void rule__QualifiedNameWithWildCard__Group_1__0__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2233:1: ( ( '.' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2234:1: ( '.' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2234:1: ( '.' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2235:1: '.'
-            {
-             before(grammarAccess.getQualifiedNameWithWildCardAccess().getFullStopKeyword_1_0()); 
-            match(input,29,FollowSets000.FOLLOW_29_in_rule__QualifiedNameWithWildCard__Group_1__0__Impl4543); 
-             after(grammarAccess.getQualifiedNameWithWildCardAccess().getFullStopKeyword_1_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__QualifiedNameWithWildCard__Group_1__0__Impl"
-
-
-    // $ANTLR start "rule__QualifiedNameWithWildCard__Group_1__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2248:1: rule__QualifiedNameWithWildCard__Group_1__1 : rule__QualifiedNameWithWildCard__Group_1__1__Impl ;
-    public final void rule__QualifiedNameWithWildCard__Group_1__1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2252:1: ( rule__QualifiedNameWithWildCard__Group_1__1__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2253:2: rule__QualifiedNameWithWildCard__Group_1__1__Impl
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__QualifiedNameWithWildCard__Group_1__1__Impl_in_rule__QualifiedNameWithWildCard__Group_1__14574);
-            rule__QualifiedNameWithWildCard__Group_1__1__Impl();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__QualifiedNameWithWildCard__Group_1__1"
-
-
-    // $ANTLR start "rule__QualifiedNameWithWildCard__Group_1__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2259:1: rule__QualifiedNameWithWildCard__Group_1__1__Impl : ( '*' ) ;
-    public final void rule__QualifiedNameWithWildCard__Group_1__1__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2263:1: ( ( '*' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2264:1: ( '*' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2264:1: ( '*' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2265:1: '*'
-            {
-             before(grammarAccess.getQualifiedNameWithWildCardAccess().getAsteriskKeyword_1_1()); 
-            match(input,30,FollowSets000.FOLLOW_30_in_rule__QualifiedNameWithWildCard__Group_1__1__Impl4602); 
-             after(grammarAccess.getQualifiedNameWithWildCardAccess().getAsteriskKeyword_1_1()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__QualifiedNameWithWildCard__Group_1__1__Impl"
-
-
-    // $ANTLR start "rule__QualifiedName__Group__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2282:1: rule__QualifiedName__Group__0 : rule__QualifiedName__Group__0__Impl rule__QualifiedName__Group__1 ;
-    public final void rule__QualifiedName__Group__0() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2286:1: ( rule__QualifiedName__Group__0__Impl rule__QualifiedName__Group__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2287:2: rule__QualifiedName__Group__0__Impl rule__QualifiedName__Group__1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__QualifiedName__Group__0__Impl_in_rule__QualifiedName__Group__04637);
-            rule__QualifiedName__Group__0__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__QualifiedName__Group__1_in_rule__QualifiedName__Group__04640);
-            rule__QualifiedName__Group__1();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__QualifiedName__Group__0"
-
-
-    // $ANTLR start "rule__QualifiedName__Group__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2294:1: rule__QualifiedName__Group__0__Impl : ( RULE_ID ) ;
-    public final void rule__QualifiedName__Group__0__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2298:1: ( ( RULE_ID ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2299:1: ( RULE_ID )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2299:1: ( RULE_ID )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2300:1: RULE_ID
-            {
-             before(grammarAccess.getQualifiedNameAccess().getIDTerminalRuleCall_0()); 
-            match(input,RULE_ID,FollowSets000.FOLLOW_RULE_ID_in_rule__QualifiedName__Group__0__Impl4667); 
-             after(grammarAccess.getQualifiedNameAccess().getIDTerminalRuleCall_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__QualifiedName__Group__0__Impl"
-
-
-    // $ANTLR start "rule__QualifiedName__Group__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2311:1: rule__QualifiedName__Group__1 : rule__QualifiedName__Group__1__Impl ;
-    public final void rule__QualifiedName__Group__1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2315:1: ( rule__QualifiedName__Group__1__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2316:2: rule__QualifiedName__Group__1__Impl
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__QualifiedName__Group__1__Impl_in_rule__QualifiedName__Group__14696);
-            rule__QualifiedName__Group__1__Impl();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__QualifiedName__Group__1"
-
-
-    // $ANTLR start "rule__QualifiedName__Group__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2322:1: rule__QualifiedName__Group__1__Impl : ( ( rule__QualifiedName__Group_1__0 )* ) ;
-    public final void rule__QualifiedName__Group__1__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2326:1: ( ( ( rule__QualifiedName__Group_1__0 )* ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2327:1: ( ( rule__QualifiedName__Group_1__0 )* )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2327:1: ( ( rule__QualifiedName__Group_1__0 )* )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2328:1: ( rule__QualifiedName__Group_1__0 )*
-            {
-             before(grammarAccess.getQualifiedNameAccess().getGroup_1()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2329:1: ( rule__QualifiedName__Group_1__0 )*
-            loop15:
-            do {
-                int alt15=2;
-                int LA15_0 = input.LA(1);
-
-                if ( (LA15_0==29) ) {
-                    int LA15_2 = input.LA(2);
-
-                    if ( (LA15_2==RULE_ID) ) {
-                        alt15=1;
-                    }
-
-
-                }
-
-
-                switch (alt15) {
-            	case 1 :
-            	    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2329:2: rule__QualifiedName__Group_1__0
-            	    {
-            	    pushFollow(FollowSets000.FOLLOW_rule__QualifiedName__Group_1__0_in_rule__QualifiedName__Group__1__Impl4723);
-            	    rule__QualifiedName__Group_1__0();
-
-            	    state._fsp--;
-
-
-            	    }
-            	    break;
-
-            	default :
-            	    break loop15;
-                }
-            } while (true);
-
-             after(grammarAccess.getQualifiedNameAccess().getGroup_1()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__QualifiedName__Group__1__Impl"
-
-
-    // $ANTLR start "rule__QualifiedName__Group_1__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2343:1: rule__QualifiedName__Group_1__0 : rule__QualifiedName__Group_1__0__Impl rule__QualifiedName__Group_1__1 ;
-    public final void rule__QualifiedName__Group_1__0() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2347:1: ( rule__QualifiedName__Group_1__0__Impl rule__QualifiedName__Group_1__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2348:2: rule__QualifiedName__Group_1__0__Impl rule__QualifiedName__Group_1__1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__QualifiedName__Group_1__0__Impl_in_rule__QualifiedName__Group_1__04758);
-            rule__QualifiedName__Group_1__0__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__QualifiedName__Group_1__1_in_rule__QualifiedName__Group_1__04761);
-            rule__QualifiedName__Group_1__1();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__QualifiedName__Group_1__0"
-
-
-    // $ANTLR start "rule__QualifiedName__Group_1__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2355:1: rule__QualifiedName__Group_1__0__Impl : ( '.' ) ;
-    public final void rule__QualifiedName__Group_1__0__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2359:1: ( ( '.' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2360:1: ( '.' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2360:1: ( '.' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2361:1: '.'
-            {
-             before(grammarAccess.getQualifiedNameAccess().getFullStopKeyword_1_0()); 
-            match(input,29,FollowSets000.FOLLOW_29_in_rule__QualifiedName__Group_1__0__Impl4789); 
-             after(grammarAccess.getQualifiedNameAccess().getFullStopKeyword_1_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__QualifiedName__Group_1__0__Impl"
-
-
-    // $ANTLR start "rule__QualifiedName__Group_1__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2374:1: rule__QualifiedName__Group_1__1 : rule__QualifiedName__Group_1__1__Impl ;
-    public final void rule__QualifiedName__Group_1__1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2378:1: ( rule__QualifiedName__Group_1__1__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2379:2: rule__QualifiedName__Group_1__1__Impl
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__QualifiedName__Group_1__1__Impl_in_rule__QualifiedName__Group_1__14820);
-            rule__QualifiedName__Group_1__1__Impl();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__QualifiedName__Group_1__1"
-
-
-    // $ANTLR start "rule__QualifiedName__Group_1__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2385:1: rule__QualifiedName__Group_1__1__Impl : ( RULE_ID ) ;
-    public final void rule__QualifiedName__Group_1__1__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2389:1: ( ( RULE_ID ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2390:1: ( RULE_ID )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2390:1: ( RULE_ID )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2391:1: RULE_ID
-            {
-             before(grammarAccess.getQualifiedNameAccess().getIDTerminalRuleCall_1_1()); 
-            match(input,RULE_ID,FollowSets000.FOLLOW_RULE_ID_in_rule__QualifiedName__Group_1__1__Impl4847); 
-             after(grammarAccess.getQualifiedNameAccess().getIDTerminalRuleCall_1_1()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__QualifiedName__Group_1__1__Impl"
-
-
-    // $ANTLR start "rule__Interface__Group__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2406:1: rule__Interface__Group__0 : rule__Interface__Group__0__Impl rule__Interface__Group__1 ;
-    public final void rule__Interface__Group__0() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2410:1: ( rule__Interface__Group__0__Impl rule__Interface__Group__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2411:2: rule__Interface__Group__0__Impl rule__Interface__Group__1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Interface__Group__0__Impl_in_rule__Interface__Group__04880);
-            rule__Interface__Group__0__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__Interface__Group__1_in_rule__Interface__Group__04883);
-            rule__Interface__Group__1();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Interface__Group__0"
-
-
-    // $ANTLR start "rule__Interface__Group__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2418:1: rule__Interface__Group__0__Impl : ( 'Interface' ) ;
-    public final void rule__Interface__Group__0__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2422:1: ( ( 'Interface' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2423:1: ( 'Interface' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2423:1: ( 'Interface' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2424:1: 'Interface'
-            {
-             before(grammarAccess.getInterfaceAccess().getInterfaceKeyword_0()); 
-            match(input,31,FollowSets000.FOLLOW_31_in_rule__Interface__Group__0__Impl4911); 
-             after(grammarAccess.getInterfaceAccess().getInterfaceKeyword_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Interface__Group__0__Impl"
-
-
-    // $ANTLR start "rule__Interface__Group__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2437:1: rule__Interface__Group__1 : rule__Interface__Group__1__Impl rule__Interface__Group__2 ;
-    public final void rule__Interface__Group__1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2441:1: ( rule__Interface__Group__1__Impl rule__Interface__Group__2 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2442:2: rule__Interface__Group__1__Impl rule__Interface__Group__2
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Interface__Group__1__Impl_in_rule__Interface__Group__14942);
-            rule__Interface__Group__1__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__Interface__Group__2_in_rule__Interface__Group__14945);
-            rule__Interface__Group__2();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Interface__Group__1"
-
-
-    // $ANTLR start "rule__Interface__Group__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2449:1: rule__Interface__Group__1__Impl : ( ( rule__Interface__NameAssignment_1 ) ) ;
-    public final void rule__Interface__Group__1__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2453:1: ( ( ( rule__Interface__NameAssignment_1 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2454:1: ( ( rule__Interface__NameAssignment_1 ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2454:1: ( ( rule__Interface__NameAssignment_1 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2455:1: ( rule__Interface__NameAssignment_1 )
-            {
-             before(grammarAccess.getInterfaceAccess().getNameAssignment_1()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2456:1: ( rule__Interface__NameAssignment_1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2456:2: rule__Interface__NameAssignment_1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Interface__NameAssignment_1_in_rule__Interface__Group__1__Impl4972);
-            rule__Interface__NameAssignment_1();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getInterfaceAccess().getNameAssignment_1()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Interface__Group__1__Impl"
-
-
-    // $ANTLR start "rule__Interface__Group__2"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2466:1: rule__Interface__Group__2 : rule__Interface__Group__2__Impl rule__Interface__Group__3 ;
-    public final void rule__Interface__Group__2() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2470:1: ( rule__Interface__Group__2__Impl rule__Interface__Group__3 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2471:2: rule__Interface__Group__2__Impl rule__Interface__Group__3
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Interface__Group__2__Impl_in_rule__Interface__Group__25002);
-            rule__Interface__Group__2__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__Interface__Group__3_in_rule__Interface__Group__25005);
-            rule__Interface__Group__3();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Interface__Group__2"
-
-
-    // $ANTLR start "rule__Interface__Group__2__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2478:1: rule__Interface__Group__2__Impl : ( '{' ) ;
-    public final void rule__Interface__Group__2__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2482:1: ( ( '{' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2483:1: ( '{' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2483:1: ( '{' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2484:1: '{'
-            {
-             before(grammarAccess.getInterfaceAccess().getLeftCurlyBracketKeyword_2()); 
-            match(input,20,FollowSets000.FOLLOW_20_in_rule__Interface__Group__2__Impl5033); 
-             after(grammarAccess.getInterfaceAccess().getLeftCurlyBracketKeyword_2()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Interface__Group__2__Impl"
-
-
-    // $ANTLR start "rule__Interface__Group__3"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2497:1: rule__Interface__Group__3 : rule__Interface__Group__3__Impl rule__Interface__Group__4 ;
-    public final void rule__Interface__Group__3() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2501:1: ( rule__Interface__Group__3__Impl rule__Interface__Group__4 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2502:2: rule__Interface__Group__3__Impl rule__Interface__Group__4
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Interface__Group__3__Impl_in_rule__Interface__Group__35064);
-            rule__Interface__Group__3__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__Interface__Group__4_in_rule__Interface__Group__35067);
-            rule__Interface__Group__4();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Interface__Group__3"
-
-
-    // $ANTLR start "rule__Interface__Group__3__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2509:1: rule__Interface__Group__3__Impl : ( ( rule__Interface__Group_3__0 )? ) ;
-    public final void rule__Interface__Group__3__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2513:1: ( ( ( rule__Interface__Group_3__0 )? ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2514:1: ( ( rule__Interface__Group_3__0 )? )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2514:1: ( ( rule__Interface__Group_3__0 )? )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2515:1: ( rule__Interface__Group_3__0 )?
-            {
-             before(grammarAccess.getInterfaceAccess().getGroup_3()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2516:1: ( rule__Interface__Group_3__0 )?
-            int alt16=2;
-            int LA16_0 = input.LA(1);
-
-            if ( (LA16_0==32) ) {
-                alt16=1;
-            }
-            switch (alt16) {
-                case 1 :
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2516:2: rule__Interface__Group_3__0
-                    {
-                    pushFollow(FollowSets000.FOLLOW_rule__Interface__Group_3__0_in_rule__Interface__Group__3__Impl5094);
-                    rule__Interface__Group_3__0();
-
-                    state._fsp--;
-
-
-                    }
-                    break;
-
-            }
-
-             after(grammarAccess.getInterfaceAccess().getGroup_3()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Interface__Group__3__Impl"
-
-
-    // $ANTLR start "rule__Interface__Group__4"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2526:1: rule__Interface__Group__4 : rule__Interface__Group__4__Impl rule__Interface__Group__5 ;
-    public final void rule__Interface__Group__4() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2530:1: ( rule__Interface__Group__4__Impl rule__Interface__Group__5 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2531:2: rule__Interface__Group__4__Impl rule__Interface__Group__5
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Interface__Group__4__Impl_in_rule__Interface__Group__45125);
-            rule__Interface__Group__4__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__Interface__Group__5_in_rule__Interface__Group__45128);
-            rule__Interface__Group__5();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Interface__Group__4"
-
-
-    // $ANTLR start "rule__Interface__Group__4__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2538:1: rule__Interface__Group__4__Impl : ( ( rule__Interface__Group_4__0 )? ) ;
-    public final void rule__Interface__Group__4__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2542:1: ( ( ( rule__Interface__Group_4__0 )? ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2543:1: ( ( rule__Interface__Group_4__0 )? )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2543:1: ( ( rule__Interface__Group_4__0 )? )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2544:1: ( rule__Interface__Group_4__0 )?
-            {
-             before(grammarAccess.getInterfaceAccess().getGroup_4()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2545:1: ( rule__Interface__Group_4__0 )?
-            int alt17=2;
-            int LA17_0 = input.LA(1);
-
-            if ( ((LA17_0>=RULE_STRING && LA17_0<=RULE_ID)||LA17_0==11) ) {
-                alt17=1;
-            }
-            switch (alt17) {
-                case 1 :
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2545:2: rule__Interface__Group_4__0
-                    {
-                    pushFollow(FollowSets000.FOLLOW_rule__Interface__Group_4__0_in_rule__Interface__Group__4__Impl5155);
-                    rule__Interface__Group_4__0();
-
-                    state._fsp--;
-
-
-                    }
-                    break;
-
-            }
-
-             after(grammarAccess.getInterfaceAccess().getGroup_4()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Interface__Group__4__Impl"
-
-
-    // $ANTLR start "rule__Interface__Group__5"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2555:1: rule__Interface__Group__5 : rule__Interface__Group__5__Impl ;
-    public final void rule__Interface__Group__5() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2559:1: ( rule__Interface__Group__5__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2560:2: rule__Interface__Group__5__Impl
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Interface__Group__5__Impl_in_rule__Interface__Group__55186);
-            rule__Interface__Group__5__Impl();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Interface__Group__5"
-
-
-    // $ANTLR start "rule__Interface__Group__5__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2566:1: rule__Interface__Group__5__Impl : ( '}' ) ;
-    public final void rule__Interface__Group__5__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2570:1: ( ( '}' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2571:1: ( '}' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2571:1: ( '}' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2572:1: '}'
-            {
-             before(grammarAccess.getInterfaceAccess().getRightCurlyBracketKeyword_5()); 
-            match(input,21,FollowSets000.FOLLOW_21_in_rule__Interface__Group__5__Impl5214); 
-             after(grammarAccess.getInterfaceAccess().getRightCurlyBracketKeyword_5()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Interface__Group__5__Impl"
-
-
-    // $ANTLR start "rule__Interface__Group_3__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2597:1: rule__Interface__Group_3__0 : rule__Interface__Group_3__0__Impl rule__Interface__Group_3__1 ;
-    public final void rule__Interface__Group_3__0() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2601:1: ( rule__Interface__Group_3__0__Impl rule__Interface__Group_3__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2602:2: rule__Interface__Group_3__0__Impl rule__Interface__Group_3__1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Interface__Group_3__0__Impl_in_rule__Interface__Group_3__05257);
-            rule__Interface__Group_3__0__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__Interface__Group_3__1_in_rule__Interface__Group_3__05260);
-            rule__Interface__Group_3__1();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Interface__Group_3__0"
-
-
-    // $ANTLR start "rule__Interface__Group_3__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2609:1: rule__Interface__Group_3__0__Impl : ( 'parentInterfaces' ) ;
-    public final void rule__Interface__Group_3__0__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2613:1: ( ( 'parentInterfaces' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2614:1: ( 'parentInterfaces' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2614:1: ( 'parentInterfaces' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2615:1: 'parentInterfaces'
-            {
-             before(grammarAccess.getInterfaceAccess().getParentInterfacesKeyword_3_0()); 
-            match(input,32,FollowSets000.FOLLOW_32_in_rule__Interface__Group_3__0__Impl5288); 
-             after(grammarAccess.getInterfaceAccess().getParentInterfacesKeyword_3_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Interface__Group_3__0__Impl"
-
-
-    // $ANTLR start "rule__Interface__Group_3__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2628:1: rule__Interface__Group_3__1 : rule__Interface__Group_3__1__Impl rule__Interface__Group_3__2 ;
-    public final void rule__Interface__Group_3__1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2632:1: ( rule__Interface__Group_3__1__Impl rule__Interface__Group_3__2 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2633:2: rule__Interface__Group_3__1__Impl rule__Interface__Group_3__2
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Interface__Group_3__1__Impl_in_rule__Interface__Group_3__15319);
-            rule__Interface__Group_3__1__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__Interface__Group_3__2_in_rule__Interface__Group_3__15322);
-            rule__Interface__Group_3__2();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Interface__Group_3__1"
-
-
-    // $ANTLR start "rule__Interface__Group_3__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2640:1: rule__Interface__Group_3__1__Impl : ( '(' ) ;
-    public final void rule__Interface__Group_3__1__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2644:1: ( ( '(' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2645:1: ( '(' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2645:1: ( '(' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2646:1: '('
-            {
-             before(grammarAccess.getInterfaceAccess().getLeftParenthesisKeyword_3_1()); 
-            match(input,33,FollowSets000.FOLLOW_33_in_rule__Interface__Group_3__1__Impl5350); 
-             after(grammarAccess.getInterfaceAccess().getLeftParenthesisKeyword_3_1()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Interface__Group_3__1__Impl"
-
-
-    // $ANTLR start "rule__Interface__Group_3__2"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2659:1: rule__Interface__Group_3__2 : rule__Interface__Group_3__2__Impl rule__Interface__Group_3__3 ;
-    public final void rule__Interface__Group_3__2() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2663:1: ( rule__Interface__Group_3__2__Impl rule__Interface__Group_3__3 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2664:2: rule__Interface__Group_3__2__Impl rule__Interface__Group_3__3
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Interface__Group_3__2__Impl_in_rule__Interface__Group_3__25381);
-            rule__Interface__Group_3__2__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__Interface__Group_3__3_in_rule__Interface__Group_3__25384);
-            rule__Interface__Group_3__3();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Interface__Group_3__2"
-
-
-    // $ANTLR start "rule__Interface__Group_3__2__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2671:1: rule__Interface__Group_3__2__Impl : ( ( rule__Interface__ParentInterfacesAssignment_3_2 ) ) ;
-    public final void rule__Interface__Group_3__2__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2675:1: ( ( ( rule__Interface__ParentInterfacesAssignment_3_2 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2676:1: ( ( rule__Interface__ParentInterfacesAssignment_3_2 ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2676:1: ( ( rule__Interface__ParentInterfacesAssignment_3_2 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2677:1: ( rule__Interface__ParentInterfacesAssignment_3_2 )
-            {
-             before(grammarAccess.getInterfaceAccess().getParentInterfacesAssignment_3_2()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2678:1: ( rule__Interface__ParentInterfacesAssignment_3_2 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2678:2: rule__Interface__ParentInterfacesAssignment_3_2
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Interface__ParentInterfacesAssignment_3_2_in_rule__Interface__Group_3__2__Impl5411);
-            rule__Interface__ParentInterfacesAssignment_3_2();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getInterfaceAccess().getParentInterfacesAssignment_3_2()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Interface__Group_3__2__Impl"
-
-
-    // $ANTLR start "rule__Interface__Group_3__3"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2688:1: rule__Interface__Group_3__3 : rule__Interface__Group_3__3__Impl rule__Interface__Group_3__4 ;
-    public final void rule__Interface__Group_3__3() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2692:1: ( rule__Interface__Group_3__3__Impl rule__Interface__Group_3__4 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2693:2: rule__Interface__Group_3__3__Impl rule__Interface__Group_3__4
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Interface__Group_3__3__Impl_in_rule__Interface__Group_3__35441);
-            rule__Interface__Group_3__3__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__Interface__Group_3__4_in_rule__Interface__Group_3__35444);
-            rule__Interface__Group_3__4();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Interface__Group_3__3"
-
-
-    // $ANTLR start "rule__Interface__Group_3__3__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2700:1: rule__Interface__Group_3__3__Impl : ( ( rule__Interface__Group_3_3__0 )* ) ;
-    public final void rule__Interface__Group_3__3__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2704:1: ( ( ( rule__Interface__Group_3_3__0 )* ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2705:1: ( ( rule__Interface__Group_3_3__0 )* )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2705:1: ( ( rule__Interface__Group_3_3__0 )* )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2706:1: ( rule__Interface__Group_3_3__0 )*
-            {
-             before(grammarAccess.getInterfaceAccess().getGroup_3_3()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2707:1: ( rule__Interface__Group_3_3__0 )*
-            loop18:
-            do {
-                int alt18=2;
-                int LA18_0 = input.LA(1);
-
-                if ( (LA18_0==23) ) {
-                    alt18=1;
-                }
-
-
-                switch (alt18) {
-            	case 1 :
-            	    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2707:2: rule__Interface__Group_3_3__0
-            	    {
-            	    pushFollow(FollowSets000.FOLLOW_rule__Interface__Group_3_3__0_in_rule__Interface__Group_3__3__Impl5471);
-            	    rule__Interface__Group_3_3__0();
-
-            	    state._fsp--;
-
-
-            	    }
-            	    break;
-
-            	default :
-            	    break loop18;
-                }
-            } while (true);
-
-             after(grammarAccess.getInterfaceAccess().getGroup_3_3()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Interface__Group_3__3__Impl"
-
-
-    // $ANTLR start "rule__Interface__Group_3__4"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2717:1: rule__Interface__Group_3__4 : rule__Interface__Group_3__4__Impl ;
-    public final void rule__Interface__Group_3__4() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2721:1: ( rule__Interface__Group_3__4__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2722:2: rule__Interface__Group_3__4__Impl
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Interface__Group_3__4__Impl_in_rule__Interface__Group_3__45502);
-            rule__Interface__Group_3__4__Impl();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Interface__Group_3__4"
-
-
-    // $ANTLR start "rule__Interface__Group_3__4__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2728:1: rule__Interface__Group_3__4__Impl : ( ')' ) ;
-    public final void rule__Interface__Group_3__4__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2732:1: ( ( ')' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2733:1: ( ')' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2733:1: ( ')' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2734:1: ')'
-            {
-             before(grammarAccess.getInterfaceAccess().getRightParenthesisKeyword_3_4()); 
-            match(input,34,FollowSets000.FOLLOW_34_in_rule__Interface__Group_3__4__Impl5530); 
-             after(grammarAccess.getInterfaceAccess().getRightParenthesisKeyword_3_4()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Interface__Group_3__4__Impl"
-
-
-    // $ANTLR start "rule__Interface__Group_3_3__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2757:1: rule__Interface__Group_3_3__0 : rule__Interface__Group_3_3__0__Impl rule__Interface__Group_3_3__1 ;
-    public final void rule__Interface__Group_3_3__0() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2761:1: ( rule__Interface__Group_3_3__0__Impl rule__Interface__Group_3_3__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2762:2: rule__Interface__Group_3_3__0__Impl rule__Interface__Group_3_3__1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Interface__Group_3_3__0__Impl_in_rule__Interface__Group_3_3__05571);
-            rule__Interface__Group_3_3__0__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__Interface__Group_3_3__1_in_rule__Interface__Group_3_3__05574);
-            rule__Interface__Group_3_3__1();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Interface__Group_3_3__0"
-
-
-    // $ANTLR start "rule__Interface__Group_3_3__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2769:1: rule__Interface__Group_3_3__0__Impl : ( ',' ) ;
-    public final void rule__Interface__Group_3_3__0__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2773:1: ( ( ',' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2774:1: ( ',' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2774:1: ( ',' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2775:1: ','
-            {
-             before(grammarAccess.getInterfaceAccess().getCommaKeyword_3_3_0()); 
-            match(input,23,FollowSets000.FOLLOW_23_in_rule__Interface__Group_3_3__0__Impl5602); 
-             after(grammarAccess.getInterfaceAccess().getCommaKeyword_3_3_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Interface__Group_3_3__0__Impl"
-
-
-    // $ANTLR start "rule__Interface__Group_3_3__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2788:1: rule__Interface__Group_3_3__1 : rule__Interface__Group_3_3__1__Impl ;
-    public final void rule__Interface__Group_3_3__1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2792:1: ( rule__Interface__Group_3_3__1__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2793:2: rule__Interface__Group_3_3__1__Impl
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Interface__Group_3_3__1__Impl_in_rule__Interface__Group_3_3__15633);
-            rule__Interface__Group_3_3__1__Impl();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Interface__Group_3_3__1"
-
-
-    // $ANTLR start "rule__Interface__Group_3_3__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2799:1: rule__Interface__Group_3_3__1__Impl : ( ( rule__Interface__ParentInterfacesAssignment_3_3_1 ) ) ;
-    public final void rule__Interface__Group_3_3__1__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2803:1: ( ( ( rule__Interface__ParentInterfacesAssignment_3_3_1 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2804:1: ( ( rule__Interface__ParentInterfacesAssignment_3_3_1 ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2804:1: ( ( rule__Interface__ParentInterfacesAssignment_3_3_1 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2805:1: ( rule__Interface__ParentInterfacesAssignment_3_3_1 )
-            {
-             before(grammarAccess.getInterfaceAccess().getParentInterfacesAssignment_3_3_1()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2806:1: ( rule__Interface__ParentInterfacesAssignment_3_3_1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2806:2: rule__Interface__ParentInterfacesAssignment_3_3_1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Interface__ParentInterfacesAssignment_3_3_1_in_rule__Interface__Group_3_3__1__Impl5660);
-            rule__Interface__ParentInterfacesAssignment_3_3_1();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getInterfaceAccess().getParentInterfacesAssignment_3_3_1()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Interface__Group_3_3__1__Impl"
-
-
-    // $ANTLR start "rule__Interface__Group_4__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2820:1: rule__Interface__Group_4__0 : rule__Interface__Group_4__0__Impl rule__Interface__Group_4__1 ;
-    public final void rule__Interface__Group_4__0() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2824:1: ( rule__Interface__Group_4__0__Impl rule__Interface__Group_4__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2825:2: rule__Interface__Group_4__0__Impl rule__Interface__Group_4__1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Interface__Group_4__0__Impl_in_rule__Interface__Group_4__05694);
-            rule__Interface__Group_4__0__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__Interface__Group_4__1_in_rule__Interface__Group_4__05697);
-            rule__Interface__Group_4__1();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Interface__Group_4__0"
-
-
-    // $ANTLR start "rule__Interface__Group_4__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2832:1: rule__Interface__Group_4__0__Impl : ( ( rule__Interface__SignaturesAssignment_4_0 ) ) ;
-    public final void rule__Interface__Group_4__0__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2836:1: ( ( ( rule__Interface__SignaturesAssignment_4_0 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2837:1: ( ( rule__Interface__SignaturesAssignment_4_0 ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2837:1: ( ( rule__Interface__SignaturesAssignment_4_0 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2838:1: ( rule__Interface__SignaturesAssignment_4_0 )
-            {
-             before(grammarAccess.getInterfaceAccess().getSignaturesAssignment_4_0()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2839:1: ( rule__Interface__SignaturesAssignment_4_0 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2839:2: rule__Interface__SignaturesAssignment_4_0
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Interface__SignaturesAssignment_4_0_in_rule__Interface__Group_4__0__Impl5724);
-            rule__Interface__SignaturesAssignment_4_0();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getInterfaceAccess().getSignaturesAssignment_4_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Interface__Group_4__0__Impl"
-
-
-    // $ANTLR start "rule__Interface__Group_4__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2849:1: rule__Interface__Group_4__1 : rule__Interface__Group_4__1__Impl ;
-    public final void rule__Interface__Group_4__1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2853:1: ( rule__Interface__Group_4__1__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2854:2: rule__Interface__Group_4__1__Impl
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Interface__Group_4__1__Impl_in_rule__Interface__Group_4__15754);
-            rule__Interface__Group_4__1__Impl();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Interface__Group_4__1"
-
-
-    // $ANTLR start "rule__Interface__Group_4__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2860:1: rule__Interface__Group_4__1__Impl : ( ( rule__Interface__Group_4_1__0 )* ) ;
-    public final void rule__Interface__Group_4__1__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2864:1: ( ( ( rule__Interface__Group_4_1__0 )* ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2865:1: ( ( rule__Interface__Group_4_1__0 )* )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2865:1: ( ( rule__Interface__Group_4_1__0 )* )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2866:1: ( rule__Interface__Group_4_1__0 )*
-            {
-             before(grammarAccess.getInterfaceAccess().getGroup_4_1()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2867:1: ( rule__Interface__Group_4_1__0 )*
-            loop19:
-            do {
-                int alt19=2;
-                int LA19_0 = input.LA(1);
-
-                if ( (LA19_0==23) ) {
-                    alt19=1;
-                }
-
-
-                switch (alt19) {
-            	case 1 :
-            	    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2867:2: rule__Interface__Group_4_1__0
-            	    {
-            	    pushFollow(FollowSets000.FOLLOW_rule__Interface__Group_4_1__0_in_rule__Interface__Group_4__1__Impl5781);
-            	    rule__Interface__Group_4_1__0();
-
-            	    state._fsp--;
-
-
-            	    }
-            	    break;
-
-            	default :
-            	    break loop19;
-                }
-            } while (true);
-
-             after(grammarAccess.getInterfaceAccess().getGroup_4_1()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Interface__Group_4__1__Impl"
-
-
-    // $ANTLR start "rule__Interface__Group_4_1__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2881:1: rule__Interface__Group_4_1__0 : rule__Interface__Group_4_1__0__Impl rule__Interface__Group_4_1__1 ;
-    public final void rule__Interface__Group_4_1__0() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2885:1: ( rule__Interface__Group_4_1__0__Impl rule__Interface__Group_4_1__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2886:2: rule__Interface__Group_4_1__0__Impl rule__Interface__Group_4_1__1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Interface__Group_4_1__0__Impl_in_rule__Interface__Group_4_1__05816);
-            rule__Interface__Group_4_1__0__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__Interface__Group_4_1__1_in_rule__Interface__Group_4_1__05819);
-            rule__Interface__Group_4_1__1();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Interface__Group_4_1__0"
-
-
-    // $ANTLR start "rule__Interface__Group_4_1__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2893:1: rule__Interface__Group_4_1__0__Impl : ( ',' ) ;
-    public final void rule__Interface__Group_4_1__0__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2897:1: ( ( ',' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2898:1: ( ',' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2898:1: ( ',' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2899:1: ','
-            {
-             before(grammarAccess.getInterfaceAccess().getCommaKeyword_4_1_0()); 
-            match(input,23,FollowSets000.FOLLOW_23_in_rule__Interface__Group_4_1__0__Impl5847); 
-             after(grammarAccess.getInterfaceAccess().getCommaKeyword_4_1_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Interface__Group_4_1__0__Impl"
-
-
-    // $ANTLR start "rule__Interface__Group_4_1__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2912:1: rule__Interface__Group_4_1__1 : rule__Interface__Group_4_1__1__Impl ;
-    public final void rule__Interface__Group_4_1__1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2916:1: ( rule__Interface__Group_4_1__1__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2917:2: rule__Interface__Group_4_1__1__Impl
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Interface__Group_4_1__1__Impl_in_rule__Interface__Group_4_1__15878);
-            rule__Interface__Group_4_1__1__Impl();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Interface__Group_4_1__1"
-
-
-    // $ANTLR start "rule__Interface__Group_4_1__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2923:1: rule__Interface__Group_4_1__1__Impl : ( ( rule__Interface__SignaturesAssignment_4_1_1 ) ) ;
-    public final void rule__Interface__Group_4_1__1__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2927:1: ( ( ( rule__Interface__SignaturesAssignment_4_1_1 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2928:1: ( ( rule__Interface__SignaturesAssignment_4_1_1 ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2928:1: ( ( rule__Interface__SignaturesAssignment_4_1_1 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2929:1: ( rule__Interface__SignaturesAssignment_4_1_1 )
-            {
-             before(grammarAccess.getInterfaceAccess().getSignaturesAssignment_4_1_1()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2930:1: ( rule__Interface__SignaturesAssignment_4_1_1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2930:2: rule__Interface__SignaturesAssignment_4_1_1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Interface__SignaturesAssignment_4_1_1_in_rule__Interface__Group_4_1__1__Impl5905);
-            rule__Interface__SignaturesAssignment_4_1_1();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getInterfaceAccess().getSignaturesAssignment_4_1_1()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Interface__Group_4_1__1__Impl"
-
-
-    // $ANTLR start "rule__RepositoryComponent_Impl__Group__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2944:1: rule__RepositoryComponent_Impl__Group__0 : rule__RepositoryComponent_Impl__Group__0__Impl rule__RepositoryComponent_Impl__Group__1 ;
-    public final void rule__RepositoryComponent_Impl__Group__0() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2948:1: ( rule__RepositoryComponent_Impl__Group__0__Impl rule__RepositoryComponent_Impl__Group__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2949:2: rule__RepositoryComponent_Impl__Group__0__Impl rule__RepositoryComponent_Impl__Group__1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group__0__Impl_in_rule__RepositoryComponent_Impl__Group__05939);
-            rule__RepositoryComponent_Impl__Group__0__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group__1_in_rule__RepositoryComponent_Impl__Group__05942);
-            rule__RepositoryComponent_Impl__Group__1();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__RepositoryComponent_Impl__Group__0"
-
-
-    // $ANTLR start "rule__RepositoryComponent_Impl__Group__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2956:1: rule__RepositoryComponent_Impl__Group__0__Impl : ( 'RepositoryComponent' ) ;
-    public final void rule__RepositoryComponent_Impl__Group__0__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2960:1: ( ( 'RepositoryComponent' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2961:1: ( 'RepositoryComponent' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2961:1: ( 'RepositoryComponent' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2962:1: 'RepositoryComponent'
-            {
-             before(grammarAccess.getRepositoryComponent_ImplAccess().getRepositoryComponentKeyword_0()); 
-            match(input,35,FollowSets000.FOLLOW_35_in_rule__RepositoryComponent_Impl__Group__0__Impl5970); 
-             after(grammarAccess.getRepositoryComponent_ImplAccess().getRepositoryComponentKeyword_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__RepositoryComponent_Impl__Group__0__Impl"
-
-
-    // $ANTLR start "rule__RepositoryComponent_Impl__Group__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2975:1: rule__RepositoryComponent_Impl__Group__1 : rule__RepositoryComponent_Impl__Group__1__Impl rule__RepositoryComponent_Impl__Group__2 ;
-    public final void rule__RepositoryComponent_Impl__Group__1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2979:1: ( rule__RepositoryComponent_Impl__Group__1__Impl rule__RepositoryComponent_Impl__Group__2 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2980:2: rule__RepositoryComponent_Impl__Group__1__Impl rule__RepositoryComponent_Impl__Group__2
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group__1__Impl_in_rule__RepositoryComponent_Impl__Group__16001);
-            rule__RepositoryComponent_Impl__Group__1__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group__2_in_rule__RepositoryComponent_Impl__Group__16004);
-            rule__RepositoryComponent_Impl__Group__2();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__RepositoryComponent_Impl__Group__1"
-
-
-    // $ANTLR start "rule__RepositoryComponent_Impl__Group__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2987:1: rule__RepositoryComponent_Impl__Group__1__Impl : ( ( rule__RepositoryComponent_Impl__NameAssignment_1 ) ) ;
-    public final void rule__RepositoryComponent_Impl__Group__1__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2991:1: ( ( ( rule__RepositoryComponent_Impl__NameAssignment_1 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2992:1: ( ( rule__RepositoryComponent_Impl__NameAssignment_1 ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2992:1: ( ( rule__RepositoryComponent_Impl__NameAssignment_1 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2993:1: ( rule__RepositoryComponent_Impl__NameAssignment_1 )
-            {
-             before(grammarAccess.getRepositoryComponent_ImplAccess().getNameAssignment_1()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2994:1: ( rule__RepositoryComponent_Impl__NameAssignment_1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2994:2: rule__RepositoryComponent_Impl__NameAssignment_1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__NameAssignment_1_in_rule__RepositoryComponent_Impl__Group__1__Impl6031);
-            rule__RepositoryComponent_Impl__NameAssignment_1();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getRepositoryComponent_ImplAccess().getNameAssignment_1()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__RepositoryComponent_Impl__Group__1__Impl"
-
-
-    // $ANTLR start "rule__RepositoryComponent_Impl__Group__2"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3004:1: rule__RepositoryComponent_Impl__Group__2 : rule__RepositoryComponent_Impl__Group__2__Impl rule__RepositoryComponent_Impl__Group__3 ;
-    public final void rule__RepositoryComponent_Impl__Group__2() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3008:1: ( rule__RepositoryComponent_Impl__Group__2__Impl rule__RepositoryComponent_Impl__Group__3 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3009:2: rule__RepositoryComponent_Impl__Group__2__Impl rule__RepositoryComponent_Impl__Group__3
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group__2__Impl_in_rule__RepositoryComponent_Impl__Group__26061);
-            rule__RepositoryComponent_Impl__Group__2__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group__3_in_rule__RepositoryComponent_Impl__Group__26064);
-            rule__RepositoryComponent_Impl__Group__3();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__RepositoryComponent_Impl__Group__2"
-
-
-    // $ANTLR start "rule__RepositoryComponent_Impl__Group__2__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3016:1: rule__RepositoryComponent_Impl__Group__2__Impl : ( '{' ) ;
-    public final void rule__RepositoryComponent_Impl__Group__2__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3020:1: ( ( '{' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3021:1: ( '{' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3021:1: ( '{' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3022:1: '{'
-            {
-             before(grammarAccess.getRepositoryComponent_ImplAccess().getLeftCurlyBracketKeyword_2()); 
-            match(input,20,FollowSets000.FOLLOW_20_in_rule__RepositoryComponent_Impl__Group__2__Impl6092); 
-             after(grammarAccess.getRepositoryComponent_ImplAccess().getLeftCurlyBracketKeyword_2()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__RepositoryComponent_Impl__Group__2__Impl"
-
-
-    // $ANTLR start "rule__RepositoryComponent_Impl__Group__3"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3035:1: rule__RepositoryComponent_Impl__Group__3 : rule__RepositoryComponent_Impl__Group__3__Impl rule__RepositoryComponent_Impl__Group__4 ;
-    public final void rule__RepositoryComponent_Impl__Group__3() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3039:1: ( rule__RepositoryComponent_Impl__Group__3__Impl rule__RepositoryComponent_Impl__Group__4 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3040:2: rule__RepositoryComponent_Impl__Group__3__Impl rule__RepositoryComponent_Impl__Group__4
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group__3__Impl_in_rule__RepositoryComponent_Impl__Group__36123);
-            rule__RepositoryComponent_Impl__Group__3__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group__4_in_rule__RepositoryComponent_Impl__Group__36126);
-            rule__RepositoryComponent_Impl__Group__4();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__RepositoryComponent_Impl__Group__3"
-
-
-    // $ANTLR start "rule__RepositoryComponent_Impl__Group__3__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3047:1: rule__RepositoryComponent_Impl__Group__3__Impl : ( ( rule__RepositoryComponent_Impl__Group_3__0 )? ) ;
-    public final void rule__RepositoryComponent_Impl__Group__3__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3051:1: ( ( ( rule__RepositoryComponent_Impl__Group_3__0 )? ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3052:1: ( ( rule__RepositoryComponent_Impl__Group_3__0 )? )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3052:1: ( ( rule__RepositoryComponent_Impl__Group_3__0 )? )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3053:1: ( rule__RepositoryComponent_Impl__Group_3__0 )?
-            {
-             before(grammarAccess.getRepositoryComponent_ImplAccess().getGroup_3()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3054:1: ( rule__RepositoryComponent_Impl__Group_3__0 )?
-            int alt20=2;
-            int LA20_0 = input.LA(1);
-
-            if ( (LA20_0==36) ) {
-                alt20=1;
-            }
-            switch (alt20) {
-                case 1 :
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3054:2: rule__RepositoryComponent_Impl__Group_3__0
-                    {
-                    pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_3__0_in_rule__RepositoryComponent_Impl__Group__3__Impl6153);
-                    rule__RepositoryComponent_Impl__Group_3__0();
-
-                    state._fsp--;
-
-
-                    }
-                    break;
-
-            }
-
-             after(grammarAccess.getRepositoryComponent_ImplAccess().getGroup_3()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__RepositoryComponent_Impl__Group__3__Impl"
-
-
-    // $ANTLR start "rule__RepositoryComponent_Impl__Group__4"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3064:1: rule__RepositoryComponent_Impl__Group__4 : rule__RepositoryComponent_Impl__Group__4__Impl rule__RepositoryComponent_Impl__Group__5 ;
-    public final void rule__RepositoryComponent_Impl__Group__4() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3068:1: ( rule__RepositoryComponent_Impl__Group__4__Impl rule__RepositoryComponent_Impl__Group__5 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3069:2: rule__RepositoryComponent_Impl__Group__4__Impl rule__RepositoryComponent_Impl__Group__5
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group__4__Impl_in_rule__RepositoryComponent_Impl__Group__46184);
-            rule__RepositoryComponent_Impl__Group__4__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group__5_in_rule__RepositoryComponent_Impl__Group__46187);
-            rule__RepositoryComponent_Impl__Group__5();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__RepositoryComponent_Impl__Group__4"
-
-
-    // $ANTLR start "rule__RepositoryComponent_Impl__Group__4__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3076:1: rule__RepositoryComponent_Impl__Group__4__Impl : ( ( rule__RepositoryComponent_Impl__Group_4__0 )? ) ;
-    public final void rule__RepositoryComponent_Impl__Group__4__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3080:1: ( ( ( rule__RepositoryComponent_Impl__Group_4__0 )? ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3081:1: ( ( rule__RepositoryComponent_Impl__Group_4__0 )? )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3081:1: ( ( rule__RepositoryComponent_Impl__Group_4__0 )? )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3082:1: ( rule__RepositoryComponent_Impl__Group_4__0 )?
-            {
-             before(grammarAccess.getRepositoryComponent_ImplAccess().getGroup_4()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3083:1: ( rule__RepositoryComponent_Impl__Group_4__0 )?
-            int alt21=2;
-            int LA21_0 = input.LA(1);
-
-            if ( (LA21_0==37) ) {
-                alt21=1;
-            }
-            switch (alt21) {
-                case 1 :
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3083:2: rule__RepositoryComponent_Impl__Group_4__0
-                    {
-                    pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_4__0_in_rule__RepositoryComponent_Impl__Group__4__Impl6214);
-                    rule__RepositoryComponent_Impl__Group_4__0();
-
-                    state._fsp--;
-
-
-                    }
-                    break;
-
-            }
-
-             after(grammarAccess.getRepositoryComponent_ImplAccess().getGroup_4()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__RepositoryComponent_Impl__Group__4__Impl"
-
-
-    // $ANTLR start "rule__RepositoryComponent_Impl__Group__5"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3093:1: rule__RepositoryComponent_Impl__Group__5 : rule__RepositoryComponent_Impl__Group__5__Impl rule__RepositoryComponent_Impl__Group__6 ;
-    public final void rule__RepositoryComponent_Impl__Group__5() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3097:1: ( rule__RepositoryComponent_Impl__Group__5__Impl rule__RepositoryComponent_Impl__Group__6 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3098:2: rule__RepositoryComponent_Impl__Group__5__Impl rule__RepositoryComponent_Impl__Group__6
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group__5__Impl_in_rule__RepositoryComponent_Impl__Group__56245);
-            rule__RepositoryComponent_Impl__Group__5__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group__6_in_rule__RepositoryComponent_Impl__Group__56248);
-            rule__RepositoryComponent_Impl__Group__6();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__RepositoryComponent_Impl__Group__5"
-
-
-    // $ANTLR start "rule__RepositoryComponent_Impl__Group__5__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3105:1: rule__RepositoryComponent_Impl__Group__5__Impl : ( ( rule__RepositoryComponent_Impl__Group_5__0 )? ) ;
-    public final void rule__RepositoryComponent_Impl__Group__5__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3109:1: ( ( ( rule__RepositoryComponent_Impl__Group_5__0 )? ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3110:1: ( ( rule__RepositoryComponent_Impl__Group_5__0 )? )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3110:1: ( ( rule__RepositoryComponent_Impl__Group_5__0 )? )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3111:1: ( rule__RepositoryComponent_Impl__Group_5__0 )?
-            {
-             before(grammarAccess.getRepositoryComponent_ImplAccess().getGroup_5()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3112:1: ( rule__RepositoryComponent_Impl__Group_5__0 )?
-            int alt22=2;
-            int LA22_0 = input.LA(1);
-
-            if ( (LA22_0==38) ) {
-                alt22=1;
-            }
-            switch (alt22) {
-                case 1 :
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3112:2: rule__RepositoryComponent_Impl__Group_5__0
-                    {
-                    pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_5__0_in_rule__RepositoryComponent_Impl__Group__5__Impl6275);
-                    rule__RepositoryComponent_Impl__Group_5__0();
-
-                    state._fsp--;
-
-
-                    }
-                    break;
-
-            }
-
-             after(grammarAccess.getRepositoryComponent_ImplAccess().getGroup_5()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__RepositoryComponent_Impl__Group__5__Impl"
-
-
-    // $ANTLR start "rule__RepositoryComponent_Impl__Group__6"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3122:1: rule__RepositoryComponent_Impl__Group__6 : rule__RepositoryComponent_Impl__Group__6__Impl ;
-    public final void rule__RepositoryComponent_Impl__Group__6() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3126:1: ( rule__RepositoryComponent_Impl__Group__6__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3127:2: rule__RepositoryComponent_Impl__Group__6__Impl
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group__6__Impl_in_rule__RepositoryComponent_Impl__Group__66306);
-            rule__RepositoryComponent_Impl__Group__6__Impl();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__RepositoryComponent_Impl__Group__6"
-
-
-    // $ANTLR start "rule__RepositoryComponent_Impl__Group__6__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3133:1: rule__RepositoryComponent_Impl__Group__6__Impl : ( '}' ) ;
-    public final void rule__RepositoryComponent_Impl__Group__6__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3137:1: ( ( '}' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3138:1: ( '}' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3138:1: ( '}' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3139:1: '}'
-            {
-             before(grammarAccess.getRepositoryComponent_ImplAccess().getRightCurlyBracketKeyword_6()); 
-            match(input,21,FollowSets000.FOLLOW_21_in_rule__RepositoryComponent_Impl__Group__6__Impl6334); 
-             after(grammarAccess.getRepositoryComponent_ImplAccess().getRightCurlyBracketKeyword_6()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__RepositoryComponent_Impl__Group__6__Impl"
-
-
-    // $ANTLR start "rule__RepositoryComponent_Impl__Group_3__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3166:1: rule__RepositoryComponent_Impl__Group_3__0 : rule__RepositoryComponent_Impl__Group_3__0__Impl rule__RepositoryComponent_Impl__Group_3__1 ;
-    public final void rule__RepositoryComponent_Impl__Group_3__0() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3170:1: ( rule__RepositoryComponent_Impl__Group_3__0__Impl rule__RepositoryComponent_Impl__Group_3__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3171:2: rule__RepositoryComponent_Impl__Group_3__0__Impl rule__RepositoryComponent_Impl__Group_3__1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_3__0__Impl_in_rule__RepositoryComponent_Impl__Group_3__06379);
-            rule__RepositoryComponent_Impl__Group_3__0__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_3__1_in_rule__RepositoryComponent_Impl__Group_3__06382);
-            rule__RepositoryComponent_Impl__Group_3__1();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__RepositoryComponent_Impl__Group_3__0"
-
-
-    // $ANTLR start "rule__RepositoryComponent_Impl__Group_3__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3178:1: rule__RepositoryComponent_Impl__Group_3__0__Impl : ( 'relationship' ) ;
-    public final void rule__RepositoryComponent_Impl__Group_3__0__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3182:1: ( ( 'relationship' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3183:1: ( 'relationship' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3183:1: ( 'relationship' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3184:1: 'relationship'
-            {
-             before(grammarAccess.getRepositoryComponent_ImplAccess().getRelationshipKeyword_3_0()); 
-            match(input,36,FollowSets000.FOLLOW_36_in_rule__RepositoryComponent_Impl__Group_3__0__Impl6410); 
-             after(grammarAccess.getRepositoryComponent_ImplAccess().getRelationshipKeyword_3_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__RepositoryComponent_Impl__Group_3__0__Impl"
-
-
-    // $ANTLR start "rule__RepositoryComponent_Impl__Group_3__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3197:1: rule__RepositoryComponent_Impl__Group_3__1 : rule__RepositoryComponent_Impl__Group_3__1__Impl rule__RepositoryComponent_Impl__Group_3__2 ;
-    public final void rule__RepositoryComponent_Impl__Group_3__1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3201:1: ( rule__RepositoryComponent_Impl__Group_3__1__Impl rule__RepositoryComponent_Impl__Group_3__2 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3202:2: rule__RepositoryComponent_Impl__Group_3__1__Impl rule__RepositoryComponent_Impl__Group_3__2
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_3__1__Impl_in_rule__RepositoryComponent_Impl__Group_3__16441);
-            rule__RepositoryComponent_Impl__Group_3__1__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_3__2_in_rule__RepositoryComponent_Impl__Group_3__16444);
-            rule__RepositoryComponent_Impl__Group_3__2();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__RepositoryComponent_Impl__Group_3__1"
-
-
-    // $ANTLR start "rule__RepositoryComponent_Impl__Group_3__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3209:1: rule__RepositoryComponent_Impl__Group_3__1__Impl : ( '(' ) ;
-    public final void rule__RepositoryComponent_Impl__Group_3__1__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3213:1: ( ( '(' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3214:1: ( '(' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3214:1: ( '(' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3215:1: '('
-            {
-             before(grammarAccess.getRepositoryComponent_ImplAccess().getLeftParenthesisKeyword_3_1()); 
-            match(input,33,FollowSets000.FOLLOW_33_in_rule__RepositoryComponent_Impl__Group_3__1__Impl6472); 
-             after(grammarAccess.getRepositoryComponent_ImplAccess().getLeftParenthesisKeyword_3_1()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__RepositoryComponent_Impl__Group_3__1__Impl"
-
-
-    // $ANTLR start "rule__RepositoryComponent_Impl__Group_3__2"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3228:1: rule__RepositoryComponent_Impl__Group_3__2 : rule__RepositoryComponent_Impl__Group_3__2__Impl rule__RepositoryComponent_Impl__Group_3__3 ;
-    public final void rule__RepositoryComponent_Impl__Group_3__2() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3232:1: ( rule__RepositoryComponent_Impl__Group_3__2__Impl rule__RepositoryComponent_Impl__Group_3__3 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3233:2: rule__RepositoryComponent_Impl__Group_3__2__Impl rule__RepositoryComponent_Impl__Group_3__3
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_3__2__Impl_in_rule__RepositoryComponent_Impl__Group_3__26503);
-            rule__RepositoryComponent_Impl__Group_3__2__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_3__3_in_rule__RepositoryComponent_Impl__Group_3__26506);
-            rule__RepositoryComponent_Impl__Group_3__3();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__RepositoryComponent_Impl__Group_3__2"
-
-
-    // $ANTLR start "rule__RepositoryComponent_Impl__Group_3__2__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3240:1: rule__RepositoryComponent_Impl__Group_3__2__Impl : ( ( rule__RepositoryComponent_Impl__RelationshipAssignment_3_2 ) ) ;
-    public final void rule__RepositoryComponent_Impl__Group_3__2__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3244:1: ( ( ( rule__RepositoryComponent_Impl__RelationshipAssignment_3_2 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3245:1: ( ( rule__RepositoryComponent_Impl__RelationshipAssignment_3_2 ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3245:1: ( ( rule__RepositoryComponent_Impl__RelationshipAssignment_3_2 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3246:1: ( rule__RepositoryComponent_Impl__RelationshipAssignment_3_2 )
-            {
-             before(grammarAccess.getRepositoryComponent_ImplAccess().getRelationshipAssignment_3_2()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3247:1: ( rule__RepositoryComponent_Impl__RelationshipAssignment_3_2 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3247:2: rule__RepositoryComponent_Impl__RelationshipAssignment_3_2
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__RelationshipAssignment_3_2_in_rule__RepositoryComponent_Impl__Group_3__2__Impl6533);
-            rule__RepositoryComponent_Impl__RelationshipAssignment_3_2();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getRepositoryComponent_ImplAccess().getRelationshipAssignment_3_2()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__RepositoryComponent_Impl__Group_3__2__Impl"
-
-
-    // $ANTLR start "rule__RepositoryComponent_Impl__Group_3__3"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3257:1: rule__RepositoryComponent_Impl__Group_3__3 : rule__RepositoryComponent_Impl__Group_3__3__Impl rule__RepositoryComponent_Impl__Group_3__4 ;
-    public final void rule__RepositoryComponent_Impl__Group_3__3() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3261:1: ( rule__RepositoryComponent_Impl__Group_3__3__Impl rule__RepositoryComponent_Impl__Group_3__4 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3262:2: rule__RepositoryComponent_Impl__Group_3__3__Impl rule__RepositoryComponent_Impl__Group_3__4
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_3__3__Impl_in_rule__RepositoryComponent_Impl__Group_3__36563);
-            rule__RepositoryComponent_Impl__Group_3__3__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_3__4_in_rule__RepositoryComponent_Impl__Group_3__36566);
-            rule__RepositoryComponent_Impl__Group_3__4();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__RepositoryComponent_Impl__Group_3__3"
-
-
-    // $ANTLR start "rule__RepositoryComponent_Impl__Group_3__3__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3269:1: rule__RepositoryComponent_Impl__Group_3__3__Impl : ( ( rule__RepositoryComponent_Impl__Group_3_3__0 )* ) ;
-    public final void rule__RepositoryComponent_Impl__Group_3__3__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3273:1: ( ( ( rule__RepositoryComponent_Impl__Group_3_3__0 )* ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3274:1: ( ( rule__RepositoryComponent_Impl__Group_3_3__0 )* )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3274:1: ( ( rule__RepositoryComponent_Impl__Group_3_3__0 )* )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3275:1: ( rule__RepositoryComponent_Impl__Group_3_3__0 )*
-            {
-             before(grammarAccess.getRepositoryComponent_ImplAccess().getGroup_3_3()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3276:1: ( rule__RepositoryComponent_Impl__Group_3_3__0 )*
-            loop23:
-            do {
-                int alt23=2;
-                int LA23_0 = input.LA(1);
-
-                if ( (LA23_0==23) ) {
-                    alt23=1;
-                }
-
-
-                switch (alt23) {
-            	case 1 :
-            	    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3276:2: rule__RepositoryComponent_Impl__Group_3_3__0
-            	    {
-            	    pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_3_3__0_in_rule__RepositoryComponent_Impl__Group_3__3__Impl6593);
-            	    rule__RepositoryComponent_Impl__Group_3_3__0();
-
-            	    state._fsp--;
-
-
-            	    }
-            	    break;
-
-            	default :
-            	    break loop23;
-                }
-            } while (true);
-
-             after(grammarAccess.getRepositoryComponent_ImplAccess().getGroup_3_3()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__RepositoryComponent_Impl__Group_3__3__Impl"
-
-
-    // $ANTLR start "rule__RepositoryComponent_Impl__Group_3__4"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3286:1: rule__RepositoryComponent_Impl__Group_3__4 : rule__RepositoryComponent_Impl__Group_3__4__Impl ;
-    public final void rule__RepositoryComponent_Impl__Group_3__4() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3290:1: ( rule__RepositoryComponent_Impl__Group_3__4__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3291:2: rule__RepositoryComponent_Impl__Group_3__4__Impl
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_3__4__Impl_in_rule__RepositoryComponent_Impl__Group_3__46624);
-            rule__RepositoryComponent_Impl__Group_3__4__Impl();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__RepositoryComponent_Impl__Group_3__4"
-
-
-    // $ANTLR start "rule__RepositoryComponent_Impl__Group_3__4__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3297:1: rule__RepositoryComponent_Impl__Group_3__4__Impl : ( ')' ) ;
-    public final void rule__RepositoryComponent_Impl__Group_3__4__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3301:1: ( ( ')' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3302:1: ( ')' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3302:1: ( ')' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3303:1: ')'
-            {
-             before(grammarAccess.getRepositoryComponent_ImplAccess().getRightParenthesisKeyword_3_4()); 
-            match(input,34,FollowSets000.FOLLOW_34_in_rule__RepositoryComponent_Impl__Group_3__4__Impl6652); 
-             after(grammarAccess.getRepositoryComponent_ImplAccess().getRightParenthesisKeyword_3_4()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__RepositoryComponent_Impl__Group_3__4__Impl"
-
-
-    // $ANTLR start "rule__RepositoryComponent_Impl__Group_3_3__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3326:1: rule__RepositoryComponent_Impl__Group_3_3__0 : rule__RepositoryComponent_Impl__Group_3_3__0__Impl rule__RepositoryComponent_Impl__Group_3_3__1 ;
-    public final void rule__RepositoryComponent_Impl__Group_3_3__0() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3330:1: ( rule__RepositoryComponent_Impl__Group_3_3__0__Impl rule__RepositoryComponent_Impl__Group_3_3__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3331:2: rule__RepositoryComponent_Impl__Group_3_3__0__Impl rule__RepositoryComponent_Impl__Group_3_3__1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_3_3__0__Impl_in_rule__RepositoryComponent_Impl__Group_3_3__06693);
-            rule__RepositoryComponent_Impl__Group_3_3__0__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_3_3__1_in_rule__RepositoryComponent_Impl__Group_3_3__06696);
-            rule__RepositoryComponent_Impl__Group_3_3__1();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__RepositoryComponent_Impl__Group_3_3__0"
-
-
-    // $ANTLR start "rule__RepositoryComponent_Impl__Group_3_3__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3338:1: rule__RepositoryComponent_Impl__Group_3_3__0__Impl : ( ',' ) ;
-    public final void rule__RepositoryComponent_Impl__Group_3_3__0__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3342:1: ( ( ',' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3343:1: ( ',' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3343:1: ( ',' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3344:1: ','
-            {
-             before(grammarAccess.getRepositoryComponent_ImplAccess().getCommaKeyword_3_3_0()); 
-            match(input,23,FollowSets000.FOLLOW_23_in_rule__RepositoryComponent_Impl__Group_3_3__0__Impl6724); 
-             after(grammarAccess.getRepositoryComponent_ImplAccess().getCommaKeyword_3_3_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__RepositoryComponent_Impl__Group_3_3__0__Impl"
-
-
-    // $ANTLR start "rule__RepositoryComponent_Impl__Group_3_3__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3357:1: rule__RepositoryComponent_Impl__Group_3_3__1 : rule__RepositoryComponent_Impl__Group_3_3__1__Impl ;
-    public final void rule__RepositoryComponent_Impl__Group_3_3__1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3361:1: ( rule__RepositoryComponent_Impl__Group_3_3__1__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3362:2: rule__RepositoryComponent_Impl__Group_3_3__1__Impl
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_3_3__1__Impl_in_rule__RepositoryComponent_Impl__Group_3_3__16755);
-            rule__RepositoryComponent_Impl__Group_3_3__1__Impl();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__RepositoryComponent_Impl__Group_3_3__1"
-
-
-    // $ANTLR start "rule__RepositoryComponent_Impl__Group_3_3__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3368:1: rule__RepositoryComponent_Impl__Group_3_3__1__Impl : ( ( rule__RepositoryComponent_Impl__RelationshipAssignment_3_3_1 ) ) ;
-    public final void rule__RepositoryComponent_Impl__Group_3_3__1__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3372:1: ( ( ( rule__RepositoryComponent_Impl__RelationshipAssignment_3_3_1 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3373:1: ( ( rule__RepositoryComponent_Impl__RelationshipAssignment_3_3_1 ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3373:1: ( ( rule__RepositoryComponent_Impl__RelationshipAssignment_3_3_1 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3374:1: ( rule__RepositoryComponent_Impl__RelationshipAssignment_3_3_1 )
-            {
-             before(grammarAccess.getRepositoryComponent_ImplAccess().getRelationshipAssignment_3_3_1()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3375:1: ( rule__RepositoryComponent_Impl__RelationshipAssignment_3_3_1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3375:2: rule__RepositoryComponent_Impl__RelationshipAssignment_3_3_1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__RelationshipAssignment_3_3_1_in_rule__RepositoryComponent_Impl__Group_3_3__1__Impl6782);
-            rule__RepositoryComponent_Impl__RelationshipAssignment_3_3_1();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getRepositoryComponent_ImplAccess().getRelationshipAssignment_3_3_1()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__RepositoryComponent_Impl__Group_3_3__1__Impl"
-
-
-    // $ANTLR start "rule__RepositoryComponent_Impl__Group_4__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3389:1: rule__RepositoryComponent_Impl__Group_4__0 : rule__RepositoryComponent_Impl__Group_4__0__Impl rule__RepositoryComponent_Impl__Group_4__1 ;
-    public final void rule__RepositoryComponent_Impl__Group_4__0() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3393:1: ( rule__RepositoryComponent_Impl__Group_4__0__Impl rule__RepositoryComponent_Impl__Group_4__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3394:2: rule__RepositoryComponent_Impl__Group_4__0__Impl rule__RepositoryComponent_Impl__Group_4__1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_4__0__Impl_in_rule__RepositoryComponent_Impl__Group_4__06816);
-            rule__RepositoryComponent_Impl__Group_4__0__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_4__1_in_rule__RepositoryComponent_Impl__Group_4__06819);
-            rule__RepositoryComponent_Impl__Group_4__1();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__RepositoryComponent_Impl__Group_4__0"
-
-
-    // $ANTLR start "rule__RepositoryComponent_Impl__Group_4__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3401:1: rule__RepositoryComponent_Impl__Group_4__0__Impl : ( 'providedRoles' ) ;
-    public final void rule__RepositoryComponent_Impl__Group_4__0__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3405:1: ( ( 'providedRoles' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3406:1: ( 'providedRoles' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3406:1: ( 'providedRoles' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3407:1: 'providedRoles'
-            {
-             before(grammarAccess.getRepositoryComponent_ImplAccess().getProvidedRolesKeyword_4_0()); 
-            match(input,37,FollowSets000.FOLLOW_37_in_rule__RepositoryComponent_Impl__Group_4__0__Impl6847); 
-             after(grammarAccess.getRepositoryComponent_ImplAccess().getProvidedRolesKeyword_4_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__RepositoryComponent_Impl__Group_4__0__Impl"
-
-
-    // $ANTLR start "rule__RepositoryComponent_Impl__Group_4__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3420:1: rule__RepositoryComponent_Impl__Group_4__1 : rule__RepositoryComponent_Impl__Group_4__1__Impl rule__RepositoryComponent_Impl__Group_4__2 ;
-    public final void rule__RepositoryComponent_Impl__Group_4__1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3424:1: ( rule__RepositoryComponent_Impl__Group_4__1__Impl rule__RepositoryComponent_Impl__Group_4__2 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3425:2: rule__RepositoryComponent_Impl__Group_4__1__Impl rule__RepositoryComponent_Impl__Group_4__2
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_4__1__Impl_in_rule__RepositoryComponent_Impl__Group_4__16878);
-            rule__RepositoryComponent_Impl__Group_4__1__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_4__2_in_rule__RepositoryComponent_Impl__Group_4__16881);
-            rule__RepositoryComponent_Impl__Group_4__2();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__RepositoryComponent_Impl__Group_4__1"
-
-
-    // $ANTLR start "rule__RepositoryComponent_Impl__Group_4__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3432:1: rule__RepositoryComponent_Impl__Group_4__1__Impl : ( '{' ) ;
-    public final void rule__RepositoryComponent_Impl__Group_4__1__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3436:1: ( ( '{' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3437:1: ( '{' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3437:1: ( '{' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3438:1: '{'
-            {
-             before(grammarAccess.getRepositoryComponent_ImplAccess().getLeftCurlyBracketKeyword_4_1()); 
-            match(input,20,FollowSets000.FOLLOW_20_in_rule__RepositoryComponent_Impl__Group_4__1__Impl6909); 
-             after(grammarAccess.getRepositoryComponent_ImplAccess().getLeftCurlyBracketKeyword_4_1()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__RepositoryComponent_Impl__Group_4__1__Impl"
-
-
-    // $ANTLR start "rule__RepositoryComponent_Impl__Group_4__2"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3451:1: rule__RepositoryComponent_Impl__Group_4__2 : rule__RepositoryComponent_Impl__Group_4__2__Impl rule__RepositoryComponent_Impl__Group_4__3 ;
-    public final void rule__RepositoryComponent_Impl__Group_4__2() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3455:1: ( rule__RepositoryComponent_Impl__Group_4__2__Impl rule__RepositoryComponent_Impl__Group_4__3 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3456:2: rule__RepositoryComponent_Impl__Group_4__2__Impl rule__RepositoryComponent_Impl__Group_4__3
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_4__2__Impl_in_rule__RepositoryComponent_Impl__Group_4__26940);
-            rule__RepositoryComponent_Impl__Group_4__2__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_4__3_in_rule__RepositoryComponent_Impl__Group_4__26943);
-            rule__RepositoryComponent_Impl__Group_4__3();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__RepositoryComponent_Impl__Group_4__2"
-
-
-    // $ANTLR start "rule__RepositoryComponent_Impl__Group_4__2__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3463:1: rule__RepositoryComponent_Impl__Group_4__2__Impl : ( ( rule__RepositoryComponent_Impl__ProvidedRolesAssignment_4_2 ) ) ;
-    public final void rule__RepositoryComponent_Impl__Group_4__2__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3467:1: ( ( ( rule__RepositoryComponent_Impl__ProvidedRolesAssignment_4_2 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3468:1: ( ( rule__RepositoryComponent_Impl__ProvidedRolesAssignment_4_2 ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3468:1: ( ( rule__RepositoryComponent_Impl__ProvidedRolesAssignment_4_2 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3469:1: ( rule__RepositoryComponent_Impl__ProvidedRolesAssignment_4_2 )
-            {
-             before(grammarAccess.getRepositoryComponent_ImplAccess().getProvidedRolesAssignment_4_2()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3470:1: ( rule__RepositoryComponent_Impl__ProvidedRolesAssignment_4_2 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3470:2: rule__RepositoryComponent_Impl__ProvidedRolesAssignment_4_2
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__ProvidedRolesAssignment_4_2_in_rule__RepositoryComponent_Impl__Group_4__2__Impl6970);
-            rule__RepositoryComponent_Impl__ProvidedRolesAssignment_4_2();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getRepositoryComponent_ImplAccess().getProvidedRolesAssignment_4_2()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__RepositoryComponent_Impl__Group_4__2__Impl"
-
-
-    // $ANTLR start "rule__RepositoryComponent_Impl__Group_4__3"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3480:1: rule__RepositoryComponent_Impl__Group_4__3 : rule__RepositoryComponent_Impl__Group_4__3__Impl rule__RepositoryComponent_Impl__Group_4__4 ;
-    public final void rule__RepositoryComponent_Impl__Group_4__3() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3484:1: ( rule__RepositoryComponent_Impl__Group_4__3__Impl rule__RepositoryComponent_Impl__Group_4__4 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3485:2: rule__RepositoryComponent_Impl__Group_4__3__Impl rule__RepositoryComponent_Impl__Group_4__4
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_4__3__Impl_in_rule__RepositoryComponent_Impl__Group_4__37000);
-            rule__RepositoryComponent_Impl__Group_4__3__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_4__4_in_rule__RepositoryComponent_Impl__Group_4__37003);
-            rule__RepositoryComponent_Impl__Group_4__4();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__RepositoryComponent_Impl__Group_4__3"
-
-
-    // $ANTLR start "rule__RepositoryComponent_Impl__Group_4__3__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3492:1: rule__RepositoryComponent_Impl__Group_4__3__Impl : ( ( rule__RepositoryComponent_Impl__Group_4_3__0 )* ) ;
-    public final void rule__RepositoryComponent_Impl__Group_4__3__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3496:1: ( ( ( rule__RepositoryComponent_Impl__Group_4_3__0 )* ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3497:1: ( ( rule__RepositoryComponent_Impl__Group_4_3__0 )* )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3497:1: ( ( rule__RepositoryComponent_Impl__Group_4_3__0 )* )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3498:1: ( rule__RepositoryComponent_Impl__Group_4_3__0 )*
-            {
-             before(grammarAccess.getRepositoryComponent_ImplAccess().getGroup_4_3()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3499:1: ( rule__RepositoryComponent_Impl__Group_4_3__0 )*
-            loop24:
-            do {
-                int alt24=2;
-                int LA24_0 = input.LA(1);
-
-                if ( (LA24_0==23) ) {
-                    alt24=1;
-                }
-
-
-                switch (alt24) {
-            	case 1 :
-            	    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3499:2: rule__RepositoryComponent_Impl__Group_4_3__0
-            	    {
-            	    pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_4_3__0_in_rule__RepositoryComponent_Impl__Group_4__3__Impl7030);
-            	    rule__RepositoryComponent_Impl__Group_4_3__0();
-
-            	    state._fsp--;
-
-
-            	    }
-            	    break;
-
-            	default :
-            	    break loop24;
-                }
-            } while (true);
-
-             after(grammarAccess.getRepositoryComponent_ImplAccess().getGroup_4_3()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__RepositoryComponent_Impl__Group_4__3__Impl"
-
-
-    // $ANTLR start "rule__RepositoryComponent_Impl__Group_4__4"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3509:1: rule__RepositoryComponent_Impl__Group_4__4 : rule__RepositoryComponent_Impl__Group_4__4__Impl ;
-    public final void rule__RepositoryComponent_Impl__Group_4__4() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3513:1: ( rule__RepositoryComponent_Impl__Group_4__4__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3514:2: rule__RepositoryComponent_Impl__Group_4__4__Impl
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_4__4__Impl_in_rule__RepositoryComponent_Impl__Group_4__47061);
-            rule__RepositoryComponent_Impl__Group_4__4__Impl();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__RepositoryComponent_Impl__Group_4__4"
-
-
-    // $ANTLR start "rule__RepositoryComponent_Impl__Group_4__4__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3520:1: rule__RepositoryComponent_Impl__Group_4__4__Impl : ( '}' ) ;
-    public final void rule__RepositoryComponent_Impl__Group_4__4__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3524:1: ( ( '}' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3525:1: ( '}' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3525:1: ( '}' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3526:1: '}'
-            {
-             before(grammarAccess.getRepositoryComponent_ImplAccess().getRightCurlyBracketKeyword_4_4()); 
-            match(input,21,FollowSets000.FOLLOW_21_in_rule__RepositoryComponent_Impl__Group_4__4__Impl7089); 
-             after(grammarAccess.getRepositoryComponent_ImplAccess().getRightCurlyBracketKeyword_4_4()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__RepositoryComponent_Impl__Group_4__4__Impl"
-
-
-    // $ANTLR start "rule__RepositoryComponent_Impl__Group_4_3__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3549:1: rule__RepositoryComponent_Impl__Group_4_3__0 : rule__RepositoryComponent_Impl__Group_4_3__0__Impl rule__RepositoryComponent_Impl__Group_4_3__1 ;
-    public final void rule__RepositoryComponent_Impl__Group_4_3__0() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3553:1: ( rule__RepositoryComponent_Impl__Group_4_3__0__Impl rule__RepositoryComponent_Impl__Group_4_3__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3554:2: rule__RepositoryComponent_Impl__Group_4_3__0__Impl rule__RepositoryComponent_Impl__Group_4_3__1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_4_3__0__Impl_in_rule__RepositoryComponent_Impl__Group_4_3__07130);
-            rule__RepositoryComponent_Impl__Group_4_3__0__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_4_3__1_in_rule__RepositoryComponent_Impl__Group_4_3__07133);
-            rule__RepositoryComponent_Impl__Group_4_3__1();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__RepositoryComponent_Impl__Group_4_3__0"
-
-
-    // $ANTLR start "rule__RepositoryComponent_Impl__Group_4_3__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3561:1: rule__RepositoryComponent_Impl__Group_4_3__0__Impl : ( ',' ) ;
-    public final void rule__RepositoryComponent_Impl__Group_4_3__0__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3565:1: ( ( ',' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3566:1: ( ',' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3566:1: ( ',' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3567:1: ','
-            {
-             before(grammarAccess.getRepositoryComponent_ImplAccess().getCommaKeyword_4_3_0()); 
-            match(input,23,FollowSets000.FOLLOW_23_in_rule__RepositoryComponent_Impl__Group_4_3__0__Impl7161); 
-             after(grammarAccess.getRepositoryComponent_ImplAccess().getCommaKeyword_4_3_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__RepositoryComponent_Impl__Group_4_3__0__Impl"
-
-
-    // $ANTLR start "rule__RepositoryComponent_Impl__Group_4_3__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3580:1: rule__RepositoryComponent_Impl__Group_4_3__1 : rule__RepositoryComponent_Impl__Group_4_3__1__Impl ;
-    public final void rule__RepositoryComponent_Impl__Group_4_3__1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3584:1: ( rule__RepositoryComponent_Impl__Group_4_3__1__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3585:2: rule__RepositoryComponent_Impl__Group_4_3__1__Impl
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_4_3__1__Impl_in_rule__RepositoryComponent_Impl__Group_4_3__17192);
-            rule__RepositoryComponent_Impl__Group_4_3__1__Impl();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__RepositoryComponent_Impl__Group_4_3__1"
-
-
-    // $ANTLR start "rule__RepositoryComponent_Impl__Group_4_3__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3591:1: rule__RepositoryComponent_Impl__Group_4_3__1__Impl : ( ( rule__RepositoryComponent_Impl__ProvidedRolesAssignment_4_3_1 ) ) ;
-    public final void rule__RepositoryComponent_Impl__Group_4_3__1__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3595:1: ( ( ( rule__RepositoryComponent_Impl__ProvidedRolesAssignment_4_3_1 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3596:1: ( ( rule__RepositoryComponent_Impl__ProvidedRolesAssignment_4_3_1 ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3596:1: ( ( rule__RepositoryComponent_Impl__ProvidedRolesAssignment_4_3_1 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3597:1: ( rule__RepositoryComponent_Impl__ProvidedRolesAssignment_4_3_1 )
-            {
-             before(grammarAccess.getRepositoryComponent_ImplAccess().getProvidedRolesAssignment_4_3_1()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3598:1: ( rule__RepositoryComponent_Impl__ProvidedRolesAssignment_4_3_1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3598:2: rule__RepositoryComponent_Impl__ProvidedRolesAssignment_4_3_1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__ProvidedRolesAssignment_4_3_1_in_rule__RepositoryComponent_Impl__Group_4_3__1__Impl7219);
-            rule__RepositoryComponent_Impl__ProvidedRolesAssignment_4_3_1();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getRepositoryComponent_ImplAccess().getProvidedRolesAssignment_4_3_1()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__RepositoryComponent_Impl__Group_4_3__1__Impl"
-
-
-    // $ANTLR start "rule__RepositoryComponent_Impl__Group_5__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3612:1: rule__RepositoryComponent_Impl__Group_5__0 : rule__RepositoryComponent_Impl__Group_5__0__Impl rule__RepositoryComponent_Impl__Group_5__1 ;
-    public final void rule__RepositoryComponent_Impl__Group_5__0() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3616:1: ( rule__RepositoryComponent_Impl__Group_5__0__Impl rule__RepositoryComponent_Impl__Group_5__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3617:2: rule__RepositoryComponent_Impl__Group_5__0__Impl rule__RepositoryComponent_Impl__Group_5__1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_5__0__Impl_in_rule__RepositoryComponent_Impl__Group_5__07253);
-            rule__RepositoryComponent_Impl__Group_5__0__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_5__1_in_rule__RepositoryComponent_Impl__Group_5__07256);
-            rule__RepositoryComponent_Impl__Group_5__1();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__RepositoryComponent_Impl__Group_5__0"
-
-
-    // $ANTLR start "rule__RepositoryComponent_Impl__Group_5__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3624:1: rule__RepositoryComponent_Impl__Group_5__0__Impl : ( 'requiredRoles' ) ;
-    public final void rule__RepositoryComponent_Impl__Group_5__0__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3628:1: ( ( 'requiredRoles' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3629:1: ( 'requiredRoles' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3629:1: ( 'requiredRoles' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3630:1: 'requiredRoles'
-            {
-             before(grammarAccess.getRepositoryComponent_ImplAccess().getRequiredRolesKeyword_5_0()); 
-            match(input,38,FollowSets000.FOLLOW_38_in_rule__RepositoryComponent_Impl__Group_5__0__Impl7284); 
-             after(grammarAccess.getRepositoryComponent_ImplAccess().getRequiredRolesKeyword_5_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__RepositoryComponent_Impl__Group_5__0__Impl"
-
-
-    // $ANTLR start "rule__RepositoryComponent_Impl__Group_5__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3643:1: rule__RepositoryComponent_Impl__Group_5__1 : rule__RepositoryComponent_Impl__Group_5__1__Impl rule__RepositoryComponent_Impl__Group_5__2 ;
-    public final void rule__RepositoryComponent_Impl__Group_5__1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3647:1: ( rule__RepositoryComponent_Impl__Group_5__1__Impl rule__RepositoryComponent_Impl__Group_5__2 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3648:2: rule__RepositoryComponent_Impl__Group_5__1__Impl rule__RepositoryComponent_Impl__Group_5__2
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_5__1__Impl_in_rule__RepositoryComponent_Impl__Group_5__17315);
-            rule__RepositoryComponent_Impl__Group_5__1__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_5__2_in_rule__RepositoryComponent_Impl__Group_5__17318);
-            rule__RepositoryComponent_Impl__Group_5__2();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__RepositoryComponent_Impl__Group_5__1"
-
-
-    // $ANTLR start "rule__RepositoryComponent_Impl__Group_5__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3655:1: rule__RepositoryComponent_Impl__Group_5__1__Impl : ( '{' ) ;
-    public final void rule__RepositoryComponent_Impl__Group_5__1__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3659:1: ( ( '{' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3660:1: ( '{' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3660:1: ( '{' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3661:1: '{'
-            {
-             before(grammarAccess.getRepositoryComponent_ImplAccess().getLeftCurlyBracketKeyword_5_1()); 
-            match(input,20,FollowSets000.FOLLOW_20_in_rule__RepositoryComponent_Impl__Group_5__1__Impl7346); 
-             after(grammarAccess.getRepositoryComponent_ImplAccess().getLeftCurlyBracketKeyword_5_1()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__RepositoryComponent_Impl__Group_5__1__Impl"
-
-
-    // $ANTLR start "rule__RepositoryComponent_Impl__Group_5__2"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3674:1: rule__RepositoryComponent_Impl__Group_5__2 : rule__RepositoryComponent_Impl__Group_5__2__Impl rule__RepositoryComponent_Impl__Group_5__3 ;
-    public final void rule__RepositoryComponent_Impl__Group_5__2() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3678:1: ( rule__RepositoryComponent_Impl__Group_5__2__Impl rule__RepositoryComponent_Impl__Group_5__3 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3679:2: rule__RepositoryComponent_Impl__Group_5__2__Impl rule__RepositoryComponent_Impl__Group_5__3
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_5__2__Impl_in_rule__RepositoryComponent_Impl__Group_5__27377);
-            rule__RepositoryComponent_Impl__Group_5__2__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_5__3_in_rule__RepositoryComponent_Impl__Group_5__27380);
-            rule__RepositoryComponent_Impl__Group_5__3();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__RepositoryComponent_Impl__Group_5__2"
-
-
-    // $ANTLR start "rule__RepositoryComponent_Impl__Group_5__2__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3686:1: rule__RepositoryComponent_Impl__Group_5__2__Impl : ( ( rule__RepositoryComponent_Impl__RequiredRolesAssignment_5_2 ) ) ;
-    public final void rule__RepositoryComponent_Impl__Group_5__2__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3690:1: ( ( ( rule__RepositoryComponent_Impl__RequiredRolesAssignment_5_2 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3691:1: ( ( rule__RepositoryComponent_Impl__RequiredRolesAssignment_5_2 ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3691:1: ( ( rule__RepositoryComponent_Impl__RequiredRolesAssignment_5_2 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3692:1: ( rule__RepositoryComponent_Impl__RequiredRolesAssignment_5_2 )
-            {
-             before(grammarAccess.getRepositoryComponent_ImplAccess().getRequiredRolesAssignment_5_2()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3693:1: ( rule__RepositoryComponent_Impl__RequiredRolesAssignment_5_2 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3693:2: rule__RepositoryComponent_Impl__RequiredRolesAssignment_5_2
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__RequiredRolesAssignment_5_2_in_rule__RepositoryComponent_Impl__Group_5__2__Impl7407);
-            rule__RepositoryComponent_Impl__RequiredRolesAssignment_5_2();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getRepositoryComponent_ImplAccess().getRequiredRolesAssignment_5_2()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__RepositoryComponent_Impl__Group_5__2__Impl"
-
-
-    // $ANTLR start "rule__RepositoryComponent_Impl__Group_5__3"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3703:1: rule__RepositoryComponent_Impl__Group_5__3 : rule__RepositoryComponent_Impl__Group_5__3__Impl rule__RepositoryComponent_Impl__Group_5__4 ;
-    public final void rule__RepositoryComponent_Impl__Group_5__3() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3707:1: ( rule__RepositoryComponent_Impl__Group_5__3__Impl rule__RepositoryComponent_Impl__Group_5__4 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3708:2: rule__RepositoryComponent_Impl__Group_5__3__Impl rule__RepositoryComponent_Impl__Group_5__4
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_5__3__Impl_in_rule__RepositoryComponent_Impl__Group_5__37437);
-            rule__RepositoryComponent_Impl__Group_5__3__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_5__4_in_rule__RepositoryComponent_Impl__Group_5__37440);
-            rule__RepositoryComponent_Impl__Group_5__4();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__RepositoryComponent_Impl__Group_5__3"
-
-
-    // $ANTLR start "rule__RepositoryComponent_Impl__Group_5__3__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3715:1: rule__RepositoryComponent_Impl__Group_5__3__Impl : ( ( rule__RepositoryComponent_Impl__Group_5_3__0 )* ) ;
-    public final void rule__RepositoryComponent_Impl__Group_5__3__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3719:1: ( ( ( rule__RepositoryComponent_Impl__Group_5_3__0 )* ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3720:1: ( ( rule__RepositoryComponent_Impl__Group_5_3__0 )* )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3720:1: ( ( rule__RepositoryComponent_Impl__Group_5_3__0 )* )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3721:1: ( rule__RepositoryComponent_Impl__Group_5_3__0 )*
-            {
-             before(grammarAccess.getRepositoryComponent_ImplAccess().getGroup_5_3()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3722:1: ( rule__RepositoryComponent_Impl__Group_5_3__0 )*
-            loop25:
-            do {
-                int alt25=2;
-                int LA25_0 = input.LA(1);
-
-                if ( (LA25_0==23) ) {
-                    alt25=1;
-                }
-
-
-                switch (alt25) {
-            	case 1 :
-            	    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3722:2: rule__RepositoryComponent_Impl__Group_5_3__0
-            	    {
-            	    pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_5_3__0_in_rule__RepositoryComponent_Impl__Group_5__3__Impl7467);
-            	    rule__RepositoryComponent_Impl__Group_5_3__0();
-
-            	    state._fsp--;
-
-
-            	    }
-            	    break;
-
-            	default :
-            	    break loop25;
-                }
-            } while (true);
-
-             after(grammarAccess.getRepositoryComponent_ImplAccess().getGroup_5_3()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__RepositoryComponent_Impl__Group_5__3__Impl"
-
-
-    // $ANTLR start "rule__RepositoryComponent_Impl__Group_5__4"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3732:1: rule__RepositoryComponent_Impl__Group_5__4 : rule__RepositoryComponent_Impl__Group_5__4__Impl ;
-    public final void rule__RepositoryComponent_Impl__Group_5__4() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3736:1: ( rule__RepositoryComponent_Impl__Group_5__4__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3737:2: rule__RepositoryComponent_Impl__Group_5__4__Impl
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_5__4__Impl_in_rule__RepositoryComponent_Impl__Group_5__47498);
-            rule__RepositoryComponent_Impl__Group_5__4__Impl();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__RepositoryComponent_Impl__Group_5__4"
-
-
-    // $ANTLR start "rule__RepositoryComponent_Impl__Group_5__4__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3743:1: rule__RepositoryComponent_Impl__Group_5__4__Impl : ( '}' ) ;
-    public final void rule__RepositoryComponent_Impl__Group_5__4__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3747:1: ( ( '}' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3748:1: ( '}' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3748:1: ( '}' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3749:1: '}'
-            {
-             before(grammarAccess.getRepositoryComponent_ImplAccess().getRightCurlyBracketKeyword_5_4()); 
-            match(input,21,FollowSets000.FOLLOW_21_in_rule__RepositoryComponent_Impl__Group_5__4__Impl7526); 
-             after(grammarAccess.getRepositoryComponent_ImplAccess().getRightCurlyBracketKeyword_5_4()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__RepositoryComponent_Impl__Group_5__4__Impl"
-
-
-    // $ANTLR start "rule__RepositoryComponent_Impl__Group_5_3__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3772:1: rule__RepositoryComponent_Impl__Group_5_3__0 : rule__RepositoryComponent_Impl__Group_5_3__0__Impl rule__RepositoryComponent_Impl__Group_5_3__1 ;
-    public final void rule__RepositoryComponent_Impl__Group_5_3__0() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3776:1: ( rule__RepositoryComponent_Impl__Group_5_3__0__Impl rule__RepositoryComponent_Impl__Group_5_3__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3777:2: rule__RepositoryComponent_Impl__Group_5_3__0__Impl rule__RepositoryComponent_Impl__Group_5_3__1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_5_3__0__Impl_in_rule__RepositoryComponent_Impl__Group_5_3__07567);
-            rule__RepositoryComponent_Impl__Group_5_3__0__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_5_3__1_in_rule__RepositoryComponent_Impl__Group_5_3__07570);
-            rule__RepositoryComponent_Impl__Group_5_3__1();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__RepositoryComponent_Impl__Group_5_3__0"
-
-
-    // $ANTLR start "rule__RepositoryComponent_Impl__Group_5_3__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3784:1: rule__RepositoryComponent_Impl__Group_5_3__0__Impl : ( ',' ) ;
-    public final void rule__RepositoryComponent_Impl__Group_5_3__0__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3788:1: ( ( ',' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3789:1: ( ',' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3789:1: ( ',' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3790:1: ','
-            {
-             before(grammarAccess.getRepositoryComponent_ImplAccess().getCommaKeyword_5_3_0()); 
-            match(input,23,FollowSets000.FOLLOW_23_in_rule__RepositoryComponent_Impl__Group_5_3__0__Impl7598); 
-             after(grammarAccess.getRepositoryComponent_ImplAccess().getCommaKeyword_5_3_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__RepositoryComponent_Impl__Group_5_3__0__Impl"
-
-
-    // $ANTLR start "rule__RepositoryComponent_Impl__Group_5_3__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3803:1: rule__RepositoryComponent_Impl__Group_5_3__1 : rule__RepositoryComponent_Impl__Group_5_3__1__Impl ;
-    public final void rule__RepositoryComponent_Impl__Group_5_3__1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3807:1: ( rule__RepositoryComponent_Impl__Group_5_3__1__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3808:2: rule__RepositoryComponent_Impl__Group_5_3__1__Impl
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_5_3__1__Impl_in_rule__RepositoryComponent_Impl__Group_5_3__17629);
-            rule__RepositoryComponent_Impl__Group_5_3__1__Impl();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__RepositoryComponent_Impl__Group_5_3__1"
-
-
-    // $ANTLR start "rule__RepositoryComponent_Impl__Group_5_3__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3814:1: rule__RepositoryComponent_Impl__Group_5_3__1__Impl : ( ( rule__RepositoryComponent_Impl__RequiredRolesAssignment_5_3_1 ) ) ;
-    public final void rule__RepositoryComponent_Impl__Group_5_3__1__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3818:1: ( ( ( rule__RepositoryComponent_Impl__RequiredRolesAssignment_5_3_1 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3819:1: ( ( rule__RepositoryComponent_Impl__RequiredRolesAssignment_5_3_1 ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3819:1: ( ( rule__RepositoryComponent_Impl__RequiredRolesAssignment_5_3_1 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3820:1: ( rule__RepositoryComponent_Impl__RequiredRolesAssignment_5_3_1 )
-            {
-             before(grammarAccess.getRepositoryComponent_ImplAccess().getRequiredRolesAssignment_5_3_1()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3821:1: ( rule__RepositoryComponent_Impl__RequiredRolesAssignment_5_3_1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3821:2: rule__RepositoryComponent_Impl__RequiredRolesAssignment_5_3_1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__RequiredRolesAssignment_5_3_1_in_rule__RepositoryComponent_Impl__Group_5_3__1__Impl7656);
-            rule__RepositoryComponent_Impl__RequiredRolesAssignment_5_3_1();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getRepositoryComponent_ImplAccess().getRequiredRolesAssignment_5_3_1()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__RepositoryComponent_Impl__Group_5_3__1__Impl"
-
-
-    // $ANTLR start "rule__CollectionDataType__Group__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3835:1: rule__CollectionDataType__Group__0 : rule__CollectionDataType__Group__0__Impl rule__CollectionDataType__Group__1 ;
-    public final void rule__CollectionDataType__Group__0() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3839:1: ( rule__CollectionDataType__Group__0__Impl rule__CollectionDataType__Group__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3840:2: rule__CollectionDataType__Group__0__Impl rule__CollectionDataType__Group__1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__CollectionDataType__Group__0__Impl_in_rule__CollectionDataType__Group__07690);
-            rule__CollectionDataType__Group__0__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__CollectionDataType__Group__1_in_rule__CollectionDataType__Group__07693);
-            rule__CollectionDataType__Group__1();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CollectionDataType__Group__0"
-
-
-    // $ANTLR start "rule__CollectionDataType__Group__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3847:1: rule__CollectionDataType__Group__0__Impl : ( 'CollectionDataType' ) ;
-    public final void rule__CollectionDataType__Group__0__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3851:1: ( ( 'CollectionDataType' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3852:1: ( 'CollectionDataType' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3852:1: ( 'CollectionDataType' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3853:1: 'CollectionDataType'
-            {
-             before(grammarAccess.getCollectionDataTypeAccess().getCollectionDataTypeKeyword_0()); 
-            match(input,39,FollowSets000.FOLLOW_39_in_rule__CollectionDataType__Group__0__Impl7721); 
-             after(grammarAccess.getCollectionDataTypeAccess().getCollectionDataTypeKeyword_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CollectionDataType__Group__0__Impl"
-
-
-    // $ANTLR start "rule__CollectionDataType__Group__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3866:1: rule__CollectionDataType__Group__1 : rule__CollectionDataType__Group__1__Impl rule__CollectionDataType__Group__2 ;
-    public final void rule__CollectionDataType__Group__1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3870:1: ( rule__CollectionDataType__Group__1__Impl rule__CollectionDataType__Group__2 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3871:2: rule__CollectionDataType__Group__1__Impl rule__CollectionDataType__Group__2
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__CollectionDataType__Group__1__Impl_in_rule__CollectionDataType__Group__17752);
-            rule__CollectionDataType__Group__1__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__CollectionDataType__Group__2_in_rule__CollectionDataType__Group__17755);
-            rule__CollectionDataType__Group__2();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CollectionDataType__Group__1"
-
-
-    // $ANTLR start "rule__CollectionDataType__Group__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3878:1: rule__CollectionDataType__Group__1__Impl : ( ( rule__CollectionDataType__NameAssignment_1 ) ) ;
-    public final void rule__CollectionDataType__Group__1__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3882:1: ( ( ( rule__CollectionDataType__NameAssignment_1 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3883:1: ( ( rule__CollectionDataType__NameAssignment_1 ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3883:1: ( ( rule__CollectionDataType__NameAssignment_1 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3884:1: ( rule__CollectionDataType__NameAssignment_1 )
-            {
-             before(grammarAccess.getCollectionDataTypeAccess().getNameAssignment_1()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3885:1: ( rule__CollectionDataType__NameAssignment_1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3885:2: rule__CollectionDataType__NameAssignment_1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__CollectionDataType__NameAssignment_1_in_rule__CollectionDataType__Group__1__Impl7782);
-            rule__CollectionDataType__NameAssignment_1();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getCollectionDataTypeAccess().getNameAssignment_1()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CollectionDataType__Group__1__Impl"
-
-
-    // $ANTLR start "rule__CollectionDataType__Group__2"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3895:1: rule__CollectionDataType__Group__2 : rule__CollectionDataType__Group__2__Impl rule__CollectionDataType__Group__3 ;
-    public final void rule__CollectionDataType__Group__2() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3899:1: ( rule__CollectionDataType__Group__2__Impl rule__CollectionDataType__Group__3 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3900:2: rule__CollectionDataType__Group__2__Impl rule__CollectionDataType__Group__3
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__CollectionDataType__Group__2__Impl_in_rule__CollectionDataType__Group__27812);
-            rule__CollectionDataType__Group__2__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__CollectionDataType__Group__3_in_rule__CollectionDataType__Group__27815);
-            rule__CollectionDataType__Group__3();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CollectionDataType__Group__2"
-
-
-    // $ANTLR start "rule__CollectionDataType__Group__2__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3907:1: rule__CollectionDataType__Group__2__Impl : ( '{' ) ;
-    public final void rule__CollectionDataType__Group__2__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3911:1: ( ( '{' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3912:1: ( '{' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3912:1: ( '{' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3913:1: '{'
-            {
-             before(grammarAccess.getCollectionDataTypeAccess().getLeftCurlyBracketKeyword_2()); 
-            match(input,20,FollowSets000.FOLLOW_20_in_rule__CollectionDataType__Group__2__Impl7843); 
-             after(grammarAccess.getCollectionDataTypeAccess().getLeftCurlyBracketKeyword_2()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CollectionDataType__Group__2__Impl"
-
-
-    // $ANTLR start "rule__CollectionDataType__Group__3"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3926:1: rule__CollectionDataType__Group__3 : rule__CollectionDataType__Group__3__Impl rule__CollectionDataType__Group__4 ;
-    public final void rule__CollectionDataType__Group__3() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3930:1: ( rule__CollectionDataType__Group__3__Impl rule__CollectionDataType__Group__4 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3931:2: rule__CollectionDataType__Group__3__Impl rule__CollectionDataType__Group__4
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__CollectionDataType__Group__3__Impl_in_rule__CollectionDataType__Group__37874);
-            rule__CollectionDataType__Group__3__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__CollectionDataType__Group__4_in_rule__CollectionDataType__Group__37877);
-            rule__CollectionDataType__Group__4();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CollectionDataType__Group__3"
-
-
-    // $ANTLR start "rule__CollectionDataType__Group__3__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3938:1: rule__CollectionDataType__Group__3__Impl : ( 'innerType' ) ;
-    public final void rule__CollectionDataType__Group__3__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3942:1: ( ( 'innerType' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3943:1: ( 'innerType' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3943:1: ( 'innerType' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3944:1: 'innerType'
-            {
-             before(grammarAccess.getCollectionDataTypeAccess().getInnerTypeKeyword_3()); 
-            match(input,40,FollowSets000.FOLLOW_40_in_rule__CollectionDataType__Group__3__Impl7905); 
-             after(grammarAccess.getCollectionDataTypeAccess().getInnerTypeKeyword_3()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CollectionDataType__Group__3__Impl"
-
-
-    // $ANTLR start "rule__CollectionDataType__Group__4"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3957:1: rule__CollectionDataType__Group__4 : rule__CollectionDataType__Group__4__Impl rule__CollectionDataType__Group__5 ;
-    public final void rule__CollectionDataType__Group__4() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3961:1: ( rule__CollectionDataType__Group__4__Impl rule__CollectionDataType__Group__5 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3962:2: rule__CollectionDataType__Group__4__Impl rule__CollectionDataType__Group__5
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__CollectionDataType__Group__4__Impl_in_rule__CollectionDataType__Group__47936);
-            rule__CollectionDataType__Group__4__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__CollectionDataType__Group__5_in_rule__CollectionDataType__Group__47939);
-            rule__CollectionDataType__Group__5();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CollectionDataType__Group__4"
-
-
-    // $ANTLR start "rule__CollectionDataType__Group__4__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3969:1: rule__CollectionDataType__Group__4__Impl : ( ( rule__CollectionDataType__InnerTypeAssignment_4 ) ) ;
-    public final void rule__CollectionDataType__Group__4__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3973:1: ( ( ( rule__CollectionDataType__InnerTypeAssignment_4 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3974:1: ( ( rule__CollectionDataType__InnerTypeAssignment_4 ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3974:1: ( ( rule__CollectionDataType__InnerTypeAssignment_4 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3975:1: ( rule__CollectionDataType__InnerTypeAssignment_4 )
-            {
-             before(grammarAccess.getCollectionDataTypeAccess().getInnerTypeAssignment_4()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3976:1: ( rule__CollectionDataType__InnerTypeAssignment_4 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3976:2: rule__CollectionDataType__InnerTypeAssignment_4
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__CollectionDataType__InnerTypeAssignment_4_in_rule__CollectionDataType__Group__4__Impl7966);
-            rule__CollectionDataType__InnerTypeAssignment_4();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getCollectionDataTypeAccess().getInnerTypeAssignment_4()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CollectionDataType__Group__4__Impl"
-
-
-    // $ANTLR start "rule__CollectionDataType__Group__5"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3986:1: rule__CollectionDataType__Group__5 : rule__CollectionDataType__Group__5__Impl ;
-    public final void rule__CollectionDataType__Group__5() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3990:1: ( rule__CollectionDataType__Group__5__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3991:2: rule__CollectionDataType__Group__5__Impl
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__CollectionDataType__Group__5__Impl_in_rule__CollectionDataType__Group__57996);
-            rule__CollectionDataType__Group__5__Impl();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CollectionDataType__Group__5"
-
-
-    // $ANTLR start "rule__CollectionDataType__Group__5__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3997:1: rule__CollectionDataType__Group__5__Impl : ( '}' ) ;
-    public final void rule__CollectionDataType__Group__5__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4001:1: ( ( '}' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4002:1: ( '}' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4002:1: ( '}' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4003:1: '}'
-            {
-             before(grammarAccess.getCollectionDataTypeAccess().getRightCurlyBracketKeyword_5()); 
-            match(input,21,FollowSets000.FOLLOW_21_in_rule__CollectionDataType__Group__5__Impl8024); 
-             after(grammarAccess.getCollectionDataTypeAccess().getRightCurlyBracketKeyword_5()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CollectionDataType__Group__5__Impl"
-
-
-    // $ANTLR start "rule__CompositeDataType__Group__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4028:1: rule__CompositeDataType__Group__0 : rule__CompositeDataType__Group__0__Impl rule__CompositeDataType__Group__1 ;
-    public final void rule__CompositeDataType__Group__0() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4032:1: ( rule__CompositeDataType__Group__0__Impl rule__CompositeDataType__Group__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4033:2: rule__CompositeDataType__Group__0__Impl rule__CompositeDataType__Group__1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group__0__Impl_in_rule__CompositeDataType__Group__08067);
-            rule__CompositeDataType__Group__0__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group__1_in_rule__CompositeDataType__Group__08070);
-            rule__CompositeDataType__Group__1();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CompositeDataType__Group__0"
-
-
-    // $ANTLR start "rule__CompositeDataType__Group__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4040:1: rule__CompositeDataType__Group__0__Impl : ( 'CompositeDataType' ) ;
-    public final void rule__CompositeDataType__Group__0__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4044:1: ( ( 'CompositeDataType' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4045:1: ( 'CompositeDataType' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4045:1: ( 'CompositeDataType' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4046:1: 'CompositeDataType'
-            {
-             before(grammarAccess.getCompositeDataTypeAccess().getCompositeDataTypeKeyword_0()); 
-            match(input,41,FollowSets000.FOLLOW_41_in_rule__CompositeDataType__Group__0__Impl8098); 
-             after(grammarAccess.getCompositeDataTypeAccess().getCompositeDataTypeKeyword_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CompositeDataType__Group__0__Impl"
-
-
-    // $ANTLR start "rule__CompositeDataType__Group__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4059:1: rule__CompositeDataType__Group__1 : rule__CompositeDataType__Group__1__Impl rule__CompositeDataType__Group__2 ;
-    public final void rule__CompositeDataType__Group__1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4063:1: ( rule__CompositeDataType__Group__1__Impl rule__CompositeDataType__Group__2 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4064:2: rule__CompositeDataType__Group__1__Impl rule__CompositeDataType__Group__2
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group__1__Impl_in_rule__CompositeDataType__Group__18129);
-            rule__CompositeDataType__Group__1__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group__2_in_rule__CompositeDataType__Group__18132);
-            rule__CompositeDataType__Group__2();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CompositeDataType__Group__1"
-
-
-    // $ANTLR start "rule__CompositeDataType__Group__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4071:1: rule__CompositeDataType__Group__1__Impl : ( ( rule__CompositeDataType__NameAssignment_1 ) ) ;
-    public final void rule__CompositeDataType__Group__1__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4075:1: ( ( ( rule__CompositeDataType__NameAssignment_1 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4076:1: ( ( rule__CompositeDataType__NameAssignment_1 ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4076:1: ( ( rule__CompositeDataType__NameAssignment_1 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4077:1: ( rule__CompositeDataType__NameAssignment_1 )
-            {
-             before(grammarAccess.getCompositeDataTypeAccess().getNameAssignment_1()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4078:1: ( rule__CompositeDataType__NameAssignment_1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4078:2: rule__CompositeDataType__NameAssignment_1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__NameAssignment_1_in_rule__CompositeDataType__Group__1__Impl8159);
-            rule__CompositeDataType__NameAssignment_1();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getCompositeDataTypeAccess().getNameAssignment_1()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CompositeDataType__Group__1__Impl"
-
-
-    // $ANTLR start "rule__CompositeDataType__Group__2"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4088:1: rule__CompositeDataType__Group__2 : rule__CompositeDataType__Group__2__Impl rule__CompositeDataType__Group__3 ;
-    public final void rule__CompositeDataType__Group__2() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4092:1: ( rule__CompositeDataType__Group__2__Impl rule__CompositeDataType__Group__3 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4093:2: rule__CompositeDataType__Group__2__Impl rule__CompositeDataType__Group__3
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group__2__Impl_in_rule__CompositeDataType__Group__28189);
-            rule__CompositeDataType__Group__2__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group__3_in_rule__CompositeDataType__Group__28192);
-            rule__CompositeDataType__Group__3();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CompositeDataType__Group__2"
-
-
-    // $ANTLR start "rule__CompositeDataType__Group__2__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4100:1: rule__CompositeDataType__Group__2__Impl : ( '{' ) ;
-    public final void rule__CompositeDataType__Group__2__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4104:1: ( ( '{' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4105:1: ( '{' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4105:1: ( '{' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4106:1: '{'
-            {
-             before(grammarAccess.getCompositeDataTypeAccess().getLeftCurlyBracketKeyword_2()); 
-            match(input,20,FollowSets000.FOLLOW_20_in_rule__CompositeDataType__Group__2__Impl8220); 
-             after(grammarAccess.getCompositeDataTypeAccess().getLeftCurlyBracketKeyword_2()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CompositeDataType__Group__2__Impl"
-
-
-    // $ANTLR start "rule__CompositeDataType__Group__3"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4119:1: rule__CompositeDataType__Group__3 : rule__CompositeDataType__Group__3__Impl rule__CompositeDataType__Group__4 ;
-    public final void rule__CompositeDataType__Group__3() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4123:1: ( rule__CompositeDataType__Group__3__Impl rule__CompositeDataType__Group__4 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4124:2: rule__CompositeDataType__Group__3__Impl rule__CompositeDataType__Group__4
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group__3__Impl_in_rule__CompositeDataType__Group__38251);
-            rule__CompositeDataType__Group__3__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group__4_in_rule__CompositeDataType__Group__38254);
-            rule__CompositeDataType__Group__4();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CompositeDataType__Group__3"
-
-
-    // $ANTLR start "rule__CompositeDataType__Group__3__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4131:1: rule__CompositeDataType__Group__3__Impl : ( ( rule__CompositeDataType__Group_3__0 )? ) ;
-    public final void rule__CompositeDataType__Group__3__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4135:1: ( ( ( rule__CompositeDataType__Group_3__0 )? ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4136:1: ( ( rule__CompositeDataType__Group_3__0 )? )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4136:1: ( ( rule__CompositeDataType__Group_3__0 )? )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4137:1: ( rule__CompositeDataType__Group_3__0 )?
-            {
-             before(grammarAccess.getCompositeDataTypeAccess().getGroup_3()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4138:1: ( rule__CompositeDataType__Group_3__0 )?
-            int alt26=2;
-            int LA26_0 = input.LA(1);
-
-            if ( (LA26_0==42) ) {
-                alt26=1;
-            }
-            switch (alt26) {
-                case 1 :
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4138:2: rule__CompositeDataType__Group_3__0
-                    {
-                    pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group_3__0_in_rule__CompositeDataType__Group__3__Impl8281);
-                    rule__CompositeDataType__Group_3__0();
-
-                    state._fsp--;
-
-
-                    }
-                    break;
-
-            }
-
-             after(grammarAccess.getCompositeDataTypeAccess().getGroup_3()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CompositeDataType__Group__3__Impl"
-
-
-    // $ANTLR start "rule__CompositeDataType__Group__4"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4148:1: rule__CompositeDataType__Group__4 : rule__CompositeDataType__Group__4__Impl rule__CompositeDataType__Group__5 ;
-    public final void rule__CompositeDataType__Group__4() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4152:1: ( rule__CompositeDataType__Group__4__Impl rule__CompositeDataType__Group__5 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4153:2: rule__CompositeDataType__Group__4__Impl rule__CompositeDataType__Group__5
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group__4__Impl_in_rule__CompositeDataType__Group__48312);
-            rule__CompositeDataType__Group__4__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group__5_in_rule__CompositeDataType__Group__48315);
-            rule__CompositeDataType__Group__5();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CompositeDataType__Group__4"
-
-
-    // $ANTLR start "rule__CompositeDataType__Group__4__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4160:1: rule__CompositeDataType__Group__4__Impl : ( ( rule__CompositeDataType__Group_4__0 )? ) ;
-    public final void rule__CompositeDataType__Group__4__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4164:1: ( ( ( rule__CompositeDataType__Group_4__0 )? ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4165:1: ( ( rule__CompositeDataType__Group_4__0 )? )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4165:1: ( ( rule__CompositeDataType__Group_4__0 )? )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4166:1: ( rule__CompositeDataType__Group_4__0 )?
-            {
-             before(grammarAccess.getCompositeDataTypeAccess().getGroup_4()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4167:1: ( rule__CompositeDataType__Group_4__0 )?
-            int alt27=2;
-            int LA27_0 = input.LA(1);
-
-            if ( (LA27_0==43) ) {
-                alt27=1;
-            }
-            switch (alt27) {
-                case 1 :
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4167:2: rule__CompositeDataType__Group_4__0
-                    {
-                    pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group_4__0_in_rule__CompositeDataType__Group__4__Impl8342);
-                    rule__CompositeDataType__Group_4__0();
-
-                    state._fsp--;
-
-
-                    }
-                    break;
-
-            }
-
-             after(grammarAccess.getCompositeDataTypeAccess().getGroup_4()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CompositeDataType__Group__4__Impl"
-
-
-    // $ANTLR start "rule__CompositeDataType__Group__5"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4177:1: rule__CompositeDataType__Group__5 : rule__CompositeDataType__Group__5__Impl ;
-    public final void rule__CompositeDataType__Group__5() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4181:1: ( rule__CompositeDataType__Group__5__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4182:2: rule__CompositeDataType__Group__5__Impl
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group__5__Impl_in_rule__CompositeDataType__Group__58373);
-            rule__CompositeDataType__Group__5__Impl();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CompositeDataType__Group__5"
-
-
-    // $ANTLR start "rule__CompositeDataType__Group__5__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4188:1: rule__CompositeDataType__Group__5__Impl : ( '}' ) ;
-    public final void rule__CompositeDataType__Group__5__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4192:1: ( ( '}' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4193:1: ( '}' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4193:1: ( '}' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4194:1: '}'
-            {
-             before(grammarAccess.getCompositeDataTypeAccess().getRightCurlyBracketKeyword_5()); 
-            match(input,21,FollowSets000.FOLLOW_21_in_rule__CompositeDataType__Group__5__Impl8401); 
-             after(grammarAccess.getCompositeDataTypeAccess().getRightCurlyBracketKeyword_5()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CompositeDataType__Group__5__Impl"
-
-
-    // $ANTLR start "rule__CompositeDataType__Group_3__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4219:1: rule__CompositeDataType__Group_3__0 : rule__CompositeDataType__Group_3__0__Impl rule__CompositeDataType__Group_3__1 ;
-    public final void rule__CompositeDataType__Group_3__0() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4223:1: ( rule__CompositeDataType__Group_3__0__Impl rule__CompositeDataType__Group_3__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4224:2: rule__CompositeDataType__Group_3__0__Impl rule__CompositeDataType__Group_3__1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group_3__0__Impl_in_rule__CompositeDataType__Group_3__08444);
-            rule__CompositeDataType__Group_3__0__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group_3__1_in_rule__CompositeDataType__Group_3__08447);
-            rule__CompositeDataType__Group_3__1();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CompositeDataType__Group_3__0"
-
-
-    // $ANTLR start "rule__CompositeDataType__Group_3__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4231:1: rule__CompositeDataType__Group_3__0__Impl : ( 'parentTypes' ) ;
-    public final void rule__CompositeDataType__Group_3__0__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4235:1: ( ( 'parentTypes' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4236:1: ( 'parentTypes' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4236:1: ( 'parentTypes' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4237:1: 'parentTypes'
-            {
-             before(grammarAccess.getCompositeDataTypeAccess().getParentTypesKeyword_3_0()); 
-            match(input,42,FollowSets000.FOLLOW_42_in_rule__CompositeDataType__Group_3__0__Impl8475); 
-             after(grammarAccess.getCompositeDataTypeAccess().getParentTypesKeyword_3_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CompositeDataType__Group_3__0__Impl"
-
-
-    // $ANTLR start "rule__CompositeDataType__Group_3__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4250:1: rule__CompositeDataType__Group_3__1 : rule__CompositeDataType__Group_3__1__Impl rule__CompositeDataType__Group_3__2 ;
-    public final void rule__CompositeDataType__Group_3__1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4254:1: ( rule__CompositeDataType__Group_3__1__Impl rule__CompositeDataType__Group_3__2 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4255:2: rule__CompositeDataType__Group_3__1__Impl rule__CompositeDataType__Group_3__2
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group_3__1__Impl_in_rule__CompositeDataType__Group_3__18506);
-            rule__CompositeDataType__Group_3__1__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group_3__2_in_rule__CompositeDataType__Group_3__18509);
-            rule__CompositeDataType__Group_3__2();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CompositeDataType__Group_3__1"
-
-
-    // $ANTLR start "rule__CompositeDataType__Group_3__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4262:1: rule__CompositeDataType__Group_3__1__Impl : ( '(' ) ;
-    public final void rule__CompositeDataType__Group_3__1__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4266:1: ( ( '(' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4267:1: ( '(' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4267:1: ( '(' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4268:1: '('
-            {
-             before(grammarAccess.getCompositeDataTypeAccess().getLeftParenthesisKeyword_3_1()); 
-            match(input,33,FollowSets000.FOLLOW_33_in_rule__CompositeDataType__Group_3__1__Impl8537); 
-             after(grammarAccess.getCompositeDataTypeAccess().getLeftParenthesisKeyword_3_1()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CompositeDataType__Group_3__1__Impl"
-
-
-    // $ANTLR start "rule__CompositeDataType__Group_3__2"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4281:1: rule__CompositeDataType__Group_3__2 : rule__CompositeDataType__Group_3__2__Impl rule__CompositeDataType__Group_3__3 ;
-    public final void rule__CompositeDataType__Group_3__2() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4285:1: ( rule__CompositeDataType__Group_3__2__Impl rule__CompositeDataType__Group_3__3 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4286:2: rule__CompositeDataType__Group_3__2__Impl rule__CompositeDataType__Group_3__3
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group_3__2__Impl_in_rule__CompositeDataType__Group_3__28568);
-            rule__CompositeDataType__Group_3__2__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group_3__3_in_rule__CompositeDataType__Group_3__28571);
-            rule__CompositeDataType__Group_3__3();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CompositeDataType__Group_3__2"
-
-
-    // $ANTLR start "rule__CompositeDataType__Group_3__2__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4293:1: rule__CompositeDataType__Group_3__2__Impl : ( ( rule__CompositeDataType__ParentTypesAssignment_3_2 ) ) ;
-    public final void rule__CompositeDataType__Group_3__2__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4297:1: ( ( ( rule__CompositeDataType__ParentTypesAssignment_3_2 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4298:1: ( ( rule__CompositeDataType__ParentTypesAssignment_3_2 ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4298:1: ( ( rule__CompositeDataType__ParentTypesAssignment_3_2 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4299:1: ( rule__CompositeDataType__ParentTypesAssignment_3_2 )
-            {
-             before(grammarAccess.getCompositeDataTypeAccess().getParentTypesAssignment_3_2()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4300:1: ( rule__CompositeDataType__ParentTypesAssignment_3_2 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4300:2: rule__CompositeDataType__ParentTypesAssignment_3_2
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__ParentTypesAssignment_3_2_in_rule__CompositeDataType__Group_3__2__Impl8598);
-            rule__CompositeDataType__ParentTypesAssignment_3_2();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getCompositeDataTypeAccess().getParentTypesAssignment_3_2()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CompositeDataType__Group_3__2__Impl"
-
-
-    // $ANTLR start "rule__CompositeDataType__Group_3__3"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4310:1: rule__CompositeDataType__Group_3__3 : rule__CompositeDataType__Group_3__3__Impl rule__CompositeDataType__Group_3__4 ;
-    public final void rule__CompositeDataType__Group_3__3() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4314:1: ( rule__CompositeDataType__Group_3__3__Impl rule__CompositeDataType__Group_3__4 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4315:2: rule__CompositeDataType__Group_3__3__Impl rule__CompositeDataType__Group_3__4
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group_3__3__Impl_in_rule__CompositeDataType__Group_3__38628);
-            rule__CompositeDataType__Group_3__3__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group_3__4_in_rule__CompositeDataType__Group_3__38631);
-            rule__CompositeDataType__Group_3__4();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CompositeDataType__Group_3__3"
-
-
-    // $ANTLR start "rule__CompositeDataType__Group_3__3__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4322:1: rule__CompositeDataType__Group_3__3__Impl : ( ( rule__CompositeDataType__Group_3_3__0 )* ) ;
-    public final void rule__CompositeDataType__Group_3__3__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4326:1: ( ( ( rule__CompositeDataType__Group_3_3__0 )* ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4327:1: ( ( rule__CompositeDataType__Group_3_3__0 )* )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4327:1: ( ( rule__CompositeDataType__Group_3_3__0 )* )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4328:1: ( rule__CompositeDataType__Group_3_3__0 )*
-            {
-             before(grammarAccess.getCompositeDataTypeAccess().getGroup_3_3()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4329:1: ( rule__CompositeDataType__Group_3_3__0 )*
-            loop28:
-            do {
-                int alt28=2;
-                int LA28_0 = input.LA(1);
-
-                if ( (LA28_0==23) ) {
-                    alt28=1;
-                }
-
-
-                switch (alt28) {
-            	case 1 :
-            	    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4329:2: rule__CompositeDataType__Group_3_3__0
-            	    {
-            	    pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group_3_3__0_in_rule__CompositeDataType__Group_3__3__Impl8658);
-            	    rule__CompositeDataType__Group_3_3__0();
-
-            	    state._fsp--;
-
-
-            	    }
-            	    break;
-
-            	default :
-            	    break loop28;
-                }
-            } while (true);
-
-             after(grammarAccess.getCompositeDataTypeAccess().getGroup_3_3()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CompositeDataType__Group_3__3__Impl"
-
-
-    // $ANTLR start "rule__CompositeDataType__Group_3__4"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4339:1: rule__CompositeDataType__Group_3__4 : rule__CompositeDataType__Group_3__4__Impl ;
-    public final void rule__CompositeDataType__Group_3__4() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4343:1: ( rule__CompositeDataType__Group_3__4__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4344:2: rule__CompositeDataType__Group_3__4__Impl
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group_3__4__Impl_in_rule__CompositeDataType__Group_3__48689);
-            rule__CompositeDataType__Group_3__4__Impl();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CompositeDataType__Group_3__4"
-
-
-    // $ANTLR start "rule__CompositeDataType__Group_3__4__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4350:1: rule__CompositeDataType__Group_3__4__Impl : ( ')' ) ;
-    public final void rule__CompositeDataType__Group_3__4__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4354:1: ( ( ')' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4355:1: ( ')' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4355:1: ( ')' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4356:1: ')'
-            {
-             before(grammarAccess.getCompositeDataTypeAccess().getRightParenthesisKeyword_3_4()); 
-            match(input,34,FollowSets000.FOLLOW_34_in_rule__CompositeDataType__Group_3__4__Impl8717); 
-             after(grammarAccess.getCompositeDataTypeAccess().getRightParenthesisKeyword_3_4()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CompositeDataType__Group_3__4__Impl"
-
-
-    // $ANTLR start "rule__CompositeDataType__Group_3_3__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4379:1: rule__CompositeDataType__Group_3_3__0 : rule__CompositeDataType__Group_3_3__0__Impl rule__CompositeDataType__Group_3_3__1 ;
-    public final void rule__CompositeDataType__Group_3_3__0() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4383:1: ( rule__CompositeDataType__Group_3_3__0__Impl rule__CompositeDataType__Group_3_3__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4384:2: rule__CompositeDataType__Group_3_3__0__Impl rule__CompositeDataType__Group_3_3__1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group_3_3__0__Impl_in_rule__CompositeDataType__Group_3_3__08758);
-            rule__CompositeDataType__Group_3_3__0__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group_3_3__1_in_rule__CompositeDataType__Group_3_3__08761);
-            rule__CompositeDataType__Group_3_3__1();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CompositeDataType__Group_3_3__0"
-
-
-    // $ANTLR start "rule__CompositeDataType__Group_3_3__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4391:1: rule__CompositeDataType__Group_3_3__0__Impl : ( ',' ) ;
-    public final void rule__CompositeDataType__Group_3_3__0__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4395:1: ( ( ',' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4396:1: ( ',' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4396:1: ( ',' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4397:1: ','
-            {
-             before(grammarAccess.getCompositeDataTypeAccess().getCommaKeyword_3_3_0()); 
-            match(input,23,FollowSets000.FOLLOW_23_in_rule__CompositeDataType__Group_3_3__0__Impl8789); 
-             after(grammarAccess.getCompositeDataTypeAccess().getCommaKeyword_3_3_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CompositeDataType__Group_3_3__0__Impl"
-
-
-    // $ANTLR start "rule__CompositeDataType__Group_3_3__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4410:1: rule__CompositeDataType__Group_3_3__1 : rule__CompositeDataType__Group_3_3__1__Impl ;
-    public final void rule__CompositeDataType__Group_3_3__1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4414:1: ( rule__CompositeDataType__Group_3_3__1__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4415:2: rule__CompositeDataType__Group_3_3__1__Impl
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group_3_3__1__Impl_in_rule__CompositeDataType__Group_3_3__18820);
-            rule__CompositeDataType__Group_3_3__1__Impl();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CompositeDataType__Group_3_3__1"
-
-
-    // $ANTLR start "rule__CompositeDataType__Group_3_3__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4421:1: rule__CompositeDataType__Group_3_3__1__Impl : ( ( rule__CompositeDataType__ParentTypesAssignment_3_3_1 ) ) ;
-    public final void rule__CompositeDataType__Group_3_3__1__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4425:1: ( ( ( rule__CompositeDataType__ParentTypesAssignment_3_3_1 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4426:1: ( ( rule__CompositeDataType__ParentTypesAssignment_3_3_1 ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4426:1: ( ( rule__CompositeDataType__ParentTypesAssignment_3_3_1 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4427:1: ( rule__CompositeDataType__ParentTypesAssignment_3_3_1 )
-            {
-             before(grammarAccess.getCompositeDataTypeAccess().getParentTypesAssignment_3_3_1()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4428:1: ( rule__CompositeDataType__ParentTypesAssignment_3_3_1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4428:2: rule__CompositeDataType__ParentTypesAssignment_3_3_1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__ParentTypesAssignment_3_3_1_in_rule__CompositeDataType__Group_3_3__1__Impl8847);
-            rule__CompositeDataType__ParentTypesAssignment_3_3_1();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getCompositeDataTypeAccess().getParentTypesAssignment_3_3_1()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CompositeDataType__Group_3_3__1__Impl"
-
-
-    // $ANTLR start "rule__CompositeDataType__Group_4__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4442:1: rule__CompositeDataType__Group_4__0 : rule__CompositeDataType__Group_4__0__Impl rule__CompositeDataType__Group_4__1 ;
-    public final void rule__CompositeDataType__Group_4__0() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4446:1: ( rule__CompositeDataType__Group_4__0__Impl rule__CompositeDataType__Group_4__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4447:2: rule__CompositeDataType__Group_4__0__Impl rule__CompositeDataType__Group_4__1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group_4__0__Impl_in_rule__CompositeDataType__Group_4__08881);
-            rule__CompositeDataType__Group_4__0__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group_4__1_in_rule__CompositeDataType__Group_4__08884);
-            rule__CompositeDataType__Group_4__1();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CompositeDataType__Group_4__0"
-
-
-    // $ANTLR start "rule__CompositeDataType__Group_4__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4454:1: rule__CompositeDataType__Group_4__0__Impl : ( 'innerDeclarations' ) ;
-    public final void rule__CompositeDataType__Group_4__0__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4458:1: ( ( 'innerDeclarations' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4459:1: ( 'innerDeclarations' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4459:1: ( 'innerDeclarations' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4460:1: 'innerDeclarations'
-            {
-             before(grammarAccess.getCompositeDataTypeAccess().getInnerDeclarationsKeyword_4_0()); 
-            match(input,43,FollowSets000.FOLLOW_43_in_rule__CompositeDataType__Group_4__0__Impl8912); 
-             after(grammarAccess.getCompositeDataTypeAccess().getInnerDeclarationsKeyword_4_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CompositeDataType__Group_4__0__Impl"
-
-
-    // $ANTLR start "rule__CompositeDataType__Group_4__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4473:1: rule__CompositeDataType__Group_4__1 : rule__CompositeDataType__Group_4__1__Impl rule__CompositeDataType__Group_4__2 ;
-    public final void rule__CompositeDataType__Group_4__1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4477:1: ( rule__CompositeDataType__Group_4__1__Impl rule__CompositeDataType__Group_4__2 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4478:2: rule__CompositeDataType__Group_4__1__Impl rule__CompositeDataType__Group_4__2
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group_4__1__Impl_in_rule__CompositeDataType__Group_4__18943);
-            rule__CompositeDataType__Group_4__1__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group_4__2_in_rule__CompositeDataType__Group_4__18946);
-            rule__CompositeDataType__Group_4__2();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CompositeDataType__Group_4__1"
-
-
-    // $ANTLR start "rule__CompositeDataType__Group_4__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4485:1: rule__CompositeDataType__Group_4__1__Impl : ( '{' ) ;
-    public final void rule__CompositeDataType__Group_4__1__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4489:1: ( ( '{' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4490:1: ( '{' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4490:1: ( '{' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4491:1: '{'
-            {
-             before(grammarAccess.getCompositeDataTypeAccess().getLeftCurlyBracketKeyword_4_1()); 
-            match(input,20,FollowSets000.FOLLOW_20_in_rule__CompositeDataType__Group_4__1__Impl8974); 
-             after(grammarAccess.getCompositeDataTypeAccess().getLeftCurlyBracketKeyword_4_1()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CompositeDataType__Group_4__1__Impl"
-
-
-    // $ANTLR start "rule__CompositeDataType__Group_4__2"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4504:1: rule__CompositeDataType__Group_4__2 : rule__CompositeDataType__Group_4__2__Impl rule__CompositeDataType__Group_4__3 ;
-    public final void rule__CompositeDataType__Group_4__2() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4508:1: ( rule__CompositeDataType__Group_4__2__Impl rule__CompositeDataType__Group_4__3 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4509:2: rule__CompositeDataType__Group_4__2__Impl rule__CompositeDataType__Group_4__3
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group_4__2__Impl_in_rule__CompositeDataType__Group_4__29005);
-            rule__CompositeDataType__Group_4__2__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group_4__3_in_rule__CompositeDataType__Group_4__29008);
-            rule__CompositeDataType__Group_4__3();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CompositeDataType__Group_4__2"
-
-
-    // $ANTLR start "rule__CompositeDataType__Group_4__2__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4516:1: rule__CompositeDataType__Group_4__2__Impl : ( ( rule__CompositeDataType__InnerDeclarationsAssignment_4_2 ) ) ;
-    public final void rule__CompositeDataType__Group_4__2__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4520:1: ( ( ( rule__CompositeDataType__InnerDeclarationsAssignment_4_2 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4521:1: ( ( rule__CompositeDataType__InnerDeclarationsAssignment_4_2 ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4521:1: ( ( rule__CompositeDataType__InnerDeclarationsAssignment_4_2 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4522:1: ( rule__CompositeDataType__InnerDeclarationsAssignment_4_2 )
-            {
-             before(grammarAccess.getCompositeDataTypeAccess().getInnerDeclarationsAssignment_4_2()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4523:1: ( rule__CompositeDataType__InnerDeclarationsAssignment_4_2 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4523:2: rule__CompositeDataType__InnerDeclarationsAssignment_4_2
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__InnerDeclarationsAssignment_4_2_in_rule__CompositeDataType__Group_4__2__Impl9035);
-            rule__CompositeDataType__InnerDeclarationsAssignment_4_2();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getCompositeDataTypeAccess().getInnerDeclarationsAssignment_4_2()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CompositeDataType__Group_4__2__Impl"
-
-
-    // $ANTLR start "rule__CompositeDataType__Group_4__3"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4533:1: rule__CompositeDataType__Group_4__3 : rule__CompositeDataType__Group_4__3__Impl rule__CompositeDataType__Group_4__4 ;
-    public final void rule__CompositeDataType__Group_4__3() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4537:1: ( rule__CompositeDataType__Group_4__3__Impl rule__CompositeDataType__Group_4__4 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4538:2: rule__CompositeDataType__Group_4__3__Impl rule__CompositeDataType__Group_4__4
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group_4__3__Impl_in_rule__CompositeDataType__Group_4__39065);
-            rule__CompositeDataType__Group_4__3__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group_4__4_in_rule__CompositeDataType__Group_4__39068);
-            rule__CompositeDataType__Group_4__4();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CompositeDataType__Group_4__3"
-
-
-    // $ANTLR start "rule__CompositeDataType__Group_4__3__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4545:1: rule__CompositeDataType__Group_4__3__Impl : ( ( rule__CompositeDataType__Group_4_3__0 )* ) ;
-    public final void rule__CompositeDataType__Group_4__3__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4549:1: ( ( ( rule__CompositeDataType__Group_4_3__0 )* ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4550:1: ( ( rule__CompositeDataType__Group_4_3__0 )* )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4550:1: ( ( rule__CompositeDataType__Group_4_3__0 )* )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4551:1: ( rule__CompositeDataType__Group_4_3__0 )*
-            {
-             before(grammarAccess.getCompositeDataTypeAccess().getGroup_4_3()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4552:1: ( rule__CompositeDataType__Group_4_3__0 )*
-            loop29:
-            do {
-                int alt29=2;
-                int LA29_0 = input.LA(1);
-
-                if ( (LA29_0==23) ) {
-                    alt29=1;
-                }
-
-
-                switch (alt29) {
-            	case 1 :
-            	    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4552:2: rule__CompositeDataType__Group_4_3__0
-            	    {
-            	    pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group_4_3__0_in_rule__CompositeDataType__Group_4__3__Impl9095);
-            	    rule__CompositeDataType__Group_4_3__0();
-
-            	    state._fsp--;
-
-
-            	    }
-            	    break;
-
-            	default :
-            	    break loop29;
-                }
-            } while (true);
-
-             after(grammarAccess.getCompositeDataTypeAccess().getGroup_4_3()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CompositeDataType__Group_4__3__Impl"
-
-
-    // $ANTLR start "rule__CompositeDataType__Group_4__4"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4562:1: rule__CompositeDataType__Group_4__4 : rule__CompositeDataType__Group_4__4__Impl ;
-    public final void rule__CompositeDataType__Group_4__4() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4566:1: ( rule__CompositeDataType__Group_4__4__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4567:2: rule__CompositeDataType__Group_4__4__Impl
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group_4__4__Impl_in_rule__CompositeDataType__Group_4__49126);
-            rule__CompositeDataType__Group_4__4__Impl();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CompositeDataType__Group_4__4"
-
-
-    // $ANTLR start "rule__CompositeDataType__Group_4__4__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4573:1: rule__CompositeDataType__Group_4__4__Impl : ( '}' ) ;
-    public final void rule__CompositeDataType__Group_4__4__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4577:1: ( ( '}' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4578:1: ( '}' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4578:1: ( '}' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4579:1: '}'
-            {
-             before(grammarAccess.getCompositeDataTypeAccess().getRightCurlyBracketKeyword_4_4()); 
-            match(input,21,FollowSets000.FOLLOW_21_in_rule__CompositeDataType__Group_4__4__Impl9154); 
-             after(grammarAccess.getCompositeDataTypeAccess().getRightCurlyBracketKeyword_4_4()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CompositeDataType__Group_4__4__Impl"
-
-
-    // $ANTLR start "rule__CompositeDataType__Group_4_3__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4602:1: rule__CompositeDataType__Group_4_3__0 : rule__CompositeDataType__Group_4_3__0__Impl rule__CompositeDataType__Group_4_3__1 ;
-    public final void rule__CompositeDataType__Group_4_3__0() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4606:1: ( rule__CompositeDataType__Group_4_3__0__Impl rule__CompositeDataType__Group_4_3__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4607:2: rule__CompositeDataType__Group_4_3__0__Impl rule__CompositeDataType__Group_4_3__1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group_4_3__0__Impl_in_rule__CompositeDataType__Group_4_3__09195);
-            rule__CompositeDataType__Group_4_3__0__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group_4_3__1_in_rule__CompositeDataType__Group_4_3__09198);
-            rule__CompositeDataType__Group_4_3__1();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CompositeDataType__Group_4_3__0"
-
-
-    // $ANTLR start "rule__CompositeDataType__Group_4_3__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4614:1: rule__CompositeDataType__Group_4_3__0__Impl : ( ',' ) ;
-    public final void rule__CompositeDataType__Group_4_3__0__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4618:1: ( ( ',' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4619:1: ( ',' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4619:1: ( ',' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4620:1: ','
-            {
-             before(grammarAccess.getCompositeDataTypeAccess().getCommaKeyword_4_3_0()); 
-            match(input,23,FollowSets000.FOLLOW_23_in_rule__CompositeDataType__Group_4_3__0__Impl9226); 
-             after(grammarAccess.getCompositeDataTypeAccess().getCommaKeyword_4_3_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CompositeDataType__Group_4_3__0__Impl"
-
-
-    // $ANTLR start "rule__CompositeDataType__Group_4_3__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4633:1: rule__CompositeDataType__Group_4_3__1 : rule__CompositeDataType__Group_4_3__1__Impl ;
-    public final void rule__CompositeDataType__Group_4_3__1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4637:1: ( rule__CompositeDataType__Group_4_3__1__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4638:2: rule__CompositeDataType__Group_4_3__1__Impl
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group_4_3__1__Impl_in_rule__CompositeDataType__Group_4_3__19257);
-            rule__CompositeDataType__Group_4_3__1__Impl();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CompositeDataType__Group_4_3__1"
-
-
-    // $ANTLR start "rule__CompositeDataType__Group_4_3__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4644:1: rule__CompositeDataType__Group_4_3__1__Impl : ( ( rule__CompositeDataType__InnerDeclarationsAssignment_4_3_1 ) ) ;
-    public final void rule__CompositeDataType__Group_4_3__1__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4648:1: ( ( ( rule__CompositeDataType__InnerDeclarationsAssignment_4_3_1 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4649:1: ( ( rule__CompositeDataType__InnerDeclarationsAssignment_4_3_1 ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4649:1: ( ( rule__CompositeDataType__InnerDeclarationsAssignment_4_3_1 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4650:1: ( rule__CompositeDataType__InnerDeclarationsAssignment_4_3_1 )
-            {
-             before(grammarAccess.getCompositeDataTypeAccess().getInnerDeclarationsAssignment_4_3_1()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4651:1: ( rule__CompositeDataType__InnerDeclarationsAssignment_4_3_1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4651:2: rule__CompositeDataType__InnerDeclarationsAssignment_4_3_1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__InnerDeclarationsAssignment_4_3_1_in_rule__CompositeDataType__Group_4_3__1__Impl9284);
-            rule__CompositeDataType__InnerDeclarationsAssignment_4_3_1();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getCompositeDataTypeAccess().getInnerDeclarationsAssignment_4_3_1()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CompositeDataType__Group_4_3__1__Impl"
-
-
-    // $ANTLR start "rule__PrimitiveDataType__Group__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4665:1: rule__PrimitiveDataType__Group__0 : rule__PrimitiveDataType__Group__0__Impl rule__PrimitiveDataType__Group__1 ;
-    public final void rule__PrimitiveDataType__Group__0() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4669:1: ( rule__PrimitiveDataType__Group__0__Impl rule__PrimitiveDataType__Group__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4670:2: rule__PrimitiveDataType__Group__0__Impl rule__PrimitiveDataType__Group__1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__PrimitiveDataType__Group__0__Impl_in_rule__PrimitiveDataType__Group__09318);
-            rule__PrimitiveDataType__Group__0__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__PrimitiveDataType__Group__1_in_rule__PrimitiveDataType__Group__09321);
-            rule__PrimitiveDataType__Group__1();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__PrimitiveDataType__Group__0"
-
-
-    // $ANTLR start "rule__PrimitiveDataType__Group__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4677:1: rule__PrimitiveDataType__Group__0__Impl : ( 'PrimitiveDataType' ) ;
-    public final void rule__PrimitiveDataType__Group__0__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4681:1: ( ( 'PrimitiveDataType' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4682:1: ( 'PrimitiveDataType' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4682:1: ( 'PrimitiveDataType' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4683:1: 'PrimitiveDataType'
-            {
-             before(grammarAccess.getPrimitiveDataTypeAccess().getPrimitiveDataTypeKeyword_0()); 
-            match(input,44,FollowSets000.FOLLOW_44_in_rule__PrimitiveDataType__Group__0__Impl9349); 
-             after(grammarAccess.getPrimitiveDataTypeAccess().getPrimitiveDataTypeKeyword_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__PrimitiveDataType__Group__0__Impl"
-
-
-    // $ANTLR start "rule__PrimitiveDataType__Group__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4696:1: rule__PrimitiveDataType__Group__1 : rule__PrimitiveDataType__Group__1__Impl rule__PrimitiveDataType__Group__2 ;
-    public final void rule__PrimitiveDataType__Group__1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4700:1: ( rule__PrimitiveDataType__Group__1__Impl rule__PrimitiveDataType__Group__2 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4701:2: rule__PrimitiveDataType__Group__1__Impl rule__PrimitiveDataType__Group__2
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__PrimitiveDataType__Group__1__Impl_in_rule__PrimitiveDataType__Group__19380);
-            rule__PrimitiveDataType__Group__1__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__PrimitiveDataType__Group__2_in_rule__PrimitiveDataType__Group__19383);
-            rule__PrimitiveDataType__Group__2();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__PrimitiveDataType__Group__1"
-
-
-    // $ANTLR start "rule__PrimitiveDataType__Group__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4708:1: rule__PrimitiveDataType__Group__1__Impl : ( '{' ) ;
-    public final void rule__PrimitiveDataType__Group__1__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4712:1: ( ( '{' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4713:1: ( '{' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4713:1: ( '{' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4714:1: '{'
-            {
-             before(grammarAccess.getPrimitiveDataTypeAccess().getLeftCurlyBracketKeyword_1()); 
-            match(input,20,FollowSets000.FOLLOW_20_in_rule__PrimitiveDataType__Group__1__Impl9411); 
-             after(grammarAccess.getPrimitiveDataTypeAccess().getLeftCurlyBracketKeyword_1()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__PrimitiveDataType__Group__1__Impl"
-
-
-    // $ANTLR start "rule__PrimitiveDataType__Group__2"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4727:1: rule__PrimitiveDataType__Group__2 : rule__PrimitiveDataType__Group__2__Impl rule__PrimitiveDataType__Group__3 ;
-    public final void rule__PrimitiveDataType__Group__2() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4731:1: ( rule__PrimitiveDataType__Group__2__Impl rule__PrimitiveDataType__Group__3 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4732:2: rule__PrimitiveDataType__Group__2__Impl rule__PrimitiveDataType__Group__3
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__PrimitiveDataType__Group__2__Impl_in_rule__PrimitiveDataType__Group__29442);
-            rule__PrimitiveDataType__Group__2__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__PrimitiveDataType__Group__3_in_rule__PrimitiveDataType__Group__29445);
-            rule__PrimitiveDataType__Group__3();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__PrimitiveDataType__Group__2"
-
-
-    // $ANTLR start "rule__PrimitiveDataType__Group__2__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4739:1: rule__PrimitiveDataType__Group__2__Impl : ( 'type' ) ;
-    public final void rule__PrimitiveDataType__Group__2__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4743:1: ( ( 'type' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4744:1: ( 'type' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4744:1: ( 'type' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4745:1: 'type'
-            {
-             before(grammarAccess.getPrimitiveDataTypeAccess().getTypeKeyword_2()); 
-            match(input,45,FollowSets000.FOLLOW_45_in_rule__PrimitiveDataType__Group__2__Impl9473); 
-             after(grammarAccess.getPrimitiveDataTypeAccess().getTypeKeyword_2()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__PrimitiveDataType__Group__2__Impl"
-
-
-    // $ANTLR start "rule__PrimitiveDataType__Group__3"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4758:1: rule__PrimitiveDataType__Group__3 : rule__PrimitiveDataType__Group__3__Impl rule__PrimitiveDataType__Group__4 ;
-    public final void rule__PrimitiveDataType__Group__3() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4762:1: ( rule__PrimitiveDataType__Group__3__Impl rule__PrimitiveDataType__Group__4 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4763:2: rule__PrimitiveDataType__Group__3__Impl rule__PrimitiveDataType__Group__4
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__PrimitiveDataType__Group__3__Impl_in_rule__PrimitiveDataType__Group__39504);
-            rule__PrimitiveDataType__Group__3__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__PrimitiveDataType__Group__4_in_rule__PrimitiveDataType__Group__39507);
-            rule__PrimitiveDataType__Group__4();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__PrimitiveDataType__Group__3"
-
-
-    // $ANTLR start "rule__PrimitiveDataType__Group__3__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4770:1: rule__PrimitiveDataType__Group__3__Impl : ( ( rule__PrimitiveDataType__TypeAssignment_3 ) ) ;
-    public final void rule__PrimitiveDataType__Group__3__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4774:1: ( ( ( rule__PrimitiveDataType__TypeAssignment_3 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4775:1: ( ( rule__PrimitiveDataType__TypeAssignment_3 ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4775:1: ( ( rule__PrimitiveDataType__TypeAssignment_3 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4776:1: ( rule__PrimitiveDataType__TypeAssignment_3 )
-            {
-             before(grammarAccess.getPrimitiveDataTypeAccess().getTypeAssignment_3()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4777:1: ( rule__PrimitiveDataType__TypeAssignment_3 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4777:2: rule__PrimitiveDataType__TypeAssignment_3
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__PrimitiveDataType__TypeAssignment_3_in_rule__PrimitiveDataType__Group__3__Impl9534);
-            rule__PrimitiveDataType__TypeAssignment_3();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getPrimitiveDataTypeAccess().getTypeAssignment_3()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__PrimitiveDataType__Group__3__Impl"
-
-
-    // $ANTLR start "rule__PrimitiveDataType__Group__4"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4787:1: rule__PrimitiveDataType__Group__4 : rule__PrimitiveDataType__Group__4__Impl rule__PrimitiveDataType__Group__5 ;
-    public final void rule__PrimitiveDataType__Group__4() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4791:1: ( rule__PrimitiveDataType__Group__4__Impl rule__PrimitiveDataType__Group__5 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4792:2: rule__PrimitiveDataType__Group__4__Impl rule__PrimitiveDataType__Group__5
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__PrimitiveDataType__Group__4__Impl_in_rule__PrimitiveDataType__Group__49564);
-            rule__PrimitiveDataType__Group__4__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__PrimitiveDataType__Group__5_in_rule__PrimitiveDataType__Group__49567);
-            rule__PrimitiveDataType__Group__5();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__PrimitiveDataType__Group__4"
-
-
-    // $ANTLR start "rule__PrimitiveDataType__Group__4__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4799:1: rule__PrimitiveDataType__Group__4__Impl : ( 'ref' ) ;
-    public final void rule__PrimitiveDataType__Group__4__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4803:1: ( ( 'ref' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4804:1: ( 'ref' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4804:1: ( 'ref' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4805:1: 'ref'
-            {
-             before(grammarAccess.getPrimitiveDataTypeAccess().getRefKeyword_4()); 
-            match(input,46,FollowSets000.FOLLOW_46_in_rule__PrimitiveDataType__Group__4__Impl9595); 
-             after(grammarAccess.getPrimitiveDataTypeAccess().getRefKeyword_4()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__PrimitiveDataType__Group__4__Impl"
-
-
-    // $ANTLR start "rule__PrimitiveDataType__Group__5"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4818:1: rule__PrimitiveDataType__Group__5 : rule__PrimitiveDataType__Group__5__Impl rule__PrimitiveDataType__Group__6 ;
-    public final void rule__PrimitiveDataType__Group__5() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4822:1: ( rule__PrimitiveDataType__Group__5__Impl rule__PrimitiveDataType__Group__6 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4823:2: rule__PrimitiveDataType__Group__5__Impl rule__PrimitiveDataType__Group__6
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__PrimitiveDataType__Group__5__Impl_in_rule__PrimitiveDataType__Group__59626);
-            rule__PrimitiveDataType__Group__5__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__PrimitiveDataType__Group__6_in_rule__PrimitiveDataType__Group__59629);
-            rule__PrimitiveDataType__Group__6();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__PrimitiveDataType__Group__5"
-
-
-    // $ANTLR start "rule__PrimitiveDataType__Group__5__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4830:1: rule__PrimitiveDataType__Group__5__Impl : ( ( rule__PrimitiveDataType__NameAssignment_5 ) ) ;
-    public final void rule__PrimitiveDataType__Group__5__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4834:1: ( ( ( rule__PrimitiveDataType__NameAssignment_5 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4835:1: ( ( rule__PrimitiveDataType__NameAssignment_5 ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4835:1: ( ( rule__PrimitiveDataType__NameAssignment_5 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4836:1: ( rule__PrimitiveDataType__NameAssignment_5 )
-            {
-             before(grammarAccess.getPrimitiveDataTypeAccess().getNameAssignment_5()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4837:1: ( rule__PrimitiveDataType__NameAssignment_5 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4837:2: rule__PrimitiveDataType__NameAssignment_5
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__PrimitiveDataType__NameAssignment_5_in_rule__PrimitiveDataType__Group__5__Impl9656);
-            rule__PrimitiveDataType__NameAssignment_5();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getPrimitiveDataTypeAccess().getNameAssignment_5()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__PrimitiveDataType__Group__5__Impl"
-
-
-    // $ANTLR start "rule__PrimitiveDataType__Group__6"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4847:1: rule__PrimitiveDataType__Group__6 : rule__PrimitiveDataType__Group__6__Impl ;
-    public final void rule__PrimitiveDataType__Group__6() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4851:1: ( rule__PrimitiveDataType__Group__6__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4852:2: rule__PrimitiveDataType__Group__6__Impl
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__PrimitiveDataType__Group__6__Impl_in_rule__PrimitiveDataType__Group__69686);
-            rule__PrimitiveDataType__Group__6__Impl();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__PrimitiveDataType__Group__6"
-
-
-    // $ANTLR start "rule__PrimitiveDataType__Group__6__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4858:1: rule__PrimitiveDataType__Group__6__Impl : ( '}' ) ;
-    public final void rule__PrimitiveDataType__Group__6__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4862:1: ( ( '}' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4863:1: ( '}' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4863:1: ( '}' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4864:1: '}'
-            {
-             before(grammarAccess.getPrimitiveDataTypeAccess().getRightCurlyBracketKeyword_6()); 
-            match(input,21,FollowSets000.FOLLOW_21_in_rule__PrimitiveDataType__Group__6__Impl9714); 
-             after(grammarAccess.getPrimitiveDataTypeAccess().getRightCurlyBracketKeyword_6()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__PrimitiveDataType__Group__6__Impl"
-
-
-    // $ANTLR start "rule__InnerDeclaration__Group__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4891:1: rule__InnerDeclaration__Group__0 : rule__InnerDeclaration__Group__0__Impl rule__InnerDeclaration__Group__1 ;
-    public final void rule__InnerDeclaration__Group__0() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4895:1: ( rule__InnerDeclaration__Group__0__Impl rule__InnerDeclaration__Group__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4896:2: rule__InnerDeclaration__Group__0__Impl rule__InnerDeclaration__Group__1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__InnerDeclaration__Group__0__Impl_in_rule__InnerDeclaration__Group__09759);
-            rule__InnerDeclaration__Group__0__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__InnerDeclaration__Group__1_in_rule__InnerDeclaration__Group__09762);
-            rule__InnerDeclaration__Group__1();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__InnerDeclaration__Group__0"
-
-
-    // $ANTLR start "rule__InnerDeclaration__Group__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4903:1: rule__InnerDeclaration__Group__0__Impl : ( 'InnerDeclaration' ) ;
-    public final void rule__InnerDeclaration__Group__0__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4907:1: ( ( 'InnerDeclaration' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4908:1: ( 'InnerDeclaration' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4908:1: ( 'InnerDeclaration' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4909:1: 'InnerDeclaration'
-            {
-             before(grammarAccess.getInnerDeclarationAccess().getInnerDeclarationKeyword_0()); 
-            match(input,47,FollowSets000.FOLLOW_47_in_rule__InnerDeclaration__Group__0__Impl9790); 
-             after(grammarAccess.getInnerDeclarationAccess().getInnerDeclarationKeyword_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__InnerDeclaration__Group__0__Impl"
-
-
-    // $ANTLR start "rule__InnerDeclaration__Group__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4922:1: rule__InnerDeclaration__Group__1 : rule__InnerDeclaration__Group__1__Impl rule__InnerDeclaration__Group__2 ;
-    public final void rule__InnerDeclaration__Group__1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4926:1: ( rule__InnerDeclaration__Group__1__Impl rule__InnerDeclaration__Group__2 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4927:2: rule__InnerDeclaration__Group__1__Impl rule__InnerDeclaration__Group__2
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__InnerDeclaration__Group__1__Impl_in_rule__InnerDeclaration__Group__19821);
-            rule__InnerDeclaration__Group__1__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__InnerDeclaration__Group__2_in_rule__InnerDeclaration__Group__19824);
-            rule__InnerDeclaration__Group__2();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__InnerDeclaration__Group__1"
-
-
-    // $ANTLR start "rule__InnerDeclaration__Group__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4934:1: rule__InnerDeclaration__Group__1__Impl : ( ( rule__InnerDeclaration__NameAssignment_1 ) ) ;
-    public final void rule__InnerDeclaration__Group__1__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4938:1: ( ( ( rule__InnerDeclaration__NameAssignment_1 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4939:1: ( ( rule__InnerDeclaration__NameAssignment_1 ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4939:1: ( ( rule__InnerDeclaration__NameAssignment_1 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4940:1: ( rule__InnerDeclaration__NameAssignment_1 )
-            {
-             before(grammarAccess.getInnerDeclarationAccess().getNameAssignment_1()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4941:1: ( rule__InnerDeclaration__NameAssignment_1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4941:2: rule__InnerDeclaration__NameAssignment_1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__InnerDeclaration__NameAssignment_1_in_rule__InnerDeclaration__Group__1__Impl9851);
-            rule__InnerDeclaration__NameAssignment_1();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getInnerDeclarationAccess().getNameAssignment_1()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__InnerDeclaration__Group__1__Impl"
-
-
-    // $ANTLR start "rule__InnerDeclaration__Group__2"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4951:1: rule__InnerDeclaration__Group__2 : rule__InnerDeclaration__Group__2__Impl rule__InnerDeclaration__Group__3 ;
-    public final void rule__InnerDeclaration__Group__2() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4955:1: ( rule__InnerDeclaration__Group__2__Impl rule__InnerDeclaration__Group__3 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4956:2: rule__InnerDeclaration__Group__2__Impl rule__InnerDeclaration__Group__3
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__InnerDeclaration__Group__2__Impl_in_rule__InnerDeclaration__Group__29881);
-            rule__InnerDeclaration__Group__2__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__InnerDeclaration__Group__3_in_rule__InnerDeclaration__Group__29884);
-            rule__InnerDeclaration__Group__3();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__InnerDeclaration__Group__2"
-
-
-    // $ANTLR start "rule__InnerDeclaration__Group__2__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4963:1: rule__InnerDeclaration__Group__2__Impl : ( '{' ) ;
-    public final void rule__InnerDeclaration__Group__2__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4967:1: ( ( '{' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4968:1: ( '{' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4968:1: ( '{' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4969:1: '{'
-            {
-             before(grammarAccess.getInnerDeclarationAccess().getLeftCurlyBracketKeyword_2()); 
-            match(input,20,FollowSets000.FOLLOW_20_in_rule__InnerDeclaration__Group__2__Impl9912); 
-             after(grammarAccess.getInnerDeclarationAccess().getLeftCurlyBracketKeyword_2()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__InnerDeclaration__Group__2__Impl"
-
-
-    // $ANTLR start "rule__InnerDeclaration__Group__3"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4982:1: rule__InnerDeclaration__Group__3 : rule__InnerDeclaration__Group__3__Impl rule__InnerDeclaration__Group__4 ;
-    public final void rule__InnerDeclaration__Group__3() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4986:1: ( rule__InnerDeclaration__Group__3__Impl rule__InnerDeclaration__Group__4 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4987:2: rule__InnerDeclaration__Group__3__Impl rule__InnerDeclaration__Group__4
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__InnerDeclaration__Group__3__Impl_in_rule__InnerDeclaration__Group__39943);
-            rule__InnerDeclaration__Group__3__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__InnerDeclaration__Group__4_in_rule__InnerDeclaration__Group__39946);
-            rule__InnerDeclaration__Group__4();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__InnerDeclaration__Group__3"
-
-
-    // $ANTLR start "rule__InnerDeclaration__Group__3__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4994:1: rule__InnerDeclaration__Group__3__Impl : ( 'dataType' ) ;
-    public final void rule__InnerDeclaration__Group__3__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4998:1: ( ( 'dataType' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4999:1: ( 'dataType' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4999:1: ( 'dataType' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5000:1: 'dataType'
-            {
-             before(grammarAccess.getInnerDeclarationAccess().getDataTypeKeyword_3()); 
-            match(input,48,FollowSets000.FOLLOW_48_in_rule__InnerDeclaration__Group__3__Impl9974); 
-             after(grammarAccess.getInnerDeclarationAccess().getDataTypeKeyword_3()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__InnerDeclaration__Group__3__Impl"
-
-
-    // $ANTLR start "rule__InnerDeclaration__Group__4"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5013:1: rule__InnerDeclaration__Group__4 : rule__InnerDeclaration__Group__4__Impl rule__InnerDeclaration__Group__5 ;
-    public final void rule__InnerDeclaration__Group__4() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5017:1: ( rule__InnerDeclaration__Group__4__Impl rule__InnerDeclaration__Group__5 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5018:2: rule__InnerDeclaration__Group__4__Impl rule__InnerDeclaration__Group__5
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__InnerDeclaration__Group__4__Impl_in_rule__InnerDeclaration__Group__410005);
-            rule__InnerDeclaration__Group__4__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__InnerDeclaration__Group__5_in_rule__InnerDeclaration__Group__410008);
-            rule__InnerDeclaration__Group__5();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__InnerDeclaration__Group__4"
-
-
-    // $ANTLR start "rule__InnerDeclaration__Group__4__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5025:1: rule__InnerDeclaration__Group__4__Impl : ( ( rule__InnerDeclaration__DataTypeAssignment_4 ) ) ;
-    public final void rule__InnerDeclaration__Group__4__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5029:1: ( ( ( rule__InnerDeclaration__DataTypeAssignment_4 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5030:1: ( ( rule__InnerDeclaration__DataTypeAssignment_4 ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5030:1: ( ( rule__InnerDeclaration__DataTypeAssignment_4 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5031:1: ( rule__InnerDeclaration__DataTypeAssignment_4 )
-            {
-             before(grammarAccess.getInnerDeclarationAccess().getDataTypeAssignment_4()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5032:1: ( rule__InnerDeclaration__DataTypeAssignment_4 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5032:2: rule__InnerDeclaration__DataTypeAssignment_4
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__InnerDeclaration__DataTypeAssignment_4_in_rule__InnerDeclaration__Group__4__Impl10035);
-            rule__InnerDeclaration__DataTypeAssignment_4();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getInnerDeclarationAccess().getDataTypeAssignment_4()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__InnerDeclaration__Group__4__Impl"
-
-
-    // $ANTLR start "rule__InnerDeclaration__Group__5"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5042:1: rule__InnerDeclaration__Group__5 : rule__InnerDeclaration__Group__5__Impl ;
-    public final void rule__InnerDeclaration__Group__5() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5046:1: ( rule__InnerDeclaration__Group__5__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5047:2: rule__InnerDeclaration__Group__5__Impl
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__InnerDeclaration__Group__5__Impl_in_rule__InnerDeclaration__Group__510065);
-            rule__InnerDeclaration__Group__5__Impl();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__InnerDeclaration__Group__5"
-
-
-    // $ANTLR start "rule__InnerDeclaration__Group__5__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5053:1: rule__InnerDeclaration__Group__5__Impl : ( '}' ) ;
-    public final void rule__InnerDeclaration__Group__5__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5057:1: ( ( '}' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5058:1: ( '}' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5058:1: ( '}' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5059:1: '}'
-            {
-             before(grammarAccess.getInnerDeclarationAccess().getRightCurlyBracketKeyword_5()); 
-            match(input,21,FollowSets000.FOLLOW_21_in_rule__InnerDeclaration__Group__5__Impl10093); 
-             after(grammarAccess.getInnerDeclarationAccess().getRightCurlyBracketKeyword_5()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__InnerDeclaration__Group__5__Impl"
-
-
-    // $ANTLR start "rule__Signature__Group__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5084:1: rule__Signature__Group__0 : rule__Signature__Group__0__Impl rule__Signature__Group__1 ;
-    public final void rule__Signature__Group__0() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5088:1: ( rule__Signature__Group__0__Impl rule__Signature__Group__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5089:2: rule__Signature__Group__0__Impl rule__Signature__Group__1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Signature__Group__0__Impl_in_rule__Signature__Group__010136);
-            rule__Signature__Group__0__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__Signature__Group__1_in_rule__Signature__Group__010139);
-            rule__Signature__Group__1();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Signature__Group__0"
-
-
-    // $ANTLR start "rule__Signature__Group__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5096:1: rule__Signature__Group__0__Impl : ( ( rule__Signature__Alternatives_0 ) ) ;
-    public final void rule__Signature__Group__0__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5100:1: ( ( ( rule__Signature__Alternatives_0 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5101:1: ( ( rule__Signature__Alternatives_0 ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5101:1: ( ( rule__Signature__Alternatives_0 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5102:1: ( rule__Signature__Alternatives_0 )
-            {
-             before(grammarAccess.getSignatureAccess().getAlternatives_0()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5103:1: ( rule__Signature__Alternatives_0 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5103:2: rule__Signature__Alternatives_0
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Signature__Alternatives_0_in_rule__Signature__Group__0__Impl10166);
-            rule__Signature__Alternatives_0();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getSignatureAccess().getAlternatives_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Signature__Group__0__Impl"
-
-
-    // $ANTLR start "rule__Signature__Group__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5113:1: rule__Signature__Group__1 : rule__Signature__Group__1__Impl rule__Signature__Group__2 ;
-    public final void rule__Signature__Group__1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5117:1: ( rule__Signature__Group__1__Impl rule__Signature__Group__2 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5118:2: rule__Signature__Group__1__Impl rule__Signature__Group__2
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Signature__Group__1__Impl_in_rule__Signature__Group__110196);
-            rule__Signature__Group__1__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__Signature__Group__2_in_rule__Signature__Group__110199);
-            rule__Signature__Group__2();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Signature__Group__1"
-
-
-    // $ANTLR start "rule__Signature__Group__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5125:1: rule__Signature__Group__1__Impl : ( ( rule__Signature__NameAssignment_1 ) ) ;
-    public final void rule__Signature__Group__1__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5129:1: ( ( ( rule__Signature__NameAssignment_1 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5130:1: ( ( rule__Signature__NameAssignment_1 ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5130:1: ( ( rule__Signature__NameAssignment_1 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5131:1: ( rule__Signature__NameAssignment_1 )
-            {
-             before(grammarAccess.getSignatureAccess().getNameAssignment_1()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5132:1: ( rule__Signature__NameAssignment_1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5132:2: rule__Signature__NameAssignment_1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Signature__NameAssignment_1_in_rule__Signature__Group__1__Impl10226);
-            rule__Signature__NameAssignment_1();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getSignatureAccess().getNameAssignment_1()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Signature__Group__1__Impl"
-
-
-    // $ANTLR start "rule__Signature__Group__2"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5142:1: rule__Signature__Group__2 : rule__Signature__Group__2__Impl rule__Signature__Group__3 ;
-    public final void rule__Signature__Group__2() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5146:1: ( rule__Signature__Group__2__Impl rule__Signature__Group__3 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5147:2: rule__Signature__Group__2__Impl rule__Signature__Group__3
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Signature__Group__2__Impl_in_rule__Signature__Group__210256);
-            rule__Signature__Group__2__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__Signature__Group__3_in_rule__Signature__Group__210259);
-            rule__Signature__Group__3();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Signature__Group__2"
-
-
-    // $ANTLR start "rule__Signature__Group__2__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5154:1: rule__Signature__Group__2__Impl : ( '(' ) ;
-    public final void rule__Signature__Group__2__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5158:1: ( ( '(' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5159:1: ( '(' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5159:1: ( '(' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5160:1: '('
-            {
-             before(grammarAccess.getSignatureAccess().getLeftParenthesisKeyword_2()); 
-            match(input,33,FollowSets000.FOLLOW_33_in_rule__Signature__Group__2__Impl10287); 
-             after(grammarAccess.getSignatureAccess().getLeftParenthesisKeyword_2()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Signature__Group__2__Impl"
-
-
-    // $ANTLR start "rule__Signature__Group__3"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5173:1: rule__Signature__Group__3 : rule__Signature__Group__3__Impl rule__Signature__Group__4 ;
-    public final void rule__Signature__Group__3() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5177:1: ( rule__Signature__Group__3__Impl rule__Signature__Group__4 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5178:2: rule__Signature__Group__3__Impl rule__Signature__Group__4
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Signature__Group__3__Impl_in_rule__Signature__Group__310318);
-            rule__Signature__Group__3__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__Signature__Group__4_in_rule__Signature__Group__310321);
-            rule__Signature__Group__4();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Signature__Group__3"
-
-
-    // $ANTLR start "rule__Signature__Group__3__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5185:1: rule__Signature__Group__3__Impl : ( ( rule__Signature__Group_3__0 )? ) ;
-    public final void rule__Signature__Group__3__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5189:1: ( ( ( rule__Signature__Group_3__0 )? ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5190:1: ( ( rule__Signature__Group_3__0 )? )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5190:1: ( ( rule__Signature__Group_3__0 )? )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5191:1: ( rule__Signature__Group_3__0 )?
-            {
-             before(grammarAccess.getSignatureAccess().getGroup_3()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5192:1: ( rule__Signature__Group_3__0 )?
-            int alt30=2;
-            int LA30_0 = input.LA(1);
-
-            if ( ((LA30_0>=RULE_STRING && LA30_0<=RULE_ID)) ) {
-                alt30=1;
-            }
-            switch (alt30) {
-                case 1 :
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5192:2: rule__Signature__Group_3__0
-                    {
-                    pushFollow(FollowSets000.FOLLOW_rule__Signature__Group_3__0_in_rule__Signature__Group__3__Impl10348);
-                    rule__Signature__Group_3__0();
-
-                    state._fsp--;
-
-
-                    }
-                    break;
-
-            }
-
-             after(grammarAccess.getSignatureAccess().getGroup_3()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Signature__Group__3__Impl"
-
-
-    // $ANTLR start "rule__Signature__Group__4"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5202:1: rule__Signature__Group__4 : rule__Signature__Group__4__Impl ;
-    public final void rule__Signature__Group__4() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5206:1: ( rule__Signature__Group__4__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5207:2: rule__Signature__Group__4__Impl
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Signature__Group__4__Impl_in_rule__Signature__Group__410379);
-            rule__Signature__Group__4__Impl();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Signature__Group__4"
-
-
-    // $ANTLR start "rule__Signature__Group__4__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5213:1: rule__Signature__Group__4__Impl : ( ')' ) ;
-    public final void rule__Signature__Group__4__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5217:1: ( ( ')' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5218:1: ( ')' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5218:1: ( ')' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5219:1: ')'
-            {
-             before(grammarAccess.getSignatureAccess().getRightParenthesisKeyword_4()); 
-            match(input,34,FollowSets000.FOLLOW_34_in_rule__Signature__Group__4__Impl10407); 
-             after(grammarAccess.getSignatureAccess().getRightParenthesisKeyword_4()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Signature__Group__4__Impl"
-
-
-    // $ANTLR start "rule__Signature__Group_3__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5242:1: rule__Signature__Group_3__0 : rule__Signature__Group_3__0__Impl rule__Signature__Group_3__1 ;
-    public final void rule__Signature__Group_3__0() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5246:1: ( rule__Signature__Group_3__0__Impl rule__Signature__Group_3__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5247:2: rule__Signature__Group_3__0__Impl rule__Signature__Group_3__1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Signature__Group_3__0__Impl_in_rule__Signature__Group_3__010448);
-            rule__Signature__Group_3__0__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__Signature__Group_3__1_in_rule__Signature__Group_3__010451);
-            rule__Signature__Group_3__1();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Signature__Group_3__0"
-
-
-    // $ANTLR start "rule__Signature__Group_3__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5254:1: rule__Signature__Group_3__0__Impl : ( ( rule__Signature__ParametersAssignment_3_0 ) ) ;
-    public final void rule__Signature__Group_3__0__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5258:1: ( ( ( rule__Signature__ParametersAssignment_3_0 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5259:1: ( ( rule__Signature__ParametersAssignment_3_0 ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5259:1: ( ( rule__Signature__ParametersAssignment_3_0 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5260:1: ( rule__Signature__ParametersAssignment_3_0 )
-            {
-             before(grammarAccess.getSignatureAccess().getParametersAssignment_3_0()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5261:1: ( rule__Signature__ParametersAssignment_3_0 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5261:2: rule__Signature__ParametersAssignment_3_0
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Signature__ParametersAssignment_3_0_in_rule__Signature__Group_3__0__Impl10478);
-            rule__Signature__ParametersAssignment_3_0();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getSignatureAccess().getParametersAssignment_3_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Signature__Group_3__0__Impl"
-
-
-    // $ANTLR start "rule__Signature__Group_3__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5271:1: rule__Signature__Group_3__1 : rule__Signature__Group_3__1__Impl ;
-    public final void rule__Signature__Group_3__1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5275:1: ( rule__Signature__Group_3__1__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5276:2: rule__Signature__Group_3__1__Impl
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Signature__Group_3__1__Impl_in_rule__Signature__Group_3__110508);
-            rule__Signature__Group_3__1__Impl();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Signature__Group_3__1"
-
-
-    // $ANTLR start "rule__Signature__Group_3__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5282:1: rule__Signature__Group_3__1__Impl : ( ( rule__Signature__Group_3_1__0 )* ) ;
-    public final void rule__Signature__Group_3__1__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5286:1: ( ( ( rule__Signature__Group_3_1__0 )* ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5287:1: ( ( rule__Signature__Group_3_1__0 )* )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5287:1: ( ( rule__Signature__Group_3_1__0 )* )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5288:1: ( rule__Signature__Group_3_1__0 )*
-            {
-             before(grammarAccess.getSignatureAccess().getGroup_3_1()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5289:1: ( rule__Signature__Group_3_1__0 )*
-            loop31:
-            do {
-                int alt31=2;
-                int LA31_0 = input.LA(1);
-
-                if ( (LA31_0==23) ) {
-                    alt31=1;
-                }
-
-
-                switch (alt31) {
-            	case 1 :
-            	    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5289:2: rule__Signature__Group_3_1__0
-            	    {
-            	    pushFollow(FollowSets000.FOLLOW_rule__Signature__Group_3_1__0_in_rule__Signature__Group_3__1__Impl10535);
-            	    rule__Signature__Group_3_1__0();
-
-            	    state._fsp--;
-
-
-            	    }
-            	    break;
-
-            	default :
-            	    break loop31;
-                }
-            } while (true);
-
-             after(grammarAccess.getSignatureAccess().getGroup_3_1()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Signature__Group_3__1__Impl"
-
-
-    // $ANTLR start "rule__Signature__Group_3_1__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5303:1: rule__Signature__Group_3_1__0 : rule__Signature__Group_3_1__0__Impl rule__Signature__Group_3_1__1 ;
-    public final void rule__Signature__Group_3_1__0() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5307:1: ( rule__Signature__Group_3_1__0__Impl rule__Signature__Group_3_1__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5308:2: rule__Signature__Group_3_1__0__Impl rule__Signature__Group_3_1__1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Signature__Group_3_1__0__Impl_in_rule__Signature__Group_3_1__010570);
-            rule__Signature__Group_3_1__0__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__Signature__Group_3_1__1_in_rule__Signature__Group_3_1__010573);
-            rule__Signature__Group_3_1__1();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Signature__Group_3_1__0"
-
-
-    // $ANTLR start "rule__Signature__Group_3_1__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5315:1: rule__Signature__Group_3_1__0__Impl : ( ',' ) ;
-    public final void rule__Signature__Group_3_1__0__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5319:1: ( ( ',' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5320:1: ( ',' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5320:1: ( ',' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5321:1: ','
-            {
-             before(grammarAccess.getSignatureAccess().getCommaKeyword_3_1_0()); 
-            match(input,23,FollowSets000.FOLLOW_23_in_rule__Signature__Group_3_1__0__Impl10601); 
-             after(grammarAccess.getSignatureAccess().getCommaKeyword_3_1_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Signature__Group_3_1__0__Impl"
-
-
-    // $ANTLR start "rule__Signature__Group_3_1__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5334:1: rule__Signature__Group_3_1__1 : rule__Signature__Group_3_1__1__Impl ;
-    public final void rule__Signature__Group_3_1__1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5338:1: ( rule__Signature__Group_3_1__1__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5339:2: rule__Signature__Group_3_1__1__Impl
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Signature__Group_3_1__1__Impl_in_rule__Signature__Group_3_1__110632);
-            rule__Signature__Group_3_1__1__Impl();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Signature__Group_3_1__1"
-
-
-    // $ANTLR start "rule__Signature__Group_3_1__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5345:1: rule__Signature__Group_3_1__1__Impl : ( ( rule__Signature__ParametersAssignment_3_1_1 ) ) ;
-    public final void rule__Signature__Group_3_1__1__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5349:1: ( ( ( rule__Signature__ParametersAssignment_3_1_1 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5350:1: ( ( rule__Signature__ParametersAssignment_3_1_1 ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5350:1: ( ( rule__Signature__ParametersAssignment_3_1_1 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5351:1: ( rule__Signature__ParametersAssignment_3_1_1 )
-            {
-             before(grammarAccess.getSignatureAccess().getParametersAssignment_3_1_1()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5352:1: ( rule__Signature__ParametersAssignment_3_1_1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5352:2: rule__Signature__ParametersAssignment_3_1_1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Signature__ParametersAssignment_3_1_1_in_rule__Signature__Group_3_1__1__Impl10659);
-            rule__Signature__ParametersAssignment_3_1_1();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getSignatureAccess().getParametersAssignment_3_1_1()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Signature__Group_3_1__1__Impl"
-
-
-    // $ANTLR start "rule__Parameter__Group__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5366:1: rule__Parameter__Group__0 : rule__Parameter__Group__0__Impl rule__Parameter__Group__1 ;
-    public final void rule__Parameter__Group__0() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5370:1: ( rule__Parameter__Group__0__Impl rule__Parameter__Group__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5371:2: rule__Parameter__Group__0__Impl rule__Parameter__Group__1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Parameter__Group__0__Impl_in_rule__Parameter__Group__010693);
-            rule__Parameter__Group__0__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__Parameter__Group__1_in_rule__Parameter__Group__010696);
-            rule__Parameter__Group__1();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Parameter__Group__0"
-
-
-    // $ANTLR start "rule__Parameter__Group__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5378:1: rule__Parameter__Group__0__Impl : ( ( rule__Parameter__DataTypeAssignment_0 ) ) ;
-    public final void rule__Parameter__Group__0__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5382:1: ( ( ( rule__Parameter__DataTypeAssignment_0 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5383:1: ( ( rule__Parameter__DataTypeAssignment_0 ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5383:1: ( ( rule__Parameter__DataTypeAssignment_0 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5384:1: ( rule__Parameter__DataTypeAssignment_0 )
-            {
-             before(grammarAccess.getParameterAccess().getDataTypeAssignment_0()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5385:1: ( rule__Parameter__DataTypeAssignment_0 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5385:2: rule__Parameter__DataTypeAssignment_0
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Parameter__DataTypeAssignment_0_in_rule__Parameter__Group__0__Impl10723);
-            rule__Parameter__DataTypeAssignment_0();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getParameterAccess().getDataTypeAssignment_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Parameter__Group__0__Impl"
-
-
-    // $ANTLR start "rule__Parameter__Group__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5395:1: rule__Parameter__Group__1 : rule__Parameter__Group__1__Impl ;
-    public final void rule__Parameter__Group__1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5399:1: ( rule__Parameter__Group__1__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5400:2: rule__Parameter__Group__1__Impl
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Parameter__Group__1__Impl_in_rule__Parameter__Group__110753);
-            rule__Parameter__Group__1__Impl();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Parameter__Group__1"
-
-
-    // $ANTLR start "rule__Parameter__Group__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5406:1: rule__Parameter__Group__1__Impl : ( ( rule__Parameter__NameAssignment_1 ) ) ;
-    public final void rule__Parameter__Group__1__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5410:1: ( ( ( rule__Parameter__NameAssignment_1 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5411:1: ( ( rule__Parameter__NameAssignment_1 ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5411:1: ( ( rule__Parameter__NameAssignment_1 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5412:1: ( rule__Parameter__NameAssignment_1 )
-            {
-             before(grammarAccess.getParameterAccess().getNameAssignment_1()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5413:1: ( rule__Parameter__NameAssignment_1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5413:2: rule__Parameter__NameAssignment_1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Parameter__NameAssignment_1_in_rule__Parameter__Group__1__Impl10780);
-            rule__Parameter__NameAssignment_1();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getParameterAccess().getNameAssignment_1()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Parameter__Group__1__Impl"
-
-
-    // $ANTLR start "rule__ProvidedRole__Group__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5427:1: rule__ProvidedRole__Group__0 : rule__ProvidedRole__Group__0__Impl rule__ProvidedRole__Group__1 ;
-    public final void rule__ProvidedRole__Group__0() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5431:1: ( rule__ProvidedRole__Group__0__Impl rule__ProvidedRole__Group__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5432:2: rule__ProvidedRole__Group__0__Impl rule__ProvidedRole__Group__1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__ProvidedRole__Group__0__Impl_in_rule__ProvidedRole__Group__010814);
-            rule__ProvidedRole__Group__0__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__ProvidedRole__Group__1_in_rule__ProvidedRole__Group__010817);
-            rule__ProvidedRole__Group__1();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__ProvidedRole__Group__0"
-
-
-    // $ANTLR start "rule__ProvidedRole__Group__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5439:1: rule__ProvidedRole__Group__0__Impl : ( 'ProvidedRole' ) ;
-    public final void rule__ProvidedRole__Group__0__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5443:1: ( ( 'ProvidedRole' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5444:1: ( 'ProvidedRole' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5444:1: ( 'ProvidedRole' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5445:1: 'ProvidedRole'
-            {
-             before(grammarAccess.getProvidedRoleAccess().getProvidedRoleKeyword_0()); 
-            match(input,49,FollowSets000.FOLLOW_49_in_rule__ProvidedRole__Group__0__Impl10845); 
-             after(grammarAccess.getProvidedRoleAccess().getProvidedRoleKeyword_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__ProvidedRole__Group__0__Impl"
-
-
-    // $ANTLR start "rule__ProvidedRole__Group__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5458:1: rule__ProvidedRole__Group__1 : rule__ProvidedRole__Group__1__Impl rule__ProvidedRole__Group__2 ;
-    public final void rule__ProvidedRole__Group__1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5462:1: ( rule__ProvidedRole__Group__1__Impl rule__ProvidedRole__Group__2 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5463:2: rule__ProvidedRole__Group__1__Impl rule__ProvidedRole__Group__2
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__ProvidedRole__Group__1__Impl_in_rule__ProvidedRole__Group__110876);
-            rule__ProvidedRole__Group__1__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__ProvidedRole__Group__2_in_rule__ProvidedRole__Group__110879);
-            rule__ProvidedRole__Group__2();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__ProvidedRole__Group__1"
-
-
-    // $ANTLR start "rule__ProvidedRole__Group__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5470:1: rule__ProvidedRole__Group__1__Impl : ( ( rule__ProvidedRole__InterfaceAssignment_1 ) ) ;
-    public final void rule__ProvidedRole__Group__1__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5474:1: ( ( ( rule__ProvidedRole__InterfaceAssignment_1 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5475:1: ( ( rule__ProvidedRole__InterfaceAssignment_1 ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5475:1: ( ( rule__ProvidedRole__InterfaceAssignment_1 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5476:1: ( rule__ProvidedRole__InterfaceAssignment_1 )
-            {
-             before(grammarAccess.getProvidedRoleAccess().getInterfaceAssignment_1()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5477:1: ( rule__ProvidedRole__InterfaceAssignment_1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5477:2: rule__ProvidedRole__InterfaceAssignment_1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__ProvidedRole__InterfaceAssignment_1_in_rule__ProvidedRole__Group__1__Impl10906);
-            rule__ProvidedRole__InterfaceAssignment_1();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getProvidedRoleAccess().getInterfaceAssignment_1()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__ProvidedRole__Group__1__Impl"
-
-
-    // $ANTLR start "rule__ProvidedRole__Group__2"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5487:1: rule__ProvidedRole__Group__2 : rule__ProvidedRole__Group__2__Impl ;
-    public final void rule__ProvidedRole__Group__2() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5491:1: ( rule__ProvidedRole__Group__2__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5492:2: rule__ProvidedRole__Group__2__Impl
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__ProvidedRole__Group__2__Impl_in_rule__ProvidedRole__Group__210936);
-            rule__ProvidedRole__Group__2__Impl();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__ProvidedRole__Group__2"
-
-
-    // $ANTLR start "rule__ProvidedRole__Group__2__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5498:1: rule__ProvidedRole__Group__2__Impl : ( ( ',' )? ) ;
-    public final void rule__ProvidedRole__Group__2__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5502:1: ( ( ( ',' )? ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5503:1: ( ( ',' )? )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5503:1: ( ( ',' )? )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5504:1: ( ',' )?
-            {
-             before(grammarAccess.getProvidedRoleAccess().getCommaKeyword_2()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5505:1: ( ',' )?
-            int alt32=2;
-            int LA32_0 = input.LA(1);
-
-            if ( (LA32_0==23) ) {
-                int LA32_1 = input.LA(2);
-
-                if ( (LA32_1==EOF||(LA32_1>=20 && LA32_1<=21)||LA32_1==23||LA32_1==50) ) {
-                    alt32=1;
-                }
-            }
-            switch (alt32) {
-                case 1 :
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5506:2: ','
-                    {
-                    match(input,23,FollowSets000.FOLLOW_23_in_rule__ProvidedRole__Group__2__Impl10965); 
-
-                    }
-                    break;
-
-            }
-
-             after(grammarAccess.getProvidedRoleAccess().getCommaKeyword_2()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__ProvidedRole__Group__2__Impl"
-
-
-    // $ANTLR start "rule__RequiredRole__Group__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5523:1: rule__RequiredRole__Group__0 : rule__RequiredRole__Group__0__Impl rule__RequiredRole__Group__1 ;
-    public final void rule__RequiredRole__Group__0() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5527:1: ( rule__RequiredRole__Group__0__Impl rule__RequiredRole__Group__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5528:2: rule__RequiredRole__Group__0__Impl rule__RequiredRole__Group__1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__RequiredRole__Group__0__Impl_in_rule__RequiredRole__Group__011004);
-            rule__RequiredRole__Group__0__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__RequiredRole__Group__1_in_rule__RequiredRole__Group__011007);
-            rule__RequiredRole__Group__1();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__RequiredRole__Group__0"
-
-
-    // $ANTLR start "rule__RequiredRole__Group__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5535:1: rule__RequiredRole__Group__0__Impl : ( 'RequiredRole' ) ;
-    public final void rule__RequiredRole__Group__0__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5539:1: ( ( 'RequiredRole' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5540:1: ( 'RequiredRole' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5540:1: ( 'RequiredRole' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5541:1: 'RequiredRole'
-            {
-             before(grammarAccess.getRequiredRoleAccess().getRequiredRoleKeyword_0()); 
-            match(input,50,FollowSets000.FOLLOW_50_in_rule__RequiredRole__Group__0__Impl11035); 
-             after(grammarAccess.getRequiredRoleAccess().getRequiredRoleKeyword_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__RequiredRole__Group__0__Impl"
-
-
-    // $ANTLR start "rule__RequiredRole__Group__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5554:1: rule__RequiredRole__Group__1 : rule__RequiredRole__Group__1__Impl rule__RequiredRole__Group__2 ;
-    public final void rule__RequiredRole__Group__1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5558:1: ( rule__RequiredRole__Group__1__Impl rule__RequiredRole__Group__2 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5559:2: rule__RequiredRole__Group__1__Impl rule__RequiredRole__Group__2
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__RequiredRole__Group__1__Impl_in_rule__RequiredRole__Group__111066);
-            rule__RequiredRole__Group__1__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__RequiredRole__Group__2_in_rule__RequiredRole__Group__111069);
-            rule__RequiredRole__Group__2();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__RequiredRole__Group__1"
-
-
-    // $ANTLR start "rule__RequiredRole__Group__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5566:1: rule__RequiredRole__Group__1__Impl : ( ( rule__RequiredRole__InterfaceAssignment_1 ) ) ;
-    public final void rule__RequiredRole__Group__1__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5570:1: ( ( ( rule__RequiredRole__InterfaceAssignment_1 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5571:1: ( ( rule__RequiredRole__InterfaceAssignment_1 ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5571:1: ( ( rule__RequiredRole__InterfaceAssignment_1 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5572:1: ( rule__RequiredRole__InterfaceAssignment_1 )
-            {
-             before(grammarAccess.getRequiredRoleAccess().getInterfaceAssignment_1()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5573:1: ( rule__RequiredRole__InterfaceAssignment_1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5573:2: rule__RequiredRole__InterfaceAssignment_1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__RequiredRole__InterfaceAssignment_1_in_rule__RequiredRole__Group__1__Impl11096);
-            rule__RequiredRole__InterfaceAssignment_1();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getRequiredRoleAccess().getInterfaceAssignment_1()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__RequiredRole__Group__1__Impl"
-
-
-    // $ANTLR start "rule__RequiredRole__Group__2"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5583:1: rule__RequiredRole__Group__2 : rule__RequiredRole__Group__2__Impl ;
-    public final void rule__RequiredRole__Group__2() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5587:1: ( rule__RequiredRole__Group__2__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5588:2: rule__RequiredRole__Group__2__Impl
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__RequiredRole__Group__2__Impl_in_rule__RequiredRole__Group__211126);
-            rule__RequiredRole__Group__2__Impl();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__RequiredRole__Group__2"
-
-
-    // $ANTLR start "rule__RequiredRole__Group__2__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5594:1: rule__RequiredRole__Group__2__Impl : ( ( ',' )? ) ;
-    public final void rule__RequiredRole__Group__2__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5598:1: ( ( ( ',' )? ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5599:1: ( ( ',' )? )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5599:1: ( ( ',' )? )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5600:1: ( ',' )?
-            {
-             before(grammarAccess.getRequiredRoleAccess().getCommaKeyword_2()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5601:1: ( ',' )?
-            int alt33=2;
-            int LA33_0 = input.LA(1);
-
-            if ( (LA33_0==23) ) {
-                int LA33_1 = input.LA(2);
-
-                if ( (LA33_1==EOF||(LA33_1>=20 && LA33_1<=21)||LA33_1==23) ) {
-                    alt33=1;
-                }
-            }
-            switch (alt33) {
-                case 1 :
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5602:2: ','
-                    {
-                    match(input,23,FollowSets000.FOLLOW_23_in_rule__RequiredRole__Group__2__Impl11155); 
-
-                    }
-                    break;
-
-            }
-
-             after(grammarAccess.getRequiredRoleAccess().getCommaKeyword_2()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__RequiredRole__Group__2__Impl"
-
-
-    // $ANTLR start "rule__BasicComponent__Group__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5619:1: rule__BasicComponent__Group__0 : rule__BasicComponent__Group__0__Impl rule__BasicComponent__Group__1 ;
-    public final void rule__BasicComponent__Group__0() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5623:1: ( rule__BasicComponent__Group__0__Impl rule__BasicComponent__Group__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5624:2: rule__BasicComponent__Group__0__Impl rule__BasicComponent__Group__1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group__0__Impl_in_rule__BasicComponent__Group__011194);
-            rule__BasicComponent__Group__0__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group__1_in_rule__BasicComponent__Group__011197);
-            rule__BasicComponent__Group__1();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__BasicComponent__Group__0"
-
-
-    // $ANTLR start "rule__BasicComponent__Group__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5631:1: rule__BasicComponent__Group__0__Impl : ( 'BasicComponent' ) ;
-    public final void rule__BasicComponent__Group__0__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5635:1: ( ( 'BasicComponent' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5636:1: ( 'BasicComponent' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5636:1: ( 'BasicComponent' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5637:1: 'BasicComponent'
-            {
-             before(grammarAccess.getBasicComponentAccess().getBasicComponentKeyword_0()); 
-            match(input,51,FollowSets000.FOLLOW_51_in_rule__BasicComponent__Group__0__Impl11225); 
-             after(grammarAccess.getBasicComponentAccess().getBasicComponentKeyword_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__BasicComponent__Group__0__Impl"
-
-
-    // $ANTLR start "rule__BasicComponent__Group__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5650:1: rule__BasicComponent__Group__1 : rule__BasicComponent__Group__1__Impl rule__BasicComponent__Group__2 ;
-    public final void rule__BasicComponent__Group__1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5654:1: ( rule__BasicComponent__Group__1__Impl rule__BasicComponent__Group__2 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5655:2: rule__BasicComponent__Group__1__Impl rule__BasicComponent__Group__2
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group__1__Impl_in_rule__BasicComponent__Group__111256);
-            rule__BasicComponent__Group__1__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group__2_in_rule__BasicComponent__Group__111259);
-            rule__BasicComponent__Group__2();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__BasicComponent__Group__1"
-
-
-    // $ANTLR start "rule__BasicComponent__Group__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5662:1: rule__BasicComponent__Group__1__Impl : ( ( rule__BasicComponent__NameAssignment_1 ) ) ;
-    public final void rule__BasicComponent__Group__1__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5666:1: ( ( ( rule__BasicComponent__NameAssignment_1 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5667:1: ( ( rule__BasicComponent__NameAssignment_1 ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5667:1: ( ( rule__BasicComponent__NameAssignment_1 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5668:1: ( rule__BasicComponent__NameAssignment_1 )
-            {
-             before(grammarAccess.getBasicComponentAccess().getNameAssignment_1()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5669:1: ( rule__BasicComponent__NameAssignment_1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5669:2: rule__BasicComponent__NameAssignment_1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__NameAssignment_1_in_rule__BasicComponent__Group__1__Impl11286);
-            rule__BasicComponent__NameAssignment_1();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getBasicComponentAccess().getNameAssignment_1()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__BasicComponent__Group__1__Impl"
-
-
-    // $ANTLR start "rule__BasicComponent__Group__2"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5679:1: rule__BasicComponent__Group__2 : rule__BasicComponent__Group__2__Impl rule__BasicComponent__Group__3 ;
-    public final void rule__BasicComponent__Group__2() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5683:1: ( rule__BasicComponent__Group__2__Impl rule__BasicComponent__Group__3 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5684:2: rule__BasicComponent__Group__2__Impl rule__BasicComponent__Group__3
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group__2__Impl_in_rule__BasicComponent__Group__211316);
-            rule__BasicComponent__Group__2__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group__3_in_rule__BasicComponent__Group__211319);
-            rule__BasicComponent__Group__3();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__BasicComponent__Group__2"
-
-
-    // $ANTLR start "rule__BasicComponent__Group__2__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5691:1: rule__BasicComponent__Group__2__Impl : ( ( rule__BasicComponent__Group_2__0 )? ) ;
-    public final void rule__BasicComponent__Group__2__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5695:1: ( ( ( rule__BasicComponent__Group_2__0 )? ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5696:1: ( ( rule__BasicComponent__Group_2__0 )? )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5696:1: ( ( rule__BasicComponent__Group_2__0 )? )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5697:1: ( rule__BasicComponent__Group_2__0 )?
-            {
-             before(grammarAccess.getBasicComponentAccess().getGroup_2()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5698:1: ( rule__BasicComponent__Group_2__0 )?
-            int alt34=2;
-            int LA34_0 = input.LA(1);
-
-            if ( (LA34_0==49) ) {
-                alt34=1;
-            }
-            switch (alt34) {
-                case 1 :
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5698:2: rule__BasicComponent__Group_2__0
-                    {
-                    pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group_2__0_in_rule__BasicComponent__Group__2__Impl11346);
-                    rule__BasicComponent__Group_2__0();
-
-                    state._fsp--;
-
-
-                    }
-                    break;
-
-            }
-
-             after(grammarAccess.getBasicComponentAccess().getGroup_2()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__BasicComponent__Group__2__Impl"
-
-
-    // $ANTLR start "rule__BasicComponent__Group__3"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5708:1: rule__BasicComponent__Group__3 : rule__BasicComponent__Group__3__Impl rule__BasicComponent__Group__4 ;
-    public final void rule__BasicComponent__Group__3() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5712:1: ( rule__BasicComponent__Group__3__Impl rule__BasicComponent__Group__4 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5713:2: rule__BasicComponent__Group__3__Impl rule__BasicComponent__Group__4
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group__3__Impl_in_rule__BasicComponent__Group__311377);
-            rule__BasicComponent__Group__3__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group__4_in_rule__BasicComponent__Group__311380);
-            rule__BasicComponent__Group__4();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__BasicComponent__Group__3"
-
-
-    // $ANTLR start "rule__BasicComponent__Group__3__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5720:1: rule__BasicComponent__Group__3__Impl : ( ( rule__BasicComponent__Group_3__0 )? ) ;
-    public final void rule__BasicComponent__Group__3__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5724:1: ( ( ( rule__BasicComponent__Group_3__0 )? ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5725:1: ( ( rule__BasicComponent__Group_3__0 )? )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5725:1: ( ( rule__BasicComponent__Group_3__0 )? )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5726:1: ( rule__BasicComponent__Group_3__0 )?
-            {
-             before(grammarAccess.getBasicComponentAccess().getGroup_3()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5727:1: ( rule__BasicComponent__Group_3__0 )?
-            int alt35=2;
-            int LA35_0 = input.LA(1);
-
-            if ( (LA35_0==50) ) {
-                alt35=1;
-            }
-            switch (alt35) {
-                case 1 :
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5727:2: rule__BasicComponent__Group_3__0
-                    {
-                    pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group_3__0_in_rule__BasicComponent__Group__3__Impl11407);
-                    rule__BasicComponent__Group_3__0();
-
-                    state._fsp--;
-
-
-                    }
-                    break;
-
-            }
-
-             after(grammarAccess.getBasicComponentAccess().getGroup_3()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__BasicComponent__Group__3__Impl"
-
-
-    // $ANTLR start "rule__BasicComponent__Group__4"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5737:1: rule__BasicComponent__Group__4 : rule__BasicComponent__Group__4__Impl rule__BasicComponent__Group__5 ;
-    public final void rule__BasicComponent__Group__4() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5741:1: ( rule__BasicComponent__Group__4__Impl rule__BasicComponent__Group__5 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5742:2: rule__BasicComponent__Group__4__Impl rule__BasicComponent__Group__5
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group__4__Impl_in_rule__BasicComponent__Group__411438);
-            rule__BasicComponent__Group__4__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group__5_in_rule__BasicComponent__Group__411441);
-            rule__BasicComponent__Group__5();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__BasicComponent__Group__4"
-
-
-    // $ANTLR start "rule__BasicComponent__Group__4__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5749:1: rule__BasicComponent__Group__4__Impl : ( '{' ) ;
-    public final void rule__BasicComponent__Group__4__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5753:1: ( ( '{' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5754:1: ( '{' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5754:1: ( '{' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5755:1: '{'
-            {
-             before(grammarAccess.getBasicComponentAccess().getLeftCurlyBracketKeyword_4()); 
-            match(input,20,FollowSets000.FOLLOW_20_in_rule__BasicComponent__Group__4__Impl11469); 
-             after(grammarAccess.getBasicComponentAccess().getLeftCurlyBracketKeyword_4()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__BasicComponent__Group__4__Impl"
-
-
-    // $ANTLR start "rule__BasicComponent__Group__5"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5768:1: rule__BasicComponent__Group__5 : rule__BasicComponent__Group__5__Impl rule__BasicComponent__Group__6 ;
-    public final void rule__BasicComponent__Group__5() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5772:1: ( rule__BasicComponent__Group__5__Impl rule__BasicComponent__Group__6 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5773:2: rule__BasicComponent__Group__5__Impl rule__BasicComponent__Group__6
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group__5__Impl_in_rule__BasicComponent__Group__511500);
-            rule__BasicComponent__Group__5__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group__6_in_rule__BasicComponent__Group__511503);
-            rule__BasicComponent__Group__6();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__BasicComponent__Group__5"
-
-
-    // $ANTLR start "rule__BasicComponent__Group__5__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5780:1: rule__BasicComponent__Group__5__Impl : ( ( rule__BasicComponent__Group_5__0 )? ) ;
-    public final void rule__BasicComponent__Group__5__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5784:1: ( ( ( rule__BasicComponent__Group_5__0 )? ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5785:1: ( ( rule__BasicComponent__Group_5__0 )? )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5785:1: ( ( rule__BasicComponent__Group_5__0 )? )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5786:1: ( rule__BasicComponent__Group_5__0 )?
-            {
-             before(grammarAccess.getBasicComponentAccess().getGroup_5()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5787:1: ( rule__BasicComponent__Group_5__0 )?
-            int alt36=2;
-            int LA36_0 = input.LA(1);
-
-            if ( (LA36_0==36) ) {
-                alt36=1;
-            }
-            switch (alt36) {
-                case 1 :
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5787:2: rule__BasicComponent__Group_5__0
-                    {
-                    pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group_5__0_in_rule__BasicComponent__Group__5__Impl11530);
-                    rule__BasicComponent__Group_5__0();
-
-                    state._fsp--;
-
-
-                    }
-                    break;
-
-            }
-
-             after(grammarAccess.getBasicComponentAccess().getGroup_5()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__BasicComponent__Group__5__Impl"
-
-
-    // $ANTLR start "rule__BasicComponent__Group__6"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5797:1: rule__BasicComponent__Group__6 : rule__BasicComponent__Group__6__Impl ;
-    public final void rule__BasicComponent__Group__6() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5801:1: ( rule__BasicComponent__Group__6__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5802:2: rule__BasicComponent__Group__6__Impl
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group__6__Impl_in_rule__BasicComponent__Group__611561);
-            rule__BasicComponent__Group__6__Impl();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__BasicComponent__Group__6"
-
-
-    // $ANTLR start "rule__BasicComponent__Group__6__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5808:1: rule__BasicComponent__Group__6__Impl : ( '}' ) ;
-    public final void rule__BasicComponent__Group__6__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5812:1: ( ( '}' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5813:1: ( '}' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5813:1: ( '}' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5814:1: '}'
-            {
-             before(grammarAccess.getBasicComponentAccess().getRightCurlyBracketKeyword_6()); 
-            match(input,21,FollowSets000.FOLLOW_21_in_rule__BasicComponent__Group__6__Impl11589); 
-             after(grammarAccess.getBasicComponentAccess().getRightCurlyBracketKeyword_6()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__BasicComponent__Group__6__Impl"
-
-
-    // $ANTLR start "rule__BasicComponent__Group_2__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5841:1: rule__BasicComponent__Group_2__0 : rule__BasicComponent__Group_2__0__Impl rule__BasicComponent__Group_2__1 ;
-    public final void rule__BasicComponent__Group_2__0() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5845:1: ( rule__BasicComponent__Group_2__0__Impl rule__BasicComponent__Group_2__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5846:2: rule__BasicComponent__Group_2__0__Impl rule__BasicComponent__Group_2__1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group_2__0__Impl_in_rule__BasicComponent__Group_2__011634);
-            rule__BasicComponent__Group_2__0__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group_2__1_in_rule__BasicComponent__Group_2__011637);
-            rule__BasicComponent__Group_2__1();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__BasicComponent__Group_2__0"
-
-
-    // $ANTLR start "rule__BasicComponent__Group_2__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5853:1: rule__BasicComponent__Group_2__0__Impl : ( ( rule__BasicComponent__ProvidedRolesAssignment_2_0 ) ) ;
-    public final void rule__BasicComponent__Group_2__0__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5857:1: ( ( ( rule__BasicComponent__ProvidedRolesAssignment_2_0 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5858:1: ( ( rule__BasicComponent__ProvidedRolesAssignment_2_0 ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5858:1: ( ( rule__BasicComponent__ProvidedRolesAssignment_2_0 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5859:1: ( rule__BasicComponent__ProvidedRolesAssignment_2_0 )
-            {
-             before(grammarAccess.getBasicComponentAccess().getProvidedRolesAssignment_2_0()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5860:1: ( rule__BasicComponent__ProvidedRolesAssignment_2_0 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5860:2: rule__BasicComponent__ProvidedRolesAssignment_2_0
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__ProvidedRolesAssignment_2_0_in_rule__BasicComponent__Group_2__0__Impl11664);
-            rule__BasicComponent__ProvidedRolesAssignment_2_0();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getBasicComponentAccess().getProvidedRolesAssignment_2_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__BasicComponent__Group_2__0__Impl"
-
-
-    // $ANTLR start "rule__BasicComponent__Group_2__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5870:1: rule__BasicComponent__Group_2__1 : rule__BasicComponent__Group_2__1__Impl ;
-    public final void rule__BasicComponent__Group_2__1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5874:1: ( rule__BasicComponent__Group_2__1__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5875:2: rule__BasicComponent__Group_2__1__Impl
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group_2__1__Impl_in_rule__BasicComponent__Group_2__111694);
-            rule__BasicComponent__Group_2__1__Impl();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__BasicComponent__Group_2__1"
-
-
-    // $ANTLR start "rule__BasicComponent__Group_2__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5881:1: rule__BasicComponent__Group_2__1__Impl : ( ( rule__BasicComponent__Group_2_1__0 )* ) ;
-    public final void rule__BasicComponent__Group_2__1__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5885:1: ( ( ( rule__BasicComponent__Group_2_1__0 )* ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5886:1: ( ( rule__BasicComponent__Group_2_1__0 )* )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5886:1: ( ( rule__BasicComponent__Group_2_1__0 )* )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5887:1: ( rule__BasicComponent__Group_2_1__0 )*
-            {
-             before(grammarAccess.getBasicComponentAccess().getGroup_2_1()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5888:1: ( rule__BasicComponent__Group_2_1__0 )*
-            loop37:
-            do {
-                int alt37=2;
-                int LA37_0 = input.LA(1);
-
-                if ( (LA37_0==23) ) {
-                    alt37=1;
-                }
-
-
-                switch (alt37) {
-            	case 1 :
-            	    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5888:2: rule__BasicComponent__Group_2_1__0
-            	    {
-            	    pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group_2_1__0_in_rule__BasicComponent__Group_2__1__Impl11721);
-            	    rule__BasicComponent__Group_2_1__0();
-
-            	    state._fsp--;
-
-
-            	    }
-            	    break;
-
-            	default :
-            	    break loop37;
-                }
-            } while (true);
-
-             after(grammarAccess.getBasicComponentAccess().getGroup_2_1()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__BasicComponent__Group_2__1__Impl"
-
-
-    // $ANTLR start "rule__BasicComponent__Group_2_1__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5902:1: rule__BasicComponent__Group_2_1__0 : rule__BasicComponent__Group_2_1__0__Impl rule__BasicComponent__Group_2_1__1 ;
-    public final void rule__BasicComponent__Group_2_1__0() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5906:1: ( rule__BasicComponent__Group_2_1__0__Impl rule__BasicComponent__Group_2_1__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5907:2: rule__BasicComponent__Group_2_1__0__Impl rule__BasicComponent__Group_2_1__1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group_2_1__0__Impl_in_rule__BasicComponent__Group_2_1__011756);
-            rule__BasicComponent__Group_2_1__0__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group_2_1__1_in_rule__BasicComponent__Group_2_1__011759);
-            rule__BasicComponent__Group_2_1__1();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__BasicComponent__Group_2_1__0"
-
-
-    // $ANTLR start "rule__BasicComponent__Group_2_1__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5914:1: rule__BasicComponent__Group_2_1__0__Impl : ( ',' ) ;
-    public final void rule__BasicComponent__Group_2_1__0__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5918:1: ( ( ',' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5919:1: ( ',' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5919:1: ( ',' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5920:1: ','
-            {
-             before(grammarAccess.getBasicComponentAccess().getCommaKeyword_2_1_0()); 
-            match(input,23,FollowSets000.FOLLOW_23_in_rule__BasicComponent__Group_2_1__0__Impl11787); 
-             after(grammarAccess.getBasicComponentAccess().getCommaKeyword_2_1_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__BasicComponent__Group_2_1__0__Impl"
-
-
-    // $ANTLR start "rule__BasicComponent__Group_2_1__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5933:1: rule__BasicComponent__Group_2_1__1 : rule__BasicComponent__Group_2_1__1__Impl ;
-    public final void rule__BasicComponent__Group_2_1__1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5937:1: ( rule__BasicComponent__Group_2_1__1__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5938:2: rule__BasicComponent__Group_2_1__1__Impl
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group_2_1__1__Impl_in_rule__BasicComponent__Group_2_1__111818);
-            rule__BasicComponent__Group_2_1__1__Impl();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__BasicComponent__Group_2_1__1"
-
-
-    // $ANTLR start "rule__BasicComponent__Group_2_1__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5944:1: rule__BasicComponent__Group_2_1__1__Impl : ( ( rule__BasicComponent__ProvidedRolesAssignment_2_1_1 ) ) ;
-    public final void rule__BasicComponent__Group_2_1__1__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5948:1: ( ( ( rule__BasicComponent__ProvidedRolesAssignment_2_1_1 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5949:1: ( ( rule__BasicComponent__ProvidedRolesAssignment_2_1_1 ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5949:1: ( ( rule__BasicComponent__ProvidedRolesAssignment_2_1_1 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5950:1: ( rule__BasicComponent__ProvidedRolesAssignment_2_1_1 )
-            {
-             before(grammarAccess.getBasicComponentAccess().getProvidedRolesAssignment_2_1_1()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5951:1: ( rule__BasicComponent__ProvidedRolesAssignment_2_1_1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5951:2: rule__BasicComponent__ProvidedRolesAssignment_2_1_1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__ProvidedRolesAssignment_2_1_1_in_rule__BasicComponent__Group_2_1__1__Impl11845);
-            rule__BasicComponent__ProvidedRolesAssignment_2_1_1();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getBasicComponentAccess().getProvidedRolesAssignment_2_1_1()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__BasicComponent__Group_2_1__1__Impl"
-
-
-    // $ANTLR start "rule__BasicComponent__Group_3__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5965:1: rule__BasicComponent__Group_3__0 : rule__BasicComponent__Group_3__0__Impl rule__BasicComponent__Group_3__1 ;
-    public final void rule__BasicComponent__Group_3__0() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5969:1: ( rule__BasicComponent__Group_3__0__Impl rule__BasicComponent__Group_3__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5970:2: rule__BasicComponent__Group_3__0__Impl rule__BasicComponent__Group_3__1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group_3__0__Impl_in_rule__BasicComponent__Group_3__011879);
-            rule__BasicComponent__Group_3__0__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group_3__1_in_rule__BasicComponent__Group_3__011882);
-            rule__BasicComponent__Group_3__1();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__BasicComponent__Group_3__0"
-
-
-    // $ANTLR start "rule__BasicComponent__Group_3__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5977:1: rule__BasicComponent__Group_3__0__Impl : ( ( rule__BasicComponent__RequiredRolesAssignment_3_0 ) ) ;
-    public final void rule__BasicComponent__Group_3__0__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5981:1: ( ( ( rule__BasicComponent__RequiredRolesAssignment_3_0 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5982:1: ( ( rule__BasicComponent__RequiredRolesAssignment_3_0 ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5982:1: ( ( rule__BasicComponent__RequiredRolesAssignment_3_0 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5983:1: ( rule__BasicComponent__RequiredRolesAssignment_3_0 )
-            {
-             before(grammarAccess.getBasicComponentAccess().getRequiredRolesAssignment_3_0()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5984:1: ( rule__BasicComponent__RequiredRolesAssignment_3_0 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5984:2: rule__BasicComponent__RequiredRolesAssignment_3_0
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__RequiredRolesAssignment_3_0_in_rule__BasicComponent__Group_3__0__Impl11909);
-            rule__BasicComponent__RequiredRolesAssignment_3_0();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getBasicComponentAccess().getRequiredRolesAssignment_3_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__BasicComponent__Group_3__0__Impl"
-
-
-    // $ANTLR start "rule__BasicComponent__Group_3__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5994:1: rule__BasicComponent__Group_3__1 : rule__BasicComponent__Group_3__1__Impl ;
-    public final void rule__BasicComponent__Group_3__1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5998:1: ( rule__BasicComponent__Group_3__1__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5999:2: rule__BasicComponent__Group_3__1__Impl
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group_3__1__Impl_in_rule__BasicComponent__Group_3__111939);
-            rule__BasicComponent__Group_3__1__Impl();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__BasicComponent__Group_3__1"
-
-
-    // $ANTLR start "rule__BasicComponent__Group_3__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6005:1: rule__BasicComponent__Group_3__1__Impl : ( ( rule__BasicComponent__Group_3_1__0 )* ) ;
-    public final void rule__BasicComponent__Group_3__1__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6009:1: ( ( ( rule__BasicComponent__Group_3_1__0 )* ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6010:1: ( ( rule__BasicComponent__Group_3_1__0 )* )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6010:1: ( ( rule__BasicComponent__Group_3_1__0 )* )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6011:1: ( rule__BasicComponent__Group_3_1__0 )*
-            {
-             before(grammarAccess.getBasicComponentAccess().getGroup_3_1()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6012:1: ( rule__BasicComponent__Group_3_1__0 )*
-            loop38:
-            do {
-                int alt38=2;
-                int LA38_0 = input.LA(1);
-
-                if ( (LA38_0==23) ) {
-                    alt38=1;
-                }
-
-
-                switch (alt38) {
-            	case 1 :
-            	    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6012:2: rule__BasicComponent__Group_3_1__0
-            	    {
-            	    pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group_3_1__0_in_rule__BasicComponent__Group_3__1__Impl11966);
-            	    rule__BasicComponent__Group_3_1__0();
-
-            	    state._fsp--;
-
-
-            	    }
-            	    break;
-
-            	default :
-            	    break loop38;
-                }
-            } while (true);
-
-             after(grammarAccess.getBasicComponentAccess().getGroup_3_1()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__BasicComponent__Group_3__1__Impl"
-
-
-    // $ANTLR start "rule__BasicComponent__Group_3_1__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6026:1: rule__BasicComponent__Group_3_1__0 : rule__BasicComponent__Group_3_1__0__Impl rule__BasicComponent__Group_3_1__1 ;
-    public final void rule__BasicComponent__Group_3_1__0() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6030:1: ( rule__BasicComponent__Group_3_1__0__Impl rule__BasicComponent__Group_3_1__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6031:2: rule__BasicComponent__Group_3_1__0__Impl rule__BasicComponent__Group_3_1__1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group_3_1__0__Impl_in_rule__BasicComponent__Group_3_1__012001);
-            rule__BasicComponent__Group_3_1__0__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group_3_1__1_in_rule__BasicComponent__Group_3_1__012004);
-            rule__BasicComponent__Group_3_1__1();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__BasicComponent__Group_3_1__0"
-
-
-    // $ANTLR start "rule__BasicComponent__Group_3_1__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6038:1: rule__BasicComponent__Group_3_1__0__Impl : ( ',' ) ;
-    public final void rule__BasicComponent__Group_3_1__0__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6042:1: ( ( ',' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6043:1: ( ',' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6043:1: ( ',' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6044:1: ','
-            {
-             before(grammarAccess.getBasicComponentAccess().getCommaKeyword_3_1_0()); 
-            match(input,23,FollowSets000.FOLLOW_23_in_rule__BasicComponent__Group_3_1__0__Impl12032); 
-             after(grammarAccess.getBasicComponentAccess().getCommaKeyword_3_1_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__BasicComponent__Group_3_1__0__Impl"
-
-
-    // $ANTLR start "rule__BasicComponent__Group_3_1__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6057:1: rule__BasicComponent__Group_3_1__1 : rule__BasicComponent__Group_3_1__1__Impl ;
-    public final void rule__BasicComponent__Group_3_1__1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6061:1: ( rule__BasicComponent__Group_3_1__1__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6062:2: rule__BasicComponent__Group_3_1__1__Impl
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group_3_1__1__Impl_in_rule__BasicComponent__Group_3_1__112063);
-            rule__BasicComponent__Group_3_1__1__Impl();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__BasicComponent__Group_3_1__1"
-
-
-    // $ANTLR start "rule__BasicComponent__Group_3_1__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6068:1: rule__BasicComponent__Group_3_1__1__Impl : ( ( rule__BasicComponent__RequiredRolesAssignment_3_1_1 ) ) ;
-    public final void rule__BasicComponent__Group_3_1__1__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6072:1: ( ( ( rule__BasicComponent__RequiredRolesAssignment_3_1_1 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6073:1: ( ( rule__BasicComponent__RequiredRolesAssignment_3_1_1 ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6073:1: ( ( rule__BasicComponent__RequiredRolesAssignment_3_1_1 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6074:1: ( rule__BasicComponent__RequiredRolesAssignment_3_1_1 )
-            {
-             before(grammarAccess.getBasicComponentAccess().getRequiredRolesAssignment_3_1_1()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6075:1: ( rule__BasicComponent__RequiredRolesAssignment_3_1_1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6075:2: rule__BasicComponent__RequiredRolesAssignment_3_1_1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__RequiredRolesAssignment_3_1_1_in_rule__BasicComponent__Group_3_1__1__Impl12090);
-            rule__BasicComponent__RequiredRolesAssignment_3_1_1();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getBasicComponentAccess().getRequiredRolesAssignment_3_1_1()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__BasicComponent__Group_3_1__1__Impl"
-
-
-    // $ANTLR start "rule__BasicComponent__Group_5__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6089:1: rule__BasicComponent__Group_5__0 : rule__BasicComponent__Group_5__0__Impl rule__BasicComponent__Group_5__1 ;
-    public final void rule__BasicComponent__Group_5__0() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6093:1: ( rule__BasicComponent__Group_5__0__Impl rule__BasicComponent__Group_5__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6094:2: rule__BasicComponent__Group_5__0__Impl rule__BasicComponent__Group_5__1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group_5__0__Impl_in_rule__BasicComponent__Group_5__012124);
-            rule__BasicComponent__Group_5__0__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group_5__1_in_rule__BasicComponent__Group_5__012127);
-            rule__BasicComponent__Group_5__1();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__BasicComponent__Group_5__0"
-
-
-    // $ANTLR start "rule__BasicComponent__Group_5__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6101:1: rule__BasicComponent__Group_5__0__Impl : ( 'relationship' ) ;
-    public final void rule__BasicComponent__Group_5__0__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6105:1: ( ( 'relationship' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6106:1: ( 'relationship' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6106:1: ( 'relationship' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6107:1: 'relationship'
-            {
-             before(grammarAccess.getBasicComponentAccess().getRelationshipKeyword_5_0()); 
-            match(input,36,FollowSets000.FOLLOW_36_in_rule__BasicComponent__Group_5__0__Impl12155); 
-             after(grammarAccess.getBasicComponentAccess().getRelationshipKeyword_5_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__BasicComponent__Group_5__0__Impl"
-
-
-    // $ANTLR start "rule__BasicComponent__Group_5__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6120:1: rule__BasicComponent__Group_5__1 : rule__BasicComponent__Group_5__1__Impl rule__BasicComponent__Group_5__2 ;
-    public final void rule__BasicComponent__Group_5__1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6124:1: ( rule__BasicComponent__Group_5__1__Impl rule__BasicComponent__Group_5__2 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6125:2: rule__BasicComponent__Group_5__1__Impl rule__BasicComponent__Group_5__2
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group_5__1__Impl_in_rule__BasicComponent__Group_5__112186);
-            rule__BasicComponent__Group_5__1__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group_5__2_in_rule__BasicComponent__Group_5__112189);
-            rule__BasicComponent__Group_5__2();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__BasicComponent__Group_5__1"
-
-
-    // $ANTLR start "rule__BasicComponent__Group_5__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6132:1: rule__BasicComponent__Group_5__1__Impl : ( '(' ) ;
-    public final void rule__BasicComponent__Group_5__1__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6136:1: ( ( '(' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6137:1: ( '(' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6137:1: ( '(' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6138:1: '('
-            {
-             before(grammarAccess.getBasicComponentAccess().getLeftParenthesisKeyword_5_1()); 
-            match(input,33,FollowSets000.FOLLOW_33_in_rule__BasicComponent__Group_5__1__Impl12217); 
-             after(grammarAccess.getBasicComponentAccess().getLeftParenthesisKeyword_5_1()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__BasicComponent__Group_5__1__Impl"
-
-
-    // $ANTLR start "rule__BasicComponent__Group_5__2"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6151:1: rule__BasicComponent__Group_5__2 : rule__BasicComponent__Group_5__2__Impl rule__BasicComponent__Group_5__3 ;
-    public final void rule__BasicComponent__Group_5__2() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6155:1: ( rule__BasicComponent__Group_5__2__Impl rule__BasicComponent__Group_5__3 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6156:2: rule__BasicComponent__Group_5__2__Impl rule__BasicComponent__Group_5__3
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group_5__2__Impl_in_rule__BasicComponent__Group_5__212248);
-            rule__BasicComponent__Group_5__2__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group_5__3_in_rule__BasicComponent__Group_5__212251);
-            rule__BasicComponent__Group_5__3();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__BasicComponent__Group_5__2"
-
-
-    // $ANTLR start "rule__BasicComponent__Group_5__2__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6163:1: rule__BasicComponent__Group_5__2__Impl : ( ( rule__BasicComponent__RelationshipAssignment_5_2 ) ) ;
-    public final void rule__BasicComponent__Group_5__2__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6167:1: ( ( ( rule__BasicComponent__RelationshipAssignment_5_2 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6168:1: ( ( rule__BasicComponent__RelationshipAssignment_5_2 ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6168:1: ( ( rule__BasicComponent__RelationshipAssignment_5_2 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6169:1: ( rule__BasicComponent__RelationshipAssignment_5_2 )
-            {
-             before(grammarAccess.getBasicComponentAccess().getRelationshipAssignment_5_2()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6170:1: ( rule__BasicComponent__RelationshipAssignment_5_2 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6170:2: rule__BasicComponent__RelationshipAssignment_5_2
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__RelationshipAssignment_5_2_in_rule__BasicComponent__Group_5__2__Impl12278);
-            rule__BasicComponent__RelationshipAssignment_5_2();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getBasicComponentAccess().getRelationshipAssignment_5_2()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__BasicComponent__Group_5__2__Impl"
-
-
-    // $ANTLR start "rule__BasicComponent__Group_5__3"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6180:1: rule__BasicComponent__Group_5__3 : rule__BasicComponent__Group_5__3__Impl rule__BasicComponent__Group_5__4 ;
-    public final void rule__BasicComponent__Group_5__3() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6184:1: ( rule__BasicComponent__Group_5__3__Impl rule__BasicComponent__Group_5__4 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6185:2: rule__BasicComponent__Group_5__3__Impl rule__BasicComponent__Group_5__4
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group_5__3__Impl_in_rule__BasicComponent__Group_5__312308);
-            rule__BasicComponent__Group_5__3__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group_5__4_in_rule__BasicComponent__Group_5__312311);
-            rule__BasicComponent__Group_5__4();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__BasicComponent__Group_5__3"
-
-
-    // $ANTLR start "rule__BasicComponent__Group_5__3__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6192:1: rule__BasicComponent__Group_5__3__Impl : ( ( rule__BasicComponent__Group_5_3__0 )* ) ;
-    public final void rule__BasicComponent__Group_5__3__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6196:1: ( ( ( rule__BasicComponent__Group_5_3__0 )* ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6197:1: ( ( rule__BasicComponent__Group_5_3__0 )* )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6197:1: ( ( rule__BasicComponent__Group_5_3__0 )* )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6198:1: ( rule__BasicComponent__Group_5_3__0 )*
-            {
-             before(grammarAccess.getBasicComponentAccess().getGroup_5_3()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6199:1: ( rule__BasicComponent__Group_5_3__0 )*
-            loop39:
-            do {
-                int alt39=2;
-                int LA39_0 = input.LA(1);
-
-                if ( (LA39_0==23) ) {
-                    alt39=1;
-                }
-
-
-                switch (alt39) {
-            	case 1 :
-            	    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6199:2: rule__BasicComponent__Group_5_3__0
-            	    {
-            	    pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group_5_3__0_in_rule__BasicComponent__Group_5__3__Impl12338);
-            	    rule__BasicComponent__Group_5_3__0();
-
-            	    state._fsp--;
-
-
-            	    }
-            	    break;
-
-            	default :
-            	    break loop39;
-                }
-            } while (true);
-
-             after(grammarAccess.getBasicComponentAccess().getGroup_5_3()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__BasicComponent__Group_5__3__Impl"
-
-
-    // $ANTLR start "rule__BasicComponent__Group_5__4"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6209:1: rule__BasicComponent__Group_5__4 : rule__BasicComponent__Group_5__4__Impl ;
-    public final void rule__BasicComponent__Group_5__4() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6213:1: ( rule__BasicComponent__Group_5__4__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6214:2: rule__BasicComponent__Group_5__4__Impl
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group_5__4__Impl_in_rule__BasicComponent__Group_5__412369);
-            rule__BasicComponent__Group_5__4__Impl();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__BasicComponent__Group_5__4"
-
-
-    // $ANTLR start "rule__BasicComponent__Group_5__4__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6220:1: rule__BasicComponent__Group_5__4__Impl : ( ')' ) ;
-    public final void rule__BasicComponent__Group_5__4__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6224:1: ( ( ')' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6225:1: ( ')' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6225:1: ( ')' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6226:1: ')'
-            {
-             before(grammarAccess.getBasicComponentAccess().getRightParenthesisKeyword_5_4()); 
-            match(input,34,FollowSets000.FOLLOW_34_in_rule__BasicComponent__Group_5__4__Impl12397); 
-             after(grammarAccess.getBasicComponentAccess().getRightParenthesisKeyword_5_4()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__BasicComponent__Group_5__4__Impl"
-
-
-    // $ANTLR start "rule__BasicComponent__Group_5_3__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6249:1: rule__BasicComponent__Group_5_3__0 : rule__BasicComponent__Group_5_3__0__Impl rule__BasicComponent__Group_5_3__1 ;
-    public final void rule__BasicComponent__Group_5_3__0() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6253:1: ( rule__BasicComponent__Group_5_3__0__Impl rule__BasicComponent__Group_5_3__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6254:2: rule__BasicComponent__Group_5_3__0__Impl rule__BasicComponent__Group_5_3__1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group_5_3__0__Impl_in_rule__BasicComponent__Group_5_3__012438);
-            rule__BasicComponent__Group_5_3__0__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group_5_3__1_in_rule__BasicComponent__Group_5_3__012441);
-            rule__BasicComponent__Group_5_3__1();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__BasicComponent__Group_5_3__0"
-
-
-    // $ANTLR start "rule__BasicComponent__Group_5_3__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6261:1: rule__BasicComponent__Group_5_3__0__Impl : ( ',' ) ;
-    public final void rule__BasicComponent__Group_5_3__0__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6265:1: ( ( ',' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6266:1: ( ',' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6266:1: ( ',' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6267:1: ','
-            {
-             before(grammarAccess.getBasicComponentAccess().getCommaKeyword_5_3_0()); 
-            match(input,23,FollowSets000.FOLLOW_23_in_rule__BasicComponent__Group_5_3__0__Impl12469); 
-             after(grammarAccess.getBasicComponentAccess().getCommaKeyword_5_3_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__BasicComponent__Group_5_3__0__Impl"
-
-
-    // $ANTLR start "rule__BasicComponent__Group_5_3__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6280:1: rule__BasicComponent__Group_5_3__1 : rule__BasicComponent__Group_5_3__1__Impl ;
-    public final void rule__BasicComponent__Group_5_3__1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6284:1: ( rule__BasicComponent__Group_5_3__1__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6285:2: rule__BasicComponent__Group_5_3__1__Impl
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group_5_3__1__Impl_in_rule__BasicComponent__Group_5_3__112500);
-            rule__BasicComponent__Group_5_3__1__Impl();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__BasicComponent__Group_5_3__1"
-
-
-    // $ANTLR start "rule__BasicComponent__Group_5_3__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6291:1: rule__BasicComponent__Group_5_3__1__Impl : ( ( rule__BasicComponent__RelationshipAssignment_5_3_1 ) ) ;
-    public final void rule__BasicComponent__Group_5_3__1__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6295:1: ( ( ( rule__BasicComponent__RelationshipAssignment_5_3_1 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6296:1: ( ( rule__BasicComponent__RelationshipAssignment_5_3_1 ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6296:1: ( ( rule__BasicComponent__RelationshipAssignment_5_3_1 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6297:1: ( rule__BasicComponent__RelationshipAssignment_5_3_1 )
-            {
-             before(grammarAccess.getBasicComponentAccess().getRelationshipAssignment_5_3_1()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6298:1: ( rule__BasicComponent__RelationshipAssignment_5_3_1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6298:2: rule__BasicComponent__RelationshipAssignment_5_3_1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__RelationshipAssignment_5_3_1_in_rule__BasicComponent__Group_5_3__1__Impl12527);
-            rule__BasicComponent__RelationshipAssignment_5_3_1();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getBasicComponentAccess().getRelationshipAssignment_5_3_1()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__BasicComponent__Group_5_3__1__Impl"
-
-
-    // $ANTLR start "rule__CompositeComponent__Group__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6312:1: rule__CompositeComponent__Group__0 : rule__CompositeComponent__Group__0__Impl rule__CompositeComponent__Group__1 ;
-    public final void rule__CompositeComponent__Group__0() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6316:1: ( rule__CompositeComponent__Group__0__Impl rule__CompositeComponent__Group__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6317:2: rule__CompositeComponent__Group__0__Impl rule__CompositeComponent__Group__1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group__0__Impl_in_rule__CompositeComponent__Group__012561);
-            rule__CompositeComponent__Group__0__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group__1_in_rule__CompositeComponent__Group__012564);
-            rule__CompositeComponent__Group__1();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CompositeComponent__Group__0"
-
-
-    // $ANTLR start "rule__CompositeComponent__Group__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6324:1: rule__CompositeComponent__Group__0__Impl : ( 'CompositeComponent' ) ;
-    public final void rule__CompositeComponent__Group__0__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6328:1: ( ( 'CompositeComponent' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6329:1: ( 'CompositeComponent' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6329:1: ( 'CompositeComponent' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6330:1: 'CompositeComponent'
-            {
-             before(grammarAccess.getCompositeComponentAccess().getCompositeComponentKeyword_0()); 
-            match(input,52,FollowSets000.FOLLOW_52_in_rule__CompositeComponent__Group__0__Impl12592); 
-             after(grammarAccess.getCompositeComponentAccess().getCompositeComponentKeyword_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CompositeComponent__Group__0__Impl"
-
-
-    // $ANTLR start "rule__CompositeComponent__Group__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6343:1: rule__CompositeComponent__Group__1 : rule__CompositeComponent__Group__1__Impl rule__CompositeComponent__Group__2 ;
-    public final void rule__CompositeComponent__Group__1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6347:1: ( rule__CompositeComponent__Group__1__Impl rule__CompositeComponent__Group__2 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6348:2: rule__CompositeComponent__Group__1__Impl rule__CompositeComponent__Group__2
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group__1__Impl_in_rule__CompositeComponent__Group__112623);
-            rule__CompositeComponent__Group__1__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group__2_in_rule__CompositeComponent__Group__112626);
-            rule__CompositeComponent__Group__2();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CompositeComponent__Group__1"
-
-
-    // $ANTLR start "rule__CompositeComponent__Group__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6355:1: rule__CompositeComponent__Group__1__Impl : ( ( rule__CompositeComponent__NameAssignment_1 ) ) ;
-    public final void rule__CompositeComponent__Group__1__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6359:1: ( ( ( rule__CompositeComponent__NameAssignment_1 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6360:1: ( ( rule__CompositeComponent__NameAssignment_1 ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6360:1: ( ( rule__CompositeComponent__NameAssignment_1 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6361:1: ( rule__CompositeComponent__NameAssignment_1 )
-            {
-             before(grammarAccess.getCompositeComponentAccess().getNameAssignment_1()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6362:1: ( rule__CompositeComponent__NameAssignment_1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6362:2: rule__CompositeComponent__NameAssignment_1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__NameAssignment_1_in_rule__CompositeComponent__Group__1__Impl12653);
-            rule__CompositeComponent__NameAssignment_1();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getCompositeComponentAccess().getNameAssignment_1()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CompositeComponent__Group__1__Impl"
-
-
-    // $ANTLR start "rule__CompositeComponent__Group__2"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6372:1: rule__CompositeComponent__Group__2 : rule__CompositeComponent__Group__2__Impl rule__CompositeComponent__Group__3 ;
-    public final void rule__CompositeComponent__Group__2() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6376:1: ( rule__CompositeComponent__Group__2__Impl rule__CompositeComponent__Group__3 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6377:2: rule__CompositeComponent__Group__2__Impl rule__CompositeComponent__Group__3
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group__2__Impl_in_rule__CompositeComponent__Group__212683);
-            rule__CompositeComponent__Group__2__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group__3_in_rule__CompositeComponent__Group__212686);
-            rule__CompositeComponent__Group__3();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CompositeComponent__Group__2"
-
-
-    // $ANTLR start "rule__CompositeComponent__Group__2__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6384:1: rule__CompositeComponent__Group__2__Impl : ( ( rule__CompositeComponent__Group_2__0 )? ) ;
-    public final void rule__CompositeComponent__Group__2__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6388:1: ( ( ( rule__CompositeComponent__Group_2__0 )? ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6389:1: ( ( rule__CompositeComponent__Group_2__0 )? )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6389:1: ( ( rule__CompositeComponent__Group_2__0 )? )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6390:1: ( rule__CompositeComponent__Group_2__0 )?
-            {
-             before(grammarAccess.getCompositeComponentAccess().getGroup_2()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6391:1: ( rule__CompositeComponent__Group_2__0 )?
-            int alt40=2;
-            int LA40_0 = input.LA(1);
-
-            if ( (LA40_0==49) ) {
-                alt40=1;
-            }
-            switch (alt40) {
-                case 1 :
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6391:2: rule__CompositeComponent__Group_2__0
-                    {
-                    pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group_2__0_in_rule__CompositeComponent__Group__2__Impl12713);
-                    rule__CompositeComponent__Group_2__0();
-
-                    state._fsp--;
-
-
-                    }
-                    break;
-
-            }
-
-             after(grammarAccess.getCompositeComponentAccess().getGroup_2()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CompositeComponent__Group__2__Impl"
-
-
-    // $ANTLR start "rule__CompositeComponent__Group__3"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6401:1: rule__CompositeComponent__Group__3 : rule__CompositeComponent__Group__3__Impl rule__CompositeComponent__Group__4 ;
-    public final void rule__CompositeComponent__Group__3() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6405:1: ( rule__CompositeComponent__Group__3__Impl rule__CompositeComponent__Group__4 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6406:2: rule__CompositeComponent__Group__3__Impl rule__CompositeComponent__Group__4
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group__3__Impl_in_rule__CompositeComponent__Group__312744);
-            rule__CompositeComponent__Group__3__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group__4_in_rule__CompositeComponent__Group__312747);
-            rule__CompositeComponent__Group__4();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CompositeComponent__Group__3"
-
-
-    // $ANTLR start "rule__CompositeComponent__Group__3__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6413:1: rule__CompositeComponent__Group__3__Impl : ( ( rule__CompositeComponent__Group_3__0 )? ) ;
-    public final void rule__CompositeComponent__Group__3__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6417:1: ( ( ( rule__CompositeComponent__Group_3__0 )? ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6418:1: ( ( rule__CompositeComponent__Group_3__0 )? )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6418:1: ( ( rule__CompositeComponent__Group_3__0 )? )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6419:1: ( rule__CompositeComponent__Group_3__0 )?
-            {
-             before(grammarAccess.getCompositeComponentAccess().getGroup_3()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6420:1: ( rule__CompositeComponent__Group_3__0 )?
-            int alt41=2;
-            int LA41_0 = input.LA(1);
-
-            if ( (LA41_0==50) ) {
-                alt41=1;
-            }
-            switch (alt41) {
-                case 1 :
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6420:2: rule__CompositeComponent__Group_3__0
-                    {
-                    pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group_3__0_in_rule__CompositeComponent__Group__3__Impl12774);
-                    rule__CompositeComponent__Group_3__0();
-
-                    state._fsp--;
-
-
-                    }
-                    break;
-
-            }
-
-             after(grammarAccess.getCompositeComponentAccess().getGroup_3()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CompositeComponent__Group__3__Impl"
-
-
-    // $ANTLR start "rule__CompositeComponent__Group__4"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6430:1: rule__CompositeComponent__Group__4 : rule__CompositeComponent__Group__4__Impl rule__CompositeComponent__Group__5 ;
-    public final void rule__CompositeComponent__Group__4() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6434:1: ( rule__CompositeComponent__Group__4__Impl rule__CompositeComponent__Group__5 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6435:2: rule__CompositeComponent__Group__4__Impl rule__CompositeComponent__Group__5
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group__4__Impl_in_rule__CompositeComponent__Group__412805);
-            rule__CompositeComponent__Group__4__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group__5_in_rule__CompositeComponent__Group__412808);
-            rule__CompositeComponent__Group__5();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CompositeComponent__Group__4"
-
-
-    // $ANTLR start "rule__CompositeComponent__Group__4__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6442:1: rule__CompositeComponent__Group__4__Impl : ( '{' ) ;
-    public final void rule__CompositeComponent__Group__4__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6446:1: ( ( '{' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6447:1: ( '{' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6447:1: ( '{' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6448:1: '{'
-            {
-             before(grammarAccess.getCompositeComponentAccess().getLeftCurlyBracketKeyword_4()); 
-            match(input,20,FollowSets000.FOLLOW_20_in_rule__CompositeComponent__Group__4__Impl12836); 
-             after(grammarAccess.getCompositeComponentAccess().getLeftCurlyBracketKeyword_4()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CompositeComponent__Group__4__Impl"
-
-
-    // $ANTLR start "rule__CompositeComponent__Group__5"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6461:1: rule__CompositeComponent__Group__5 : rule__CompositeComponent__Group__5__Impl rule__CompositeComponent__Group__6 ;
-    public final void rule__CompositeComponent__Group__5() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6465:1: ( rule__CompositeComponent__Group__5__Impl rule__CompositeComponent__Group__6 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6466:2: rule__CompositeComponent__Group__5__Impl rule__CompositeComponent__Group__6
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group__5__Impl_in_rule__CompositeComponent__Group__512867);
-            rule__CompositeComponent__Group__5__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group__6_in_rule__CompositeComponent__Group__512870);
-            rule__CompositeComponent__Group__6();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CompositeComponent__Group__5"
-
-
-    // $ANTLR start "rule__CompositeComponent__Group__5__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6473:1: rule__CompositeComponent__Group__5__Impl : ( ( rule__CompositeComponent__Group_5__0 )? ) ;
-    public final void rule__CompositeComponent__Group__5__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6477:1: ( ( ( rule__CompositeComponent__Group_5__0 )? ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6478:1: ( ( rule__CompositeComponent__Group_5__0 )? )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6478:1: ( ( rule__CompositeComponent__Group_5__0 )? )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6479:1: ( rule__CompositeComponent__Group_5__0 )?
-            {
-             before(grammarAccess.getCompositeComponentAccess().getGroup_5()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6480:1: ( rule__CompositeComponent__Group_5__0 )?
-            int alt42=2;
-            int LA42_0 = input.LA(1);
-
-            if ( (LA42_0==36) ) {
-                alt42=1;
-            }
-            switch (alt42) {
-                case 1 :
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6480:2: rule__CompositeComponent__Group_5__0
-                    {
-                    pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group_5__0_in_rule__CompositeComponent__Group__5__Impl12897);
-                    rule__CompositeComponent__Group_5__0();
-
-                    state._fsp--;
-
-
-                    }
-                    break;
-
-            }
-
-             after(grammarAccess.getCompositeComponentAccess().getGroup_5()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CompositeComponent__Group__5__Impl"
-
-
-    // $ANTLR start "rule__CompositeComponent__Group__6"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6490:1: rule__CompositeComponent__Group__6 : rule__CompositeComponent__Group__6__Impl rule__CompositeComponent__Group__7 ;
-    public final void rule__CompositeComponent__Group__6() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6494:1: ( rule__CompositeComponent__Group__6__Impl rule__CompositeComponent__Group__7 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6495:2: rule__CompositeComponent__Group__6__Impl rule__CompositeComponent__Group__7
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group__6__Impl_in_rule__CompositeComponent__Group__612928);
-            rule__CompositeComponent__Group__6__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group__7_in_rule__CompositeComponent__Group__612931);
-            rule__CompositeComponent__Group__7();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CompositeComponent__Group__6"
-
-
-    // $ANTLR start "rule__CompositeComponent__Group__6__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6502:1: rule__CompositeComponent__Group__6__Impl : ( ( rule__CompositeComponent__Group_6__0 )? ) ;
-    public final void rule__CompositeComponent__Group__6__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6506:1: ( ( ( rule__CompositeComponent__Group_6__0 )? ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6507:1: ( ( rule__CompositeComponent__Group_6__0 )? )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6507:1: ( ( rule__CompositeComponent__Group_6__0 )? )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6508:1: ( rule__CompositeComponent__Group_6__0 )?
-            {
-             before(grammarAccess.getCompositeComponentAccess().getGroup_6()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6509:1: ( rule__CompositeComponent__Group_6__0 )?
-            int alt43=2;
-            int LA43_0 = input.LA(1);
-
-            if ( (LA43_0==53) ) {
-                alt43=1;
-            }
-            switch (alt43) {
-                case 1 :
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6509:2: rule__CompositeComponent__Group_6__0
-                    {
-                    pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group_6__0_in_rule__CompositeComponent__Group__6__Impl12958);
-                    rule__CompositeComponent__Group_6__0();
-
-                    state._fsp--;
-
-
-                    }
-                    break;
-
-            }
-
-             after(grammarAccess.getCompositeComponentAccess().getGroup_6()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CompositeComponent__Group__6__Impl"
-
-
-    // $ANTLR start "rule__CompositeComponent__Group__7"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6519:1: rule__CompositeComponent__Group__7 : rule__CompositeComponent__Group__7__Impl ;
-    public final void rule__CompositeComponent__Group__7() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6523:1: ( rule__CompositeComponent__Group__7__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6524:2: rule__CompositeComponent__Group__7__Impl
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group__7__Impl_in_rule__CompositeComponent__Group__712989);
-            rule__CompositeComponent__Group__7__Impl();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CompositeComponent__Group__7"
-
-
-    // $ANTLR start "rule__CompositeComponent__Group__7__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6530:1: rule__CompositeComponent__Group__7__Impl : ( '}' ) ;
-    public final void rule__CompositeComponent__Group__7__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6534:1: ( ( '}' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6535:1: ( '}' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6535:1: ( '}' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6536:1: '}'
-            {
-             before(grammarAccess.getCompositeComponentAccess().getRightCurlyBracketKeyword_7()); 
-            match(input,21,FollowSets000.FOLLOW_21_in_rule__CompositeComponent__Group__7__Impl13017); 
-             after(grammarAccess.getCompositeComponentAccess().getRightCurlyBracketKeyword_7()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CompositeComponent__Group__7__Impl"
-
-
-    // $ANTLR start "rule__CompositeComponent__Group_2__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6565:1: rule__CompositeComponent__Group_2__0 : rule__CompositeComponent__Group_2__0__Impl rule__CompositeComponent__Group_2__1 ;
-    public final void rule__CompositeComponent__Group_2__0() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6569:1: ( rule__CompositeComponent__Group_2__0__Impl rule__CompositeComponent__Group_2__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6570:2: rule__CompositeComponent__Group_2__0__Impl rule__CompositeComponent__Group_2__1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group_2__0__Impl_in_rule__CompositeComponent__Group_2__013064);
-            rule__CompositeComponent__Group_2__0__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group_2__1_in_rule__CompositeComponent__Group_2__013067);
-            rule__CompositeComponent__Group_2__1();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CompositeComponent__Group_2__0"
-
-
-    // $ANTLR start "rule__CompositeComponent__Group_2__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6577:1: rule__CompositeComponent__Group_2__0__Impl : ( ( rule__CompositeComponent__ProvidedRolesAssignment_2_0 ) ) ;
-    public final void rule__CompositeComponent__Group_2__0__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6581:1: ( ( ( rule__CompositeComponent__ProvidedRolesAssignment_2_0 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6582:1: ( ( rule__CompositeComponent__ProvidedRolesAssignment_2_0 ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6582:1: ( ( rule__CompositeComponent__ProvidedRolesAssignment_2_0 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6583:1: ( rule__CompositeComponent__ProvidedRolesAssignment_2_0 )
-            {
-             before(grammarAccess.getCompositeComponentAccess().getProvidedRolesAssignment_2_0()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6584:1: ( rule__CompositeComponent__ProvidedRolesAssignment_2_0 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6584:2: rule__CompositeComponent__ProvidedRolesAssignment_2_0
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__ProvidedRolesAssignment_2_0_in_rule__CompositeComponent__Group_2__0__Impl13094);
-            rule__CompositeComponent__ProvidedRolesAssignment_2_0();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getCompositeComponentAccess().getProvidedRolesAssignment_2_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CompositeComponent__Group_2__0__Impl"
-
-
-    // $ANTLR start "rule__CompositeComponent__Group_2__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6594:1: rule__CompositeComponent__Group_2__1 : rule__CompositeComponent__Group_2__1__Impl ;
-    public final void rule__CompositeComponent__Group_2__1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6598:1: ( rule__CompositeComponent__Group_2__1__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6599:2: rule__CompositeComponent__Group_2__1__Impl
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group_2__1__Impl_in_rule__CompositeComponent__Group_2__113124);
-            rule__CompositeComponent__Group_2__1__Impl();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CompositeComponent__Group_2__1"
-
-
-    // $ANTLR start "rule__CompositeComponent__Group_2__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6605:1: rule__CompositeComponent__Group_2__1__Impl : ( ( rule__CompositeComponent__Group_2_1__0 )* ) ;
-    public final void rule__CompositeComponent__Group_2__1__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6609:1: ( ( ( rule__CompositeComponent__Group_2_1__0 )* ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6610:1: ( ( rule__CompositeComponent__Group_2_1__0 )* )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6610:1: ( ( rule__CompositeComponent__Group_2_1__0 )* )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6611:1: ( rule__CompositeComponent__Group_2_1__0 )*
-            {
-             before(grammarAccess.getCompositeComponentAccess().getGroup_2_1()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6612:1: ( rule__CompositeComponent__Group_2_1__0 )*
-            loop44:
-            do {
-                int alt44=2;
-                int LA44_0 = input.LA(1);
-
-                if ( (LA44_0==23) ) {
-                    alt44=1;
-                }
-
-
-                switch (alt44) {
-            	case 1 :
-            	    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6612:2: rule__CompositeComponent__Group_2_1__0
-            	    {
-            	    pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group_2_1__0_in_rule__CompositeComponent__Group_2__1__Impl13151);
-            	    rule__CompositeComponent__Group_2_1__0();
-
-            	    state._fsp--;
-
-
-            	    }
-            	    break;
-
-            	default :
-            	    break loop44;
-                }
-            } while (true);
-
-             after(grammarAccess.getCompositeComponentAccess().getGroup_2_1()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CompositeComponent__Group_2__1__Impl"
-
-
-    // $ANTLR start "rule__CompositeComponent__Group_2_1__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6626:1: rule__CompositeComponent__Group_2_1__0 : rule__CompositeComponent__Group_2_1__0__Impl rule__CompositeComponent__Group_2_1__1 ;
-    public final void rule__CompositeComponent__Group_2_1__0() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6630:1: ( rule__CompositeComponent__Group_2_1__0__Impl rule__CompositeComponent__Group_2_1__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6631:2: rule__CompositeComponent__Group_2_1__0__Impl rule__CompositeComponent__Group_2_1__1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group_2_1__0__Impl_in_rule__CompositeComponent__Group_2_1__013186);
-            rule__CompositeComponent__Group_2_1__0__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group_2_1__1_in_rule__CompositeComponent__Group_2_1__013189);
-            rule__CompositeComponent__Group_2_1__1();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CompositeComponent__Group_2_1__0"
-
-
-    // $ANTLR start "rule__CompositeComponent__Group_2_1__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6638:1: rule__CompositeComponent__Group_2_1__0__Impl : ( ',' ) ;
-    public final void rule__CompositeComponent__Group_2_1__0__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6642:1: ( ( ',' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6643:1: ( ',' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6643:1: ( ',' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6644:1: ','
-            {
-             before(grammarAccess.getCompositeComponentAccess().getCommaKeyword_2_1_0()); 
-            match(input,23,FollowSets000.FOLLOW_23_in_rule__CompositeComponent__Group_2_1__0__Impl13217); 
-             after(grammarAccess.getCompositeComponentAccess().getCommaKeyword_2_1_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CompositeComponent__Group_2_1__0__Impl"
-
-
-    // $ANTLR start "rule__CompositeComponent__Group_2_1__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6657:1: rule__CompositeComponent__Group_2_1__1 : rule__CompositeComponent__Group_2_1__1__Impl ;
-    public final void rule__CompositeComponent__Group_2_1__1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6661:1: ( rule__CompositeComponent__Group_2_1__1__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6662:2: rule__CompositeComponent__Group_2_1__1__Impl
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group_2_1__1__Impl_in_rule__CompositeComponent__Group_2_1__113248);
-            rule__CompositeComponent__Group_2_1__1__Impl();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CompositeComponent__Group_2_1__1"
-
-
-    // $ANTLR start "rule__CompositeComponent__Group_2_1__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6668:1: rule__CompositeComponent__Group_2_1__1__Impl : ( ( rule__CompositeComponent__ProvidedRolesAssignment_2_1_1 ) ) ;
-    public final void rule__CompositeComponent__Group_2_1__1__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6672:1: ( ( ( rule__CompositeComponent__ProvidedRolesAssignment_2_1_1 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6673:1: ( ( rule__CompositeComponent__ProvidedRolesAssignment_2_1_1 ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6673:1: ( ( rule__CompositeComponent__ProvidedRolesAssignment_2_1_1 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6674:1: ( rule__CompositeComponent__ProvidedRolesAssignment_2_1_1 )
-            {
-             before(grammarAccess.getCompositeComponentAccess().getProvidedRolesAssignment_2_1_1()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6675:1: ( rule__CompositeComponent__ProvidedRolesAssignment_2_1_1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6675:2: rule__CompositeComponent__ProvidedRolesAssignment_2_1_1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__ProvidedRolesAssignment_2_1_1_in_rule__CompositeComponent__Group_2_1__1__Impl13275);
-            rule__CompositeComponent__ProvidedRolesAssignment_2_1_1();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getCompositeComponentAccess().getProvidedRolesAssignment_2_1_1()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CompositeComponent__Group_2_1__1__Impl"
-
-
-    // $ANTLR start "rule__CompositeComponent__Group_3__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6689:1: rule__CompositeComponent__Group_3__0 : rule__CompositeComponent__Group_3__0__Impl rule__CompositeComponent__Group_3__1 ;
-    public final void rule__CompositeComponent__Group_3__0() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6693:1: ( rule__CompositeComponent__Group_3__0__Impl rule__CompositeComponent__Group_3__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6694:2: rule__CompositeComponent__Group_3__0__Impl rule__CompositeComponent__Group_3__1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group_3__0__Impl_in_rule__CompositeComponent__Group_3__013309);
-            rule__CompositeComponent__Group_3__0__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group_3__1_in_rule__CompositeComponent__Group_3__013312);
-            rule__CompositeComponent__Group_3__1();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CompositeComponent__Group_3__0"
-
-
-    // $ANTLR start "rule__CompositeComponent__Group_3__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6701:1: rule__CompositeComponent__Group_3__0__Impl : ( ( rule__CompositeComponent__RequiredRolesAssignment_3_0 ) ) ;
-    public final void rule__CompositeComponent__Group_3__0__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6705:1: ( ( ( rule__CompositeComponent__RequiredRolesAssignment_3_0 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6706:1: ( ( rule__CompositeComponent__RequiredRolesAssignment_3_0 ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6706:1: ( ( rule__CompositeComponent__RequiredRolesAssignment_3_0 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6707:1: ( rule__CompositeComponent__RequiredRolesAssignment_3_0 )
-            {
-             before(grammarAccess.getCompositeComponentAccess().getRequiredRolesAssignment_3_0()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6708:1: ( rule__CompositeComponent__RequiredRolesAssignment_3_0 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6708:2: rule__CompositeComponent__RequiredRolesAssignment_3_0
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__RequiredRolesAssignment_3_0_in_rule__CompositeComponent__Group_3__0__Impl13339);
-            rule__CompositeComponent__RequiredRolesAssignment_3_0();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getCompositeComponentAccess().getRequiredRolesAssignment_3_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CompositeComponent__Group_3__0__Impl"
-
-
-    // $ANTLR start "rule__CompositeComponent__Group_3__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6718:1: rule__CompositeComponent__Group_3__1 : rule__CompositeComponent__Group_3__1__Impl ;
-    public final void rule__CompositeComponent__Group_3__1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6722:1: ( rule__CompositeComponent__Group_3__1__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6723:2: rule__CompositeComponent__Group_3__1__Impl
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group_3__1__Impl_in_rule__CompositeComponent__Group_3__113369);
-            rule__CompositeComponent__Group_3__1__Impl();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CompositeComponent__Group_3__1"
-
-
-    // $ANTLR start "rule__CompositeComponent__Group_3__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6729:1: rule__CompositeComponent__Group_3__1__Impl : ( ( rule__CompositeComponent__Group_3_1__0 )* ) ;
-    public final void rule__CompositeComponent__Group_3__1__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6733:1: ( ( ( rule__CompositeComponent__Group_3_1__0 )* ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6734:1: ( ( rule__CompositeComponent__Group_3_1__0 )* )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6734:1: ( ( rule__CompositeComponent__Group_3_1__0 )* )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6735:1: ( rule__CompositeComponent__Group_3_1__0 )*
-            {
-             before(grammarAccess.getCompositeComponentAccess().getGroup_3_1()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6736:1: ( rule__CompositeComponent__Group_3_1__0 )*
-            loop45:
-            do {
-                int alt45=2;
-                int LA45_0 = input.LA(1);
-
-                if ( (LA45_0==23) ) {
-                    alt45=1;
-                }
-
-
-                switch (alt45) {
-            	case 1 :
-            	    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6736:2: rule__CompositeComponent__Group_3_1__0
-            	    {
-            	    pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group_3_1__0_in_rule__CompositeComponent__Group_3__1__Impl13396);
-            	    rule__CompositeComponent__Group_3_1__0();
-
-            	    state._fsp--;
-
-
-            	    }
-            	    break;
-
-            	default :
-            	    break loop45;
-                }
-            } while (true);
-
-             after(grammarAccess.getCompositeComponentAccess().getGroup_3_1()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CompositeComponent__Group_3__1__Impl"
-
-
-    // $ANTLR start "rule__CompositeComponent__Group_3_1__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6750:1: rule__CompositeComponent__Group_3_1__0 : rule__CompositeComponent__Group_3_1__0__Impl rule__CompositeComponent__Group_3_1__1 ;
-    public final void rule__CompositeComponent__Group_3_1__0() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6754:1: ( rule__CompositeComponent__Group_3_1__0__Impl rule__CompositeComponent__Group_3_1__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6755:2: rule__CompositeComponent__Group_3_1__0__Impl rule__CompositeComponent__Group_3_1__1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group_3_1__0__Impl_in_rule__CompositeComponent__Group_3_1__013431);
-            rule__CompositeComponent__Group_3_1__0__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group_3_1__1_in_rule__CompositeComponent__Group_3_1__013434);
-            rule__CompositeComponent__Group_3_1__1();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CompositeComponent__Group_3_1__0"
-
-
-    // $ANTLR start "rule__CompositeComponent__Group_3_1__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6762:1: rule__CompositeComponent__Group_3_1__0__Impl : ( ',' ) ;
-    public final void rule__CompositeComponent__Group_3_1__0__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6766:1: ( ( ',' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6767:1: ( ',' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6767:1: ( ',' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6768:1: ','
-            {
-             before(grammarAccess.getCompositeComponentAccess().getCommaKeyword_3_1_0()); 
-            match(input,23,FollowSets000.FOLLOW_23_in_rule__CompositeComponent__Group_3_1__0__Impl13462); 
-             after(grammarAccess.getCompositeComponentAccess().getCommaKeyword_3_1_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CompositeComponent__Group_3_1__0__Impl"
-
-
-    // $ANTLR start "rule__CompositeComponent__Group_3_1__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6781:1: rule__CompositeComponent__Group_3_1__1 : rule__CompositeComponent__Group_3_1__1__Impl ;
-    public final void rule__CompositeComponent__Group_3_1__1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6785:1: ( rule__CompositeComponent__Group_3_1__1__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6786:2: rule__CompositeComponent__Group_3_1__1__Impl
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group_3_1__1__Impl_in_rule__CompositeComponent__Group_3_1__113493);
-            rule__CompositeComponent__Group_3_1__1__Impl();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CompositeComponent__Group_3_1__1"
-
-
-    // $ANTLR start "rule__CompositeComponent__Group_3_1__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6792:1: rule__CompositeComponent__Group_3_1__1__Impl : ( ( rule__CompositeComponent__RequiredRolesAssignment_3_1_1 ) ) ;
-    public final void rule__CompositeComponent__Group_3_1__1__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6796:1: ( ( ( rule__CompositeComponent__RequiredRolesAssignment_3_1_1 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6797:1: ( ( rule__CompositeComponent__RequiredRolesAssignment_3_1_1 ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6797:1: ( ( rule__CompositeComponent__RequiredRolesAssignment_3_1_1 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6798:1: ( rule__CompositeComponent__RequiredRolesAssignment_3_1_1 )
-            {
-             before(grammarAccess.getCompositeComponentAccess().getRequiredRolesAssignment_3_1_1()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6799:1: ( rule__CompositeComponent__RequiredRolesAssignment_3_1_1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6799:2: rule__CompositeComponent__RequiredRolesAssignment_3_1_1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__RequiredRolesAssignment_3_1_1_in_rule__CompositeComponent__Group_3_1__1__Impl13520);
-            rule__CompositeComponent__RequiredRolesAssignment_3_1_1();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getCompositeComponentAccess().getRequiredRolesAssignment_3_1_1()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CompositeComponent__Group_3_1__1__Impl"
-
-
-    // $ANTLR start "rule__CompositeComponent__Group_5__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6813:1: rule__CompositeComponent__Group_5__0 : rule__CompositeComponent__Group_5__0__Impl rule__CompositeComponent__Group_5__1 ;
-    public final void rule__CompositeComponent__Group_5__0() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6817:1: ( rule__CompositeComponent__Group_5__0__Impl rule__CompositeComponent__Group_5__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6818:2: rule__CompositeComponent__Group_5__0__Impl rule__CompositeComponent__Group_5__1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group_5__0__Impl_in_rule__CompositeComponent__Group_5__013554);
-            rule__CompositeComponent__Group_5__0__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group_5__1_in_rule__CompositeComponent__Group_5__013557);
-            rule__CompositeComponent__Group_5__1();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CompositeComponent__Group_5__0"
-
-
-    // $ANTLR start "rule__CompositeComponent__Group_5__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6825:1: rule__CompositeComponent__Group_5__0__Impl : ( 'relationship' ) ;
-    public final void rule__CompositeComponent__Group_5__0__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6829:1: ( ( 'relationship' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6830:1: ( 'relationship' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6830:1: ( 'relationship' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6831:1: 'relationship'
-            {
-             before(grammarAccess.getCompositeComponentAccess().getRelationshipKeyword_5_0()); 
-            match(input,36,FollowSets000.FOLLOW_36_in_rule__CompositeComponent__Group_5__0__Impl13585); 
-             after(grammarAccess.getCompositeComponentAccess().getRelationshipKeyword_5_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CompositeComponent__Group_5__0__Impl"
-
-
-    // $ANTLR start "rule__CompositeComponent__Group_5__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6844:1: rule__CompositeComponent__Group_5__1 : rule__CompositeComponent__Group_5__1__Impl rule__CompositeComponent__Group_5__2 ;
-    public final void rule__CompositeComponent__Group_5__1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6848:1: ( rule__CompositeComponent__Group_5__1__Impl rule__CompositeComponent__Group_5__2 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6849:2: rule__CompositeComponent__Group_5__1__Impl rule__CompositeComponent__Group_5__2
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group_5__1__Impl_in_rule__CompositeComponent__Group_5__113616);
-            rule__CompositeComponent__Group_5__1__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group_5__2_in_rule__CompositeComponent__Group_5__113619);
-            rule__CompositeComponent__Group_5__2();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CompositeComponent__Group_5__1"
-
-
-    // $ANTLR start "rule__CompositeComponent__Group_5__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6856:1: rule__CompositeComponent__Group_5__1__Impl : ( '(' ) ;
-    public final void rule__CompositeComponent__Group_5__1__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6860:1: ( ( '(' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6861:1: ( '(' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6861:1: ( '(' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6862:1: '('
-            {
-             before(grammarAccess.getCompositeComponentAccess().getLeftParenthesisKeyword_5_1()); 
-            match(input,33,FollowSets000.FOLLOW_33_in_rule__CompositeComponent__Group_5__1__Impl13647); 
-             after(grammarAccess.getCompositeComponentAccess().getLeftParenthesisKeyword_5_1()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CompositeComponent__Group_5__1__Impl"
-
-
-    // $ANTLR start "rule__CompositeComponent__Group_5__2"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6875:1: rule__CompositeComponent__Group_5__2 : rule__CompositeComponent__Group_5__2__Impl rule__CompositeComponent__Group_5__3 ;
-    public final void rule__CompositeComponent__Group_5__2() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6879:1: ( rule__CompositeComponent__Group_5__2__Impl rule__CompositeComponent__Group_5__3 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6880:2: rule__CompositeComponent__Group_5__2__Impl rule__CompositeComponent__Group_5__3
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group_5__2__Impl_in_rule__CompositeComponent__Group_5__213678);
-            rule__CompositeComponent__Group_5__2__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group_5__3_in_rule__CompositeComponent__Group_5__213681);
-            rule__CompositeComponent__Group_5__3();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CompositeComponent__Group_5__2"
-
-
-    // $ANTLR start "rule__CompositeComponent__Group_5__2__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6887:1: rule__CompositeComponent__Group_5__2__Impl : ( ( rule__CompositeComponent__RelationshipAssignment_5_2 ) ) ;
-    public final void rule__CompositeComponent__Group_5__2__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6891:1: ( ( ( rule__CompositeComponent__RelationshipAssignment_5_2 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6892:1: ( ( rule__CompositeComponent__RelationshipAssignment_5_2 ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6892:1: ( ( rule__CompositeComponent__RelationshipAssignment_5_2 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6893:1: ( rule__CompositeComponent__RelationshipAssignment_5_2 )
-            {
-             before(grammarAccess.getCompositeComponentAccess().getRelationshipAssignment_5_2()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6894:1: ( rule__CompositeComponent__RelationshipAssignment_5_2 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6894:2: rule__CompositeComponent__RelationshipAssignment_5_2
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__RelationshipAssignment_5_2_in_rule__CompositeComponent__Group_5__2__Impl13708);
-            rule__CompositeComponent__RelationshipAssignment_5_2();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getCompositeComponentAccess().getRelationshipAssignment_5_2()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CompositeComponent__Group_5__2__Impl"
-
-
-    // $ANTLR start "rule__CompositeComponent__Group_5__3"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6904:1: rule__CompositeComponent__Group_5__3 : rule__CompositeComponent__Group_5__3__Impl rule__CompositeComponent__Group_5__4 ;
-    public final void rule__CompositeComponent__Group_5__3() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6908:1: ( rule__CompositeComponent__Group_5__3__Impl rule__CompositeComponent__Group_5__4 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6909:2: rule__CompositeComponent__Group_5__3__Impl rule__CompositeComponent__Group_5__4
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group_5__3__Impl_in_rule__CompositeComponent__Group_5__313738);
-            rule__CompositeComponent__Group_5__3__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group_5__4_in_rule__CompositeComponent__Group_5__313741);
-            rule__CompositeComponent__Group_5__4();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CompositeComponent__Group_5__3"
-
-
-    // $ANTLR start "rule__CompositeComponent__Group_5__3__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6916:1: rule__CompositeComponent__Group_5__3__Impl : ( ( rule__CompositeComponent__Group_5_3__0 )* ) ;
-    public final void rule__CompositeComponent__Group_5__3__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6920:1: ( ( ( rule__CompositeComponent__Group_5_3__0 )* ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6921:1: ( ( rule__CompositeComponent__Group_5_3__0 )* )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6921:1: ( ( rule__CompositeComponent__Group_5_3__0 )* )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6922:1: ( rule__CompositeComponent__Group_5_3__0 )*
-            {
-             before(grammarAccess.getCompositeComponentAccess().getGroup_5_3()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6923:1: ( rule__CompositeComponent__Group_5_3__0 )*
-            loop46:
-            do {
-                int alt46=2;
-                int LA46_0 = input.LA(1);
-
-                if ( (LA46_0==23) ) {
-                    alt46=1;
-                }
-
-
-                switch (alt46) {
-            	case 1 :
-            	    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6923:2: rule__CompositeComponent__Group_5_3__0
-            	    {
-            	    pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group_5_3__0_in_rule__CompositeComponent__Group_5__3__Impl13768);
-            	    rule__CompositeComponent__Group_5_3__0();
-
-            	    state._fsp--;
-
-
-            	    }
-            	    break;
-
-            	default :
-            	    break loop46;
-                }
-            } while (true);
-
-             after(grammarAccess.getCompositeComponentAccess().getGroup_5_3()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CompositeComponent__Group_5__3__Impl"
-
-
-    // $ANTLR start "rule__CompositeComponent__Group_5__4"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6933:1: rule__CompositeComponent__Group_5__4 : rule__CompositeComponent__Group_5__4__Impl ;
-    public final void rule__CompositeComponent__Group_5__4() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6937:1: ( rule__CompositeComponent__Group_5__4__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6938:2: rule__CompositeComponent__Group_5__4__Impl
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group_5__4__Impl_in_rule__CompositeComponent__Group_5__413799);
-            rule__CompositeComponent__Group_5__4__Impl();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CompositeComponent__Group_5__4"
-
-
-    // $ANTLR start "rule__CompositeComponent__Group_5__4__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6944:1: rule__CompositeComponent__Group_5__4__Impl : ( ')' ) ;
-    public final void rule__CompositeComponent__Group_5__4__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6948:1: ( ( ')' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6949:1: ( ')' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6949:1: ( ')' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6950:1: ')'
-            {
-             before(grammarAccess.getCompositeComponentAccess().getRightParenthesisKeyword_5_4()); 
-            match(input,34,FollowSets000.FOLLOW_34_in_rule__CompositeComponent__Group_5__4__Impl13827); 
-             after(grammarAccess.getCompositeComponentAccess().getRightParenthesisKeyword_5_4()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CompositeComponent__Group_5__4__Impl"
-
-
-    // $ANTLR start "rule__CompositeComponent__Group_5_3__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6973:1: rule__CompositeComponent__Group_5_3__0 : rule__CompositeComponent__Group_5_3__0__Impl rule__CompositeComponent__Group_5_3__1 ;
-    public final void rule__CompositeComponent__Group_5_3__0() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6977:1: ( rule__CompositeComponent__Group_5_3__0__Impl rule__CompositeComponent__Group_5_3__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6978:2: rule__CompositeComponent__Group_5_3__0__Impl rule__CompositeComponent__Group_5_3__1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group_5_3__0__Impl_in_rule__CompositeComponent__Group_5_3__013868);
-            rule__CompositeComponent__Group_5_3__0__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group_5_3__1_in_rule__CompositeComponent__Group_5_3__013871);
-            rule__CompositeComponent__Group_5_3__1();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CompositeComponent__Group_5_3__0"
-
-
-    // $ANTLR start "rule__CompositeComponent__Group_5_3__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6985:1: rule__CompositeComponent__Group_5_3__0__Impl : ( ',' ) ;
-    public final void rule__CompositeComponent__Group_5_3__0__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6989:1: ( ( ',' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6990:1: ( ',' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6990:1: ( ',' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6991:1: ','
-            {
-             before(grammarAccess.getCompositeComponentAccess().getCommaKeyword_5_3_0()); 
-            match(input,23,FollowSets000.FOLLOW_23_in_rule__CompositeComponent__Group_5_3__0__Impl13899); 
-             after(grammarAccess.getCompositeComponentAccess().getCommaKeyword_5_3_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CompositeComponent__Group_5_3__0__Impl"
-
-
-    // $ANTLR start "rule__CompositeComponent__Group_5_3__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7004:1: rule__CompositeComponent__Group_5_3__1 : rule__CompositeComponent__Group_5_3__1__Impl ;
-    public final void rule__CompositeComponent__Group_5_3__1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7008:1: ( rule__CompositeComponent__Group_5_3__1__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7009:2: rule__CompositeComponent__Group_5_3__1__Impl
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group_5_3__1__Impl_in_rule__CompositeComponent__Group_5_3__113930);
-            rule__CompositeComponent__Group_5_3__1__Impl();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CompositeComponent__Group_5_3__1"
-
-
-    // $ANTLR start "rule__CompositeComponent__Group_5_3__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7015:1: rule__CompositeComponent__Group_5_3__1__Impl : ( ( rule__CompositeComponent__RelationshipAssignment_5_3_1 ) ) ;
-    public final void rule__CompositeComponent__Group_5_3__1__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7019:1: ( ( ( rule__CompositeComponent__RelationshipAssignment_5_3_1 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7020:1: ( ( rule__CompositeComponent__RelationshipAssignment_5_3_1 ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7020:1: ( ( rule__CompositeComponent__RelationshipAssignment_5_3_1 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7021:1: ( rule__CompositeComponent__RelationshipAssignment_5_3_1 )
-            {
-             before(grammarAccess.getCompositeComponentAccess().getRelationshipAssignment_5_3_1()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7022:1: ( rule__CompositeComponent__RelationshipAssignment_5_3_1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7022:2: rule__CompositeComponent__RelationshipAssignment_5_3_1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__RelationshipAssignment_5_3_1_in_rule__CompositeComponent__Group_5_3__1__Impl13957);
-            rule__CompositeComponent__RelationshipAssignment_5_3_1();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getCompositeComponentAccess().getRelationshipAssignment_5_3_1()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CompositeComponent__Group_5_3__1__Impl"
-
-
-    // $ANTLR start "rule__CompositeComponent__Group_6__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7036:1: rule__CompositeComponent__Group_6__0 : rule__CompositeComponent__Group_6__0__Impl rule__CompositeComponent__Group_6__1 ;
-    public final void rule__CompositeComponent__Group_6__0() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7040:1: ( rule__CompositeComponent__Group_6__0__Impl rule__CompositeComponent__Group_6__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7041:2: rule__CompositeComponent__Group_6__0__Impl rule__CompositeComponent__Group_6__1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group_6__0__Impl_in_rule__CompositeComponent__Group_6__013991);
-            rule__CompositeComponent__Group_6__0__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group_6__1_in_rule__CompositeComponent__Group_6__013994);
-            rule__CompositeComponent__Group_6__1();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CompositeComponent__Group_6__0"
-
-
-    // $ANTLR start "rule__CompositeComponent__Group_6__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7048:1: rule__CompositeComponent__Group_6__0__Impl : ( 'assembly' ) ;
-    public final void rule__CompositeComponent__Group_6__0__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7052:1: ( ( 'assembly' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7053:1: ( 'assembly' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7053:1: ( 'assembly' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7054:1: 'assembly'
-            {
-             before(grammarAccess.getCompositeComponentAccess().getAssemblyKeyword_6_0()); 
-            match(input,53,FollowSets000.FOLLOW_53_in_rule__CompositeComponent__Group_6__0__Impl14022); 
-             after(grammarAccess.getCompositeComponentAccess().getAssemblyKeyword_6_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CompositeComponent__Group_6__0__Impl"
-
-
-    // $ANTLR start "rule__CompositeComponent__Group_6__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7067:1: rule__CompositeComponent__Group_6__1 : rule__CompositeComponent__Group_6__1__Impl ;
-    public final void rule__CompositeComponent__Group_6__1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7071:1: ( rule__CompositeComponent__Group_6__1__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7072:2: rule__CompositeComponent__Group_6__1__Impl
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group_6__1__Impl_in_rule__CompositeComponent__Group_6__114053);
-            rule__CompositeComponent__Group_6__1__Impl();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CompositeComponent__Group_6__1"
-
-
-    // $ANTLR start "rule__CompositeComponent__Group_6__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7078:1: rule__CompositeComponent__Group_6__1__Impl : ( ( rule__CompositeComponent__AssemblyAssignment_6_1 ) ) ;
-    public final void rule__CompositeComponent__Group_6__1__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7082:1: ( ( ( rule__CompositeComponent__AssemblyAssignment_6_1 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7083:1: ( ( rule__CompositeComponent__AssemblyAssignment_6_1 ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7083:1: ( ( rule__CompositeComponent__AssemblyAssignment_6_1 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7084:1: ( rule__CompositeComponent__AssemblyAssignment_6_1 )
-            {
-             before(grammarAccess.getCompositeComponentAccess().getAssemblyAssignment_6_1()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7085:1: ( rule__CompositeComponent__AssemblyAssignment_6_1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7085:2: rule__CompositeComponent__AssemblyAssignment_6_1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__AssemblyAssignment_6_1_in_rule__CompositeComponent__Group_6__1__Impl14080);
-            rule__CompositeComponent__AssemblyAssignment_6_1();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getCompositeComponentAccess().getAssemblyAssignment_6_1()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CompositeComponent__Group_6__1__Impl"
-
-
-    // $ANTLR start "rule__SubSystem__Group__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7099:1: rule__SubSystem__Group__0 : rule__SubSystem__Group__0__Impl rule__SubSystem__Group__1 ;
-    public final void rule__SubSystem__Group__0() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7103:1: ( rule__SubSystem__Group__0__Impl rule__SubSystem__Group__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7104:2: rule__SubSystem__Group__0__Impl rule__SubSystem__Group__1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group__0__Impl_in_rule__SubSystem__Group__014114);
-            rule__SubSystem__Group__0__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group__1_in_rule__SubSystem__Group__014117);
-            rule__SubSystem__Group__1();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__SubSystem__Group__0"
-
-
-    // $ANTLR start "rule__SubSystem__Group__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7111:1: rule__SubSystem__Group__0__Impl : ( 'SubSystem' ) ;
-    public final void rule__SubSystem__Group__0__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7115:1: ( ( 'SubSystem' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7116:1: ( 'SubSystem' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7116:1: ( 'SubSystem' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7117:1: 'SubSystem'
-            {
-             before(grammarAccess.getSubSystemAccess().getSubSystemKeyword_0()); 
-            match(input,54,FollowSets000.FOLLOW_54_in_rule__SubSystem__Group__0__Impl14145); 
-             after(grammarAccess.getSubSystemAccess().getSubSystemKeyword_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__SubSystem__Group__0__Impl"
-
-
-    // $ANTLR start "rule__SubSystem__Group__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7130:1: rule__SubSystem__Group__1 : rule__SubSystem__Group__1__Impl rule__SubSystem__Group__2 ;
-    public final void rule__SubSystem__Group__1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7134:1: ( rule__SubSystem__Group__1__Impl rule__SubSystem__Group__2 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7135:2: rule__SubSystem__Group__1__Impl rule__SubSystem__Group__2
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group__1__Impl_in_rule__SubSystem__Group__114176);
-            rule__SubSystem__Group__1__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group__2_in_rule__SubSystem__Group__114179);
-            rule__SubSystem__Group__2();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__SubSystem__Group__1"
-
-
-    // $ANTLR start "rule__SubSystem__Group__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7142:1: rule__SubSystem__Group__1__Impl : ( ( rule__SubSystem__NameAssignment_1 ) ) ;
-    public final void rule__SubSystem__Group__1__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7146:1: ( ( ( rule__SubSystem__NameAssignment_1 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7147:1: ( ( rule__SubSystem__NameAssignment_1 ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7147:1: ( ( rule__SubSystem__NameAssignment_1 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7148:1: ( rule__SubSystem__NameAssignment_1 )
-            {
-             before(grammarAccess.getSubSystemAccess().getNameAssignment_1()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7149:1: ( rule__SubSystem__NameAssignment_1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7149:2: rule__SubSystem__NameAssignment_1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__NameAssignment_1_in_rule__SubSystem__Group__1__Impl14206);
-            rule__SubSystem__NameAssignment_1();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getSubSystemAccess().getNameAssignment_1()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__SubSystem__Group__1__Impl"
-
-
-    // $ANTLR start "rule__SubSystem__Group__2"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7159:1: rule__SubSystem__Group__2 : rule__SubSystem__Group__2__Impl rule__SubSystem__Group__3 ;
-    public final void rule__SubSystem__Group__2() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7163:1: ( rule__SubSystem__Group__2__Impl rule__SubSystem__Group__3 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7164:2: rule__SubSystem__Group__2__Impl rule__SubSystem__Group__3
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group__2__Impl_in_rule__SubSystem__Group__214236);
-            rule__SubSystem__Group__2__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group__3_in_rule__SubSystem__Group__214239);
-            rule__SubSystem__Group__3();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__SubSystem__Group__2"
-
-
-    // $ANTLR start "rule__SubSystem__Group__2__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7171:1: rule__SubSystem__Group__2__Impl : ( ( rule__SubSystem__Group_2__0 )? ) ;
-    public final void rule__SubSystem__Group__2__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7175:1: ( ( ( rule__SubSystem__Group_2__0 )? ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7176:1: ( ( rule__SubSystem__Group_2__0 )? )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7176:1: ( ( rule__SubSystem__Group_2__0 )? )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7177:1: ( rule__SubSystem__Group_2__0 )?
-            {
-             before(grammarAccess.getSubSystemAccess().getGroup_2()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7178:1: ( rule__SubSystem__Group_2__0 )?
-            int alt47=2;
-            int LA47_0 = input.LA(1);
-
-            if ( (LA47_0==37) ) {
-                alt47=1;
-            }
-            switch (alt47) {
-                case 1 :
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7178:2: rule__SubSystem__Group_2__0
-                    {
-                    pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_2__0_in_rule__SubSystem__Group__2__Impl14266);
-                    rule__SubSystem__Group_2__0();
-
-                    state._fsp--;
-
-
-                    }
-                    break;
-
-            }
-
-             after(grammarAccess.getSubSystemAccess().getGroup_2()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__SubSystem__Group__2__Impl"
-
-
-    // $ANTLR start "rule__SubSystem__Group__3"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7188:1: rule__SubSystem__Group__3 : rule__SubSystem__Group__3__Impl rule__SubSystem__Group__4 ;
-    public final void rule__SubSystem__Group__3() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7192:1: ( rule__SubSystem__Group__3__Impl rule__SubSystem__Group__4 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7193:2: rule__SubSystem__Group__3__Impl rule__SubSystem__Group__4
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group__3__Impl_in_rule__SubSystem__Group__314297);
-            rule__SubSystem__Group__3__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group__4_in_rule__SubSystem__Group__314300);
-            rule__SubSystem__Group__4();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__SubSystem__Group__3"
-
-
-    // $ANTLR start "rule__SubSystem__Group__3__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7200:1: rule__SubSystem__Group__3__Impl : ( ( rule__SubSystem__Group_3__0 )? ) ;
-    public final void rule__SubSystem__Group__3__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7204:1: ( ( ( rule__SubSystem__Group_3__0 )? ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7205:1: ( ( rule__SubSystem__Group_3__0 )? )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7205:1: ( ( rule__SubSystem__Group_3__0 )? )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7206:1: ( rule__SubSystem__Group_3__0 )?
-            {
-             before(grammarAccess.getSubSystemAccess().getGroup_3()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7207:1: ( rule__SubSystem__Group_3__0 )?
-            int alt48=2;
-            int LA48_0 = input.LA(1);
-
-            if ( (LA48_0==38) ) {
-                alt48=1;
-            }
-            switch (alt48) {
-                case 1 :
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7207:2: rule__SubSystem__Group_3__0
-                    {
-                    pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_3__0_in_rule__SubSystem__Group__3__Impl14327);
-                    rule__SubSystem__Group_3__0();
-
-                    state._fsp--;
-
-
-                    }
-                    break;
-
-            }
-
-             after(grammarAccess.getSubSystemAccess().getGroup_3()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__SubSystem__Group__3__Impl"
-
-
-    // $ANTLR start "rule__SubSystem__Group__4"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7217:1: rule__SubSystem__Group__4 : rule__SubSystem__Group__4__Impl rule__SubSystem__Group__5 ;
-    public final void rule__SubSystem__Group__4() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7221:1: ( rule__SubSystem__Group__4__Impl rule__SubSystem__Group__5 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7222:2: rule__SubSystem__Group__4__Impl rule__SubSystem__Group__5
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group__4__Impl_in_rule__SubSystem__Group__414358);
-            rule__SubSystem__Group__4__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group__5_in_rule__SubSystem__Group__414361);
-            rule__SubSystem__Group__5();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__SubSystem__Group__4"
-
-
-    // $ANTLR start "rule__SubSystem__Group__4__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7229:1: rule__SubSystem__Group__4__Impl : ( '{' ) ;
-    public final void rule__SubSystem__Group__4__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7233:1: ( ( '{' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7234:1: ( '{' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7234:1: ( '{' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7235:1: '{'
-            {
-             before(grammarAccess.getSubSystemAccess().getLeftCurlyBracketKeyword_4()); 
-            match(input,20,FollowSets000.FOLLOW_20_in_rule__SubSystem__Group__4__Impl14389); 
-             after(grammarAccess.getSubSystemAccess().getLeftCurlyBracketKeyword_4()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__SubSystem__Group__4__Impl"
-
-
-    // $ANTLR start "rule__SubSystem__Group__5"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7248:1: rule__SubSystem__Group__5 : rule__SubSystem__Group__5__Impl rule__SubSystem__Group__6 ;
-    public final void rule__SubSystem__Group__5() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7252:1: ( rule__SubSystem__Group__5__Impl rule__SubSystem__Group__6 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7253:2: rule__SubSystem__Group__5__Impl rule__SubSystem__Group__6
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group__5__Impl_in_rule__SubSystem__Group__514420);
-            rule__SubSystem__Group__5__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group__6_in_rule__SubSystem__Group__514423);
-            rule__SubSystem__Group__6();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__SubSystem__Group__5"
-
-
-    // $ANTLR start "rule__SubSystem__Group__5__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7260:1: rule__SubSystem__Group__5__Impl : ( ( rule__SubSystem__Group_5__0 )? ) ;
-    public final void rule__SubSystem__Group__5__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7264:1: ( ( ( rule__SubSystem__Group_5__0 )? ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7265:1: ( ( rule__SubSystem__Group_5__0 )? )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7265:1: ( ( rule__SubSystem__Group_5__0 )? )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7266:1: ( rule__SubSystem__Group_5__0 )?
-            {
-             before(grammarAccess.getSubSystemAccess().getGroup_5()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7267:1: ( rule__SubSystem__Group_5__0 )?
-            int alt49=2;
-            int LA49_0 = input.LA(1);
-
-            if ( (LA49_0==36) ) {
-                alt49=1;
-            }
-            switch (alt49) {
-                case 1 :
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7267:2: rule__SubSystem__Group_5__0
-                    {
-                    pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_5__0_in_rule__SubSystem__Group__5__Impl14450);
-                    rule__SubSystem__Group_5__0();
-
-                    state._fsp--;
-
-
-                    }
-                    break;
-
-            }
-
-             after(grammarAccess.getSubSystemAccess().getGroup_5()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__SubSystem__Group__5__Impl"
-
-
-    // $ANTLR start "rule__SubSystem__Group__6"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7277:1: rule__SubSystem__Group__6 : rule__SubSystem__Group__6__Impl rule__SubSystem__Group__7 ;
-    public final void rule__SubSystem__Group__6() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7281:1: ( rule__SubSystem__Group__6__Impl rule__SubSystem__Group__7 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7282:2: rule__SubSystem__Group__6__Impl rule__SubSystem__Group__7
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group__6__Impl_in_rule__SubSystem__Group__614481);
-            rule__SubSystem__Group__6__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group__7_in_rule__SubSystem__Group__614484);
-            rule__SubSystem__Group__7();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__SubSystem__Group__6"
-
-
-    // $ANTLR start "rule__SubSystem__Group__6__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7289:1: rule__SubSystem__Group__6__Impl : ( ( rule__SubSystem__Group_6__0 )? ) ;
-    public final void rule__SubSystem__Group__6__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7293:1: ( ( ( rule__SubSystem__Group_6__0 )? ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7294:1: ( ( rule__SubSystem__Group_6__0 )? )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7294:1: ( ( rule__SubSystem__Group_6__0 )? )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7295:1: ( rule__SubSystem__Group_6__0 )?
-            {
-             before(grammarAccess.getSubSystemAccess().getGroup_6()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7296:1: ( rule__SubSystem__Group_6__0 )?
-            int alt50=2;
-            int LA50_0 = input.LA(1);
-
-            if ( (LA50_0==53) ) {
-                alt50=1;
-            }
-            switch (alt50) {
-                case 1 :
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7296:2: rule__SubSystem__Group_6__0
-                    {
-                    pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_6__0_in_rule__SubSystem__Group__6__Impl14511);
-                    rule__SubSystem__Group_6__0();
-
-                    state._fsp--;
-
-
-                    }
-                    break;
-
-            }
-
-             after(grammarAccess.getSubSystemAccess().getGroup_6()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__SubSystem__Group__6__Impl"
-
-
-    // $ANTLR start "rule__SubSystem__Group__7"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7306:1: rule__SubSystem__Group__7 : rule__SubSystem__Group__7__Impl ;
-    public final void rule__SubSystem__Group__7() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7310:1: ( rule__SubSystem__Group__7__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7311:2: rule__SubSystem__Group__7__Impl
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group__7__Impl_in_rule__SubSystem__Group__714542);
-            rule__SubSystem__Group__7__Impl();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__SubSystem__Group__7"
-
-
-    // $ANTLR start "rule__SubSystem__Group__7__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7317:1: rule__SubSystem__Group__7__Impl : ( '}' ) ;
-    public final void rule__SubSystem__Group__7__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7321:1: ( ( '}' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7322:1: ( '}' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7322:1: ( '}' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7323:1: '}'
-            {
-             before(grammarAccess.getSubSystemAccess().getRightCurlyBracketKeyword_7()); 
-            match(input,21,FollowSets000.FOLLOW_21_in_rule__SubSystem__Group__7__Impl14570); 
-             after(grammarAccess.getSubSystemAccess().getRightCurlyBracketKeyword_7()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__SubSystem__Group__7__Impl"
-
-
-    // $ANTLR start "rule__SubSystem__Group_2__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7352:1: rule__SubSystem__Group_2__0 : rule__SubSystem__Group_2__0__Impl rule__SubSystem__Group_2__1 ;
-    public final void rule__SubSystem__Group_2__0() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7356:1: ( rule__SubSystem__Group_2__0__Impl rule__SubSystem__Group_2__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7357:2: rule__SubSystem__Group_2__0__Impl rule__SubSystem__Group_2__1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_2__0__Impl_in_rule__SubSystem__Group_2__014617);
-            rule__SubSystem__Group_2__0__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_2__1_in_rule__SubSystem__Group_2__014620);
-            rule__SubSystem__Group_2__1();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__SubSystem__Group_2__0"
-
-
-    // $ANTLR start "rule__SubSystem__Group_2__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7364:1: rule__SubSystem__Group_2__0__Impl : ( 'providedRoles' ) ;
-    public final void rule__SubSystem__Group_2__0__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7368:1: ( ( 'providedRoles' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7369:1: ( 'providedRoles' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7369:1: ( 'providedRoles' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7370:1: 'providedRoles'
-            {
-             before(grammarAccess.getSubSystemAccess().getProvidedRolesKeyword_2_0()); 
-            match(input,37,FollowSets000.FOLLOW_37_in_rule__SubSystem__Group_2__0__Impl14648); 
-             after(grammarAccess.getSubSystemAccess().getProvidedRolesKeyword_2_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__SubSystem__Group_2__0__Impl"
-
-
-    // $ANTLR start "rule__SubSystem__Group_2__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7383:1: rule__SubSystem__Group_2__1 : rule__SubSystem__Group_2__1__Impl rule__SubSystem__Group_2__2 ;
-    public final void rule__SubSystem__Group_2__1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7387:1: ( rule__SubSystem__Group_2__1__Impl rule__SubSystem__Group_2__2 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7388:2: rule__SubSystem__Group_2__1__Impl rule__SubSystem__Group_2__2
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_2__1__Impl_in_rule__SubSystem__Group_2__114679);
-            rule__SubSystem__Group_2__1__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_2__2_in_rule__SubSystem__Group_2__114682);
-            rule__SubSystem__Group_2__2();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__SubSystem__Group_2__1"
-
-
-    // $ANTLR start "rule__SubSystem__Group_2__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7395:1: rule__SubSystem__Group_2__1__Impl : ( '{' ) ;
-    public final void rule__SubSystem__Group_2__1__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7399:1: ( ( '{' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7400:1: ( '{' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7400:1: ( '{' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7401:1: '{'
-            {
-             before(grammarAccess.getSubSystemAccess().getLeftCurlyBracketKeyword_2_1()); 
-            match(input,20,FollowSets000.FOLLOW_20_in_rule__SubSystem__Group_2__1__Impl14710); 
-             after(grammarAccess.getSubSystemAccess().getLeftCurlyBracketKeyword_2_1()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__SubSystem__Group_2__1__Impl"
-
-
-    // $ANTLR start "rule__SubSystem__Group_2__2"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7414:1: rule__SubSystem__Group_2__2 : rule__SubSystem__Group_2__2__Impl rule__SubSystem__Group_2__3 ;
-    public final void rule__SubSystem__Group_2__2() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7418:1: ( rule__SubSystem__Group_2__2__Impl rule__SubSystem__Group_2__3 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7419:2: rule__SubSystem__Group_2__2__Impl rule__SubSystem__Group_2__3
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_2__2__Impl_in_rule__SubSystem__Group_2__214741);
-            rule__SubSystem__Group_2__2__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_2__3_in_rule__SubSystem__Group_2__214744);
-            rule__SubSystem__Group_2__3();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__SubSystem__Group_2__2"
-
-
-    // $ANTLR start "rule__SubSystem__Group_2__2__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7426:1: rule__SubSystem__Group_2__2__Impl : ( ( rule__SubSystem__ProvidedRolesAssignment_2_2 ) ) ;
-    public final void rule__SubSystem__Group_2__2__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7430:1: ( ( ( rule__SubSystem__ProvidedRolesAssignment_2_2 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7431:1: ( ( rule__SubSystem__ProvidedRolesAssignment_2_2 ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7431:1: ( ( rule__SubSystem__ProvidedRolesAssignment_2_2 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7432:1: ( rule__SubSystem__ProvidedRolesAssignment_2_2 )
-            {
-             before(grammarAccess.getSubSystemAccess().getProvidedRolesAssignment_2_2()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7433:1: ( rule__SubSystem__ProvidedRolesAssignment_2_2 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7433:2: rule__SubSystem__ProvidedRolesAssignment_2_2
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__ProvidedRolesAssignment_2_2_in_rule__SubSystem__Group_2__2__Impl14771);
-            rule__SubSystem__ProvidedRolesAssignment_2_2();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getSubSystemAccess().getProvidedRolesAssignment_2_2()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__SubSystem__Group_2__2__Impl"
-
-
-    // $ANTLR start "rule__SubSystem__Group_2__3"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7443:1: rule__SubSystem__Group_2__3 : rule__SubSystem__Group_2__3__Impl rule__SubSystem__Group_2__4 ;
-    public final void rule__SubSystem__Group_2__3() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7447:1: ( rule__SubSystem__Group_2__3__Impl rule__SubSystem__Group_2__4 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7448:2: rule__SubSystem__Group_2__3__Impl rule__SubSystem__Group_2__4
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_2__3__Impl_in_rule__SubSystem__Group_2__314801);
-            rule__SubSystem__Group_2__3__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_2__4_in_rule__SubSystem__Group_2__314804);
-            rule__SubSystem__Group_2__4();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__SubSystem__Group_2__3"
-
-
-    // $ANTLR start "rule__SubSystem__Group_2__3__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7455:1: rule__SubSystem__Group_2__3__Impl : ( ( rule__SubSystem__Group_2_3__0 )* ) ;
-    public final void rule__SubSystem__Group_2__3__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7459:1: ( ( ( rule__SubSystem__Group_2_3__0 )* ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7460:1: ( ( rule__SubSystem__Group_2_3__0 )* )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7460:1: ( ( rule__SubSystem__Group_2_3__0 )* )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7461:1: ( rule__SubSystem__Group_2_3__0 )*
-            {
-             before(grammarAccess.getSubSystemAccess().getGroup_2_3()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7462:1: ( rule__SubSystem__Group_2_3__0 )*
-            loop51:
-            do {
-                int alt51=2;
-                int LA51_0 = input.LA(1);
-
-                if ( (LA51_0==23) ) {
-                    alt51=1;
-                }
-
-
-                switch (alt51) {
-            	case 1 :
-            	    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7462:2: rule__SubSystem__Group_2_3__0
-            	    {
-            	    pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_2_3__0_in_rule__SubSystem__Group_2__3__Impl14831);
-            	    rule__SubSystem__Group_2_3__0();
-
-            	    state._fsp--;
-
-
-            	    }
-            	    break;
-
-            	default :
-            	    break loop51;
-                }
-            } while (true);
-
-             after(grammarAccess.getSubSystemAccess().getGroup_2_3()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__SubSystem__Group_2__3__Impl"
-
-
-    // $ANTLR start "rule__SubSystem__Group_2__4"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7472:1: rule__SubSystem__Group_2__4 : rule__SubSystem__Group_2__4__Impl ;
-    public final void rule__SubSystem__Group_2__4() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7476:1: ( rule__SubSystem__Group_2__4__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7477:2: rule__SubSystem__Group_2__4__Impl
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_2__4__Impl_in_rule__SubSystem__Group_2__414862);
-            rule__SubSystem__Group_2__4__Impl();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__SubSystem__Group_2__4"
-
-
-    // $ANTLR start "rule__SubSystem__Group_2__4__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7483:1: rule__SubSystem__Group_2__4__Impl : ( '}' ) ;
-    public final void rule__SubSystem__Group_2__4__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7487:1: ( ( '}' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7488:1: ( '}' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7488:1: ( '}' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7489:1: '}'
-            {
-             before(grammarAccess.getSubSystemAccess().getRightCurlyBracketKeyword_2_4()); 
-            match(input,21,FollowSets000.FOLLOW_21_in_rule__SubSystem__Group_2__4__Impl14890); 
-             after(grammarAccess.getSubSystemAccess().getRightCurlyBracketKeyword_2_4()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__SubSystem__Group_2__4__Impl"
-
-
-    // $ANTLR start "rule__SubSystem__Group_2_3__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7512:1: rule__SubSystem__Group_2_3__0 : rule__SubSystem__Group_2_3__0__Impl rule__SubSystem__Group_2_3__1 ;
-    public final void rule__SubSystem__Group_2_3__0() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7516:1: ( rule__SubSystem__Group_2_3__0__Impl rule__SubSystem__Group_2_3__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7517:2: rule__SubSystem__Group_2_3__0__Impl rule__SubSystem__Group_2_3__1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_2_3__0__Impl_in_rule__SubSystem__Group_2_3__014931);
-            rule__SubSystem__Group_2_3__0__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_2_3__1_in_rule__SubSystem__Group_2_3__014934);
-            rule__SubSystem__Group_2_3__1();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__SubSystem__Group_2_3__0"
-
-
-    // $ANTLR start "rule__SubSystem__Group_2_3__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7524:1: rule__SubSystem__Group_2_3__0__Impl : ( ',' ) ;
-    public final void rule__SubSystem__Group_2_3__0__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7528:1: ( ( ',' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7529:1: ( ',' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7529:1: ( ',' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7530:1: ','
-            {
-             before(grammarAccess.getSubSystemAccess().getCommaKeyword_2_3_0()); 
-            match(input,23,FollowSets000.FOLLOW_23_in_rule__SubSystem__Group_2_3__0__Impl14962); 
-             after(grammarAccess.getSubSystemAccess().getCommaKeyword_2_3_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__SubSystem__Group_2_3__0__Impl"
-
-
-    // $ANTLR start "rule__SubSystem__Group_2_3__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7543:1: rule__SubSystem__Group_2_3__1 : rule__SubSystem__Group_2_3__1__Impl ;
-    public final void rule__SubSystem__Group_2_3__1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7547:1: ( rule__SubSystem__Group_2_3__1__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7548:2: rule__SubSystem__Group_2_3__1__Impl
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_2_3__1__Impl_in_rule__SubSystem__Group_2_3__114993);
-            rule__SubSystem__Group_2_3__1__Impl();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__SubSystem__Group_2_3__1"
-
-
-    // $ANTLR start "rule__SubSystem__Group_2_3__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7554:1: rule__SubSystem__Group_2_3__1__Impl : ( ( rule__SubSystem__ProvidedRolesAssignment_2_3_1 ) ) ;
-    public final void rule__SubSystem__Group_2_3__1__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7558:1: ( ( ( rule__SubSystem__ProvidedRolesAssignment_2_3_1 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7559:1: ( ( rule__SubSystem__ProvidedRolesAssignment_2_3_1 ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7559:1: ( ( rule__SubSystem__ProvidedRolesAssignment_2_3_1 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7560:1: ( rule__SubSystem__ProvidedRolesAssignment_2_3_1 )
-            {
-             before(grammarAccess.getSubSystemAccess().getProvidedRolesAssignment_2_3_1()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7561:1: ( rule__SubSystem__ProvidedRolesAssignment_2_3_1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7561:2: rule__SubSystem__ProvidedRolesAssignment_2_3_1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__ProvidedRolesAssignment_2_3_1_in_rule__SubSystem__Group_2_3__1__Impl15020);
-            rule__SubSystem__ProvidedRolesAssignment_2_3_1();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getSubSystemAccess().getProvidedRolesAssignment_2_3_1()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__SubSystem__Group_2_3__1__Impl"
-
-
-    // $ANTLR start "rule__SubSystem__Group_3__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7575:1: rule__SubSystem__Group_3__0 : rule__SubSystem__Group_3__0__Impl rule__SubSystem__Group_3__1 ;
-    public final void rule__SubSystem__Group_3__0() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7579:1: ( rule__SubSystem__Group_3__0__Impl rule__SubSystem__Group_3__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7580:2: rule__SubSystem__Group_3__0__Impl rule__SubSystem__Group_3__1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_3__0__Impl_in_rule__SubSystem__Group_3__015054);
-            rule__SubSystem__Group_3__0__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_3__1_in_rule__SubSystem__Group_3__015057);
-            rule__SubSystem__Group_3__1();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__SubSystem__Group_3__0"
-
-
-    // $ANTLR start "rule__SubSystem__Group_3__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7587:1: rule__SubSystem__Group_3__0__Impl : ( 'requiredRoles' ) ;
-    public final void rule__SubSystem__Group_3__0__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7591:1: ( ( 'requiredRoles' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7592:1: ( 'requiredRoles' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7592:1: ( 'requiredRoles' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7593:1: 'requiredRoles'
-            {
-             before(grammarAccess.getSubSystemAccess().getRequiredRolesKeyword_3_0()); 
-            match(input,38,FollowSets000.FOLLOW_38_in_rule__SubSystem__Group_3__0__Impl15085); 
-             after(grammarAccess.getSubSystemAccess().getRequiredRolesKeyword_3_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__SubSystem__Group_3__0__Impl"
-
-
-    // $ANTLR start "rule__SubSystem__Group_3__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7606:1: rule__SubSystem__Group_3__1 : rule__SubSystem__Group_3__1__Impl rule__SubSystem__Group_3__2 ;
-    public final void rule__SubSystem__Group_3__1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7610:1: ( rule__SubSystem__Group_3__1__Impl rule__SubSystem__Group_3__2 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7611:2: rule__SubSystem__Group_3__1__Impl rule__SubSystem__Group_3__2
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_3__1__Impl_in_rule__SubSystem__Group_3__115116);
-            rule__SubSystem__Group_3__1__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_3__2_in_rule__SubSystem__Group_3__115119);
-            rule__SubSystem__Group_3__2();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__SubSystem__Group_3__1"
-
-
-    // $ANTLR start "rule__SubSystem__Group_3__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7618:1: rule__SubSystem__Group_3__1__Impl : ( '{' ) ;
-    public final void rule__SubSystem__Group_3__1__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7622:1: ( ( '{' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7623:1: ( '{' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7623:1: ( '{' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7624:1: '{'
-            {
-             before(grammarAccess.getSubSystemAccess().getLeftCurlyBracketKeyword_3_1()); 
-            match(input,20,FollowSets000.FOLLOW_20_in_rule__SubSystem__Group_3__1__Impl15147); 
-             after(grammarAccess.getSubSystemAccess().getLeftCurlyBracketKeyword_3_1()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__SubSystem__Group_3__1__Impl"
-
-
-    // $ANTLR start "rule__SubSystem__Group_3__2"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7637:1: rule__SubSystem__Group_3__2 : rule__SubSystem__Group_3__2__Impl rule__SubSystem__Group_3__3 ;
-    public final void rule__SubSystem__Group_3__2() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7641:1: ( rule__SubSystem__Group_3__2__Impl rule__SubSystem__Group_3__3 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7642:2: rule__SubSystem__Group_3__2__Impl rule__SubSystem__Group_3__3
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_3__2__Impl_in_rule__SubSystem__Group_3__215178);
-            rule__SubSystem__Group_3__2__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_3__3_in_rule__SubSystem__Group_3__215181);
-            rule__SubSystem__Group_3__3();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__SubSystem__Group_3__2"
-
-
-    // $ANTLR start "rule__SubSystem__Group_3__2__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7649:1: rule__SubSystem__Group_3__2__Impl : ( ( rule__SubSystem__RequiredRolesAssignment_3_2 ) ) ;
-    public final void rule__SubSystem__Group_3__2__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7653:1: ( ( ( rule__SubSystem__RequiredRolesAssignment_3_2 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7654:1: ( ( rule__SubSystem__RequiredRolesAssignment_3_2 ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7654:1: ( ( rule__SubSystem__RequiredRolesAssignment_3_2 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7655:1: ( rule__SubSystem__RequiredRolesAssignment_3_2 )
-            {
-             before(grammarAccess.getSubSystemAccess().getRequiredRolesAssignment_3_2()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7656:1: ( rule__SubSystem__RequiredRolesAssignment_3_2 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7656:2: rule__SubSystem__RequiredRolesAssignment_3_2
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__RequiredRolesAssignment_3_2_in_rule__SubSystem__Group_3__2__Impl15208);
-            rule__SubSystem__RequiredRolesAssignment_3_2();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getSubSystemAccess().getRequiredRolesAssignment_3_2()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__SubSystem__Group_3__2__Impl"
-
-
-    // $ANTLR start "rule__SubSystem__Group_3__3"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7666:1: rule__SubSystem__Group_3__3 : rule__SubSystem__Group_3__3__Impl rule__SubSystem__Group_3__4 ;
-    public final void rule__SubSystem__Group_3__3() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7670:1: ( rule__SubSystem__Group_3__3__Impl rule__SubSystem__Group_3__4 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7671:2: rule__SubSystem__Group_3__3__Impl rule__SubSystem__Group_3__4
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_3__3__Impl_in_rule__SubSystem__Group_3__315238);
-            rule__SubSystem__Group_3__3__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_3__4_in_rule__SubSystem__Group_3__315241);
-            rule__SubSystem__Group_3__4();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__SubSystem__Group_3__3"
-
-
-    // $ANTLR start "rule__SubSystem__Group_3__3__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7678:1: rule__SubSystem__Group_3__3__Impl : ( ( rule__SubSystem__Group_3_3__0 )* ) ;
-    public final void rule__SubSystem__Group_3__3__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7682:1: ( ( ( rule__SubSystem__Group_3_3__0 )* ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7683:1: ( ( rule__SubSystem__Group_3_3__0 )* )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7683:1: ( ( rule__SubSystem__Group_3_3__0 )* )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7684:1: ( rule__SubSystem__Group_3_3__0 )*
-            {
-             before(grammarAccess.getSubSystemAccess().getGroup_3_3()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7685:1: ( rule__SubSystem__Group_3_3__0 )*
-            loop52:
-            do {
-                int alt52=2;
-                int LA52_0 = input.LA(1);
-
-                if ( (LA52_0==23) ) {
-                    alt52=1;
-                }
-
-
-                switch (alt52) {
-            	case 1 :
-            	    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7685:2: rule__SubSystem__Group_3_3__0
-            	    {
-            	    pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_3_3__0_in_rule__SubSystem__Group_3__3__Impl15268);
-            	    rule__SubSystem__Group_3_3__0();
-
-            	    state._fsp--;
-
-
-            	    }
-            	    break;
-
-            	default :
-            	    break loop52;
-                }
-            } while (true);
-
-             after(grammarAccess.getSubSystemAccess().getGroup_3_3()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__SubSystem__Group_3__3__Impl"
-
-
-    // $ANTLR start "rule__SubSystem__Group_3__4"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7695:1: rule__SubSystem__Group_3__4 : rule__SubSystem__Group_3__4__Impl ;
-    public final void rule__SubSystem__Group_3__4() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7699:1: ( rule__SubSystem__Group_3__4__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7700:2: rule__SubSystem__Group_3__4__Impl
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_3__4__Impl_in_rule__SubSystem__Group_3__415299);
-            rule__SubSystem__Group_3__4__Impl();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__SubSystem__Group_3__4"
-
-
-    // $ANTLR start "rule__SubSystem__Group_3__4__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7706:1: rule__SubSystem__Group_3__4__Impl : ( '}' ) ;
-    public final void rule__SubSystem__Group_3__4__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7710:1: ( ( '}' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7711:1: ( '}' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7711:1: ( '}' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7712:1: '}'
-            {
-             before(grammarAccess.getSubSystemAccess().getRightCurlyBracketKeyword_3_4()); 
-            match(input,21,FollowSets000.FOLLOW_21_in_rule__SubSystem__Group_3__4__Impl15327); 
-             after(grammarAccess.getSubSystemAccess().getRightCurlyBracketKeyword_3_4()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__SubSystem__Group_3__4__Impl"
-
-
-    // $ANTLR start "rule__SubSystem__Group_3_3__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7735:1: rule__SubSystem__Group_3_3__0 : rule__SubSystem__Group_3_3__0__Impl rule__SubSystem__Group_3_3__1 ;
-    public final void rule__SubSystem__Group_3_3__0() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7739:1: ( rule__SubSystem__Group_3_3__0__Impl rule__SubSystem__Group_3_3__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7740:2: rule__SubSystem__Group_3_3__0__Impl rule__SubSystem__Group_3_3__1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_3_3__0__Impl_in_rule__SubSystem__Group_3_3__015368);
-            rule__SubSystem__Group_3_3__0__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_3_3__1_in_rule__SubSystem__Group_3_3__015371);
-            rule__SubSystem__Group_3_3__1();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__SubSystem__Group_3_3__0"
-
-
-    // $ANTLR start "rule__SubSystem__Group_3_3__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7747:1: rule__SubSystem__Group_3_3__0__Impl : ( ',' ) ;
-    public final void rule__SubSystem__Group_3_3__0__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7751:1: ( ( ',' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7752:1: ( ',' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7752:1: ( ',' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7753:1: ','
-            {
-             before(grammarAccess.getSubSystemAccess().getCommaKeyword_3_3_0()); 
-            match(input,23,FollowSets000.FOLLOW_23_in_rule__SubSystem__Group_3_3__0__Impl15399); 
-             after(grammarAccess.getSubSystemAccess().getCommaKeyword_3_3_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__SubSystem__Group_3_3__0__Impl"
-
-
-    // $ANTLR start "rule__SubSystem__Group_3_3__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7766:1: rule__SubSystem__Group_3_3__1 : rule__SubSystem__Group_3_3__1__Impl ;
-    public final void rule__SubSystem__Group_3_3__1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7770:1: ( rule__SubSystem__Group_3_3__1__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7771:2: rule__SubSystem__Group_3_3__1__Impl
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_3_3__1__Impl_in_rule__SubSystem__Group_3_3__115430);
-            rule__SubSystem__Group_3_3__1__Impl();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__SubSystem__Group_3_3__1"
-
-
-    // $ANTLR start "rule__SubSystem__Group_3_3__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7777:1: rule__SubSystem__Group_3_3__1__Impl : ( ( rule__SubSystem__RequiredRolesAssignment_3_3_1 ) ) ;
-    public final void rule__SubSystem__Group_3_3__1__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7781:1: ( ( ( rule__SubSystem__RequiredRolesAssignment_3_3_1 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7782:1: ( ( rule__SubSystem__RequiredRolesAssignment_3_3_1 ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7782:1: ( ( rule__SubSystem__RequiredRolesAssignment_3_3_1 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7783:1: ( rule__SubSystem__RequiredRolesAssignment_3_3_1 )
-            {
-             before(grammarAccess.getSubSystemAccess().getRequiredRolesAssignment_3_3_1()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7784:1: ( rule__SubSystem__RequiredRolesAssignment_3_3_1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7784:2: rule__SubSystem__RequiredRolesAssignment_3_3_1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__RequiredRolesAssignment_3_3_1_in_rule__SubSystem__Group_3_3__1__Impl15457);
-            rule__SubSystem__RequiredRolesAssignment_3_3_1();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getSubSystemAccess().getRequiredRolesAssignment_3_3_1()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__SubSystem__Group_3_3__1__Impl"
-
-
-    // $ANTLR start "rule__SubSystem__Group_5__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7798:1: rule__SubSystem__Group_5__0 : rule__SubSystem__Group_5__0__Impl rule__SubSystem__Group_5__1 ;
-    public final void rule__SubSystem__Group_5__0() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7802:1: ( rule__SubSystem__Group_5__0__Impl rule__SubSystem__Group_5__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7803:2: rule__SubSystem__Group_5__0__Impl rule__SubSystem__Group_5__1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_5__0__Impl_in_rule__SubSystem__Group_5__015491);
-            rule__SubSystem__Group_5__0__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_5__1_in_rule__SubSystem__Group_5__015494);
-            rule__SubSystem__Group_5__1();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__SubSystem__Group_5__0"
-
-
-    // $ANTLR start "rule__SubSystem__Group_5__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7810:1: rule__SubSystem__Group_5__0__Impl : ( 'relationship' ) ;
-    public final void rule__SubSystem__Group_5__0__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7814:1: ( ( 'relationship' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7815:1: ( 'relationship' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7815:1: ( 'relationship' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7816:1: 'relationship'
-            {
-             before(grammarAccess.getSubSystemAccess().getRelationshipKeyword_5_0()); 
-            match(input,36,FollowSets000.FOLLOW_36_in_rule__SubSystem__Group_5__0__Impl15522); 
-             after(grammarAccess.getSubSystemAccess().getRelationshipKeyword_5_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__SubSystem__Group_5__0__Impl"
-
-
-    // $ANTLR start "rule__SubSystem__Group_5__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7829:1: rule__SubSystem__Group_5__1 : rule__SubSystem__Group_5__1__Impl rule__SubSystem__Group_5__2 ;
-    public final void rule__SubSystem__Group_5__1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7833:1: ( rule__SubSystem__Group_5__1__Impl rule__SubSystem__Group_5__2 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7834:2: rule__SubSystem__Group_5__1__Impl rule__SubSystem__Group_5__2
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_5__1__Impl_in_rule__SubSystem__Group_5__115553);
-            rule__SubSystem__Group_5__1__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_5__2_in_rule__SubSystem__Group_5__115556);
-            rule__SubSystem__Group_5__2();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__SubSystem__Group_5__1"
-
-
-    // $ANTLR start "rule__SubSystem__Group_5__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7841:1: rule__SubSystem__Group_5__1__Impl : ( '(' ) ;
-    public final void rule__SubSystem__Group_5__1__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7845:1: ( ( '(' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7846:1: ( '(' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7846:1: ( '(' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7847:1: '('
-            {
-             before(grammarAccess.getSubSystemAccess().getLeftParenthesisKeyword_5_1()); 
-            match(input,33,FollowSets000.FOLLOW_33_in_rule__SubSystem__Group_5__1__Impl15584); 
-             after(grammarAccess.getSubSystemAccess().getLeftParenthesisKeyword_5_1()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__SubSystem__Group_5__1__Impl"
-
-
-    // $ANTLR start "rule__SubSystem__Group_5__2"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7860:1: rule__SubSystem__Group_5__2 : rule__SubSystem__Group_5__2__Impl rule__SubSystem__Group_5__3 ;
-    public final void rule__SubSystem__Group_5__2() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7864:1: ( rule__SubSystem__Group_5__2__Impl rule__SubSystem__Group_5__3 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7865:2: rule__SubSystem__Group_5__2__Impl rule__SubSystem__Group_5__3
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_5__2__Impl_in_rule__SubSystem__Group_5__215615);
-            rule__SubSystem__Group_5__2__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_5__3_in_rule__SubSystem__Group_5__215618);
-            rule__SubSystem__Group_5__3();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__SubSystem__Group_5__2"
-
-
-    // $ANTLR start "rule__SubSystem__Group_5__2__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7872:1: rule__SubSystem__Group_5__2__Impl : ( ( rule__SubSystem__RelationshipAssignment_5_2 ) ) ;
-    public final void rule__SubSystem__Group_5__2__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7876:1: ( ( ( rule__SubSystem__RelationshipAssignment_5_2 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7877:1: ( ( rule__SubSystem__RelationshipAssignment_5_2 ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7877:1: ( ( rule__SubSystem__RelationshipAssignment_5_2 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7878:1: ( rule__SubSystem__RelationshipAssignment_5_2 )
-            {
-             before(grammarAccess.getSubSystemAccess().getRelationshipAssignment_5_2()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7879:1: ( rule__SubSystem__RelationshipAssignment_5_2 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7879:2: rule__SubSystem__RelationshipAssignment_5_2
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__RelationshipAssignment_5_2_in_rule__SubSystem__Group_5__2__Impl15645);
-            rule__SubSystem__RelationshipAssignment_5_2();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getSubSystemAccess().getRelationshipAssignment_5_2()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__SubSystem__Group_5__2__Impl"
-
-
-    // $ANTLR start "rule__SubSystem__Group_5__3"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7889:1: rule__SubSystem__Group_5__3 : rule__SubSystem__Group_5__3__Impl rule__SubSystem__Group_5__4 ;
-    public final void rule__SubSystem__Group_5__3() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7893:1: ( rule__SubSystem__Group_5__3__Impl rule__SubSystem__Group_5__4 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7894:2: rule__SubSystem__Group_5__3__Impl rule__SubSystem__Group_5__4
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_5__3__Impl_in_rule__SubSystem__Group_5__315675);
-            rule__SubSystem__Group_5__3__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_5__4_in_rule__SubSystem__Group_5__315678);
-            rule__SubSystem__Group_5__4();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__SubSystem__Group_5__3"
-
-
-    // $ANTLR start "rule__SubSystem__Group_5__3__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7901:1: rule__SubSystem__Group_5__3__Impl : ( ( rule__SubSystem__Group_5_3__0 )* ) ;
-    public final void rule__SubSystem__Group_5__3__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7905:1: ( ( ( rule__SubSystem__Group_5_3__0 )* ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7906:1: ( ( rule__SubSystem__Group_5_3__0 )* )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7906:1: ( ( rule__SubSystem__Group_5_3__0 )* )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7907:1: ( rule__SubSystem__Group_5_3__0 )*
-            {
-             before(grammarAccess.getSubSystemAccess().getGroup_5_3()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7908:1: ( rule__SubSystem__Group_5_3__0 )*
-            loop53:
-            do {
-                int alt53=2;
-                int LA53_0 = input.LA(1);
-
-                if ( (LA53_0==23) ) {
-                    alt53=1;
-                }
-
-
-                switch (alt53) {
-            	case 1 :
-            	    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7908:2: rule__SubSystem__Group_5_3__0
-            	    {
-            	    pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_5_3__0_in_rule__SubSystem__Group_5__3__Impl15705);
-            	    rule__SubSystem__Group_5_3__0();
-
-            	    state._fsp--;
-
-
-            	    }
-            	    break;
-
-            	default :
-            	    break loop53;
-                }
-            } while (true);
-
-             after(grammarAccess.getSubSystemAccess().getGroup_5_3()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__SubSystem__Group_5__3__Impl"
-
-
-    // $ANTLR start "rule__SubSystem__Group_5__4"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7918:1: rule__SubSystem__Group_5__4 : rule__SubSystem__Group_5__4__Impl ;
-    public final void rule__SubSystem__Group_5__4() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7922:1: ( rule__SubSystem__Group_5__4__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7923:2: rule__SubSystem__Group_5__4__Impl
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_5__4__Impl_in_rule__SubSystem__Group_5__415736);
-            rule__SubSystem__Group_5__4__Impl();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__SubSystem__Group_5__4"
-
-
-    // $ANTLR start "rule__SubSystem__Group_5__4__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7929:1: rule__SubSystem__Group_5__4__Impl : ( ')' ) ;
-    public final void rule__SubSystem__Group_5__4__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7933:1: ( ( ')' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7934:1: ( ')' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7934:1: ( ')' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7935:1: ')'
-            {
-             before(grammarAccess.getSubSystemAccess().getRightParenthesisKeyword_5_4()); 
-            match(input,34,FollowSets000.FOLLOW_34_in_rule__SubSystem__Group_5__4__Impl15764); 
-             after(grammarAccess.getSubSystemAccess().getRightParenthesisKeyword_5_4()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__SubSystem__Group_5__4__Impl"
-
-
-    // $ANTLR start "rule__SubSystem__Group_5_3__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7958:1: rule__SubSystem__Group_5_3__0 : rule__SubSystem__Group_5_3__0__Impl rule__SubSystem__Group_5_3__1 ;
-    public final void rule__SubSystem__Group_5_3__0() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7962:1: ( rule__SubSystem__Group_5_3__0__Impl rule__SubSystem__Group_5_3__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7963:2: rule__SubSystem__Group_5_3__0__Impl rule__SubSystem__Group_5_3__1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_5_3__0__Impl_in_rule__SubSystem__Group_5_3__015805);
-            rule__SubSystem__Group_5_3__0__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_5_3__1_in_rule__SubSystem__Group_5_3__015808);
-            rule__SubSystem__Group_5_3__1();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__SubSystem__Group_5_3__0"
-
-
-    // $ANTLR start "rule__SubSystem__Group_5_3__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7970:1: rule__SubSystem__Group_5_3__0__Impl : ( ',' ) ;
-    public final void rule__SubSystem__Group_5_3__0__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7974:1: ( ( ',' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7975:1: ( ',' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7975:1: ( ',' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7976:1: ','
-            {
-             before(grammarAccess.getSubSystemAccess().getCommaKeyword_5_3_0()); 
-            match(input,23,FollowSets000.FOLLOW_23_in_rule__SubSystem__Group_5_3__0__Impl15836); 
-             after(grammarAccess.getSubSystemAccess().getCommaKeyword_5_3_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__SubSystem__Group_5_3__0__Impl"
-
-
-    // $ANTLR start "rule__SubSystem__Group_5_3__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7989:1: rule__SubSystem__Group_5_3__1 : rule__SubSystem__Group_5_3__1__Impl ;
-    public final void rule__SubSystem__Group_5_3__1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7993:1: ( rule__SubSystem__Group_5_3__1__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7994:2: rule__SubSystem__Group_5_3__1__Impl
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_5_3__1__Impl_in_rule__SubSystem__Group_5_3__115867);
-            rule__SubSystem__Group_5_3__1__Impl();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__SubSystem__Group_5_3__1"
-
-
-    // $ANTLR start "rule__SubSystem__Group_5_3__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8000:1: rule__SubSystem__Group_5_3__1__Impl : ( ( rule__SubSystem__RelationshipAssignment_5_3_1 ) ) ;
-    public final void rule__SubSystem__Group_5_3__1__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8004:1: ( ( ( rule__SubSystem__RelationshipAssignment_5_3_1 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8005:1: ( ( rule__SubSystem__RelationshipAssignment_5_3_1 ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8005:1: ( ( rule__SubSystem__RelationshipAssignment_5_3_1 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8006:1: ( rule__SubSystem__RelationshipAssignment_5_3_1 )
-            {
-             before(grammarAccess.getSubSystemAccess().getRelationshipAssignment_5_3_1()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8007:1: ( rule__SubSystem__RelationshipAssignment_5_3_1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8007:2: rule__SubSystem__RelationshipAssignment_5_3_1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__RelationshipAssignment_5_3_1_in_rule__SubSystem__Group_5_3__1__Impl15894);
-            rule__SubSystem__RelationshipAssignment_5_3_1();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getSubSystemAccess().getRelationshipAssignment_5_3_1()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__SubSystem__Group_5_3__1__Impl"
-
-
-    // $ANTLR start "rule__SubSystem__Group_6__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8021:1: rule__SubSystem__Group_6__0 : rule__SubSystem__Group_6__0__Impl rule__SubSystem__Group_6__1 ;
-    public final void rule__SubSystem__Group_6__0() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8025:1: ( rule__SubSystem__Group_6__0__Impl rule__SubSystem__Group_6__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8026:2: rule__SubSystem__Group_6__0__Impl rule__SubSystem__Group_6__1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_6__0__Impl_in_rule__SubSystem__Group_6__015928);
-            rule__SubSystem__Group_6__0__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_6__1_in_rule__SubSystem__Group_6__015931);
-            rule__SubSystem__Group_6__1();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__SubSystem__Group_6__0"
-
-
-    // $ANTLR start "rule__SubSystem__Group_6__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8033:1: rule__SubSystem__Group_6__0__Impl : ( 'assembly' ) ;
-    public final void rule__SubSystem__Group_6__0__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8037:1: ( ( 'assembly' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8038:1: ( 'assembly' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8038:1: ( 'assembly' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8039:1: 'assembly'
-            {
-             before(grammarAccess.getSubSystemAccess().getAssemblyKeyword_6_0()); 
-            match(input,53,FollowSets000.FOLLOW_53_in_rule__SubSystem__Group_6__0__Impl15959); 
-             after(grammarAccess.getSubSystemAccess().getAssemblyKeyword_6_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__SubSystem__Group_6__0__Impl"
-
-
-    // $ANTLR start "rule__SubSystem__Group_6__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8052:1: rule__SubSystem__Group_6__1 : rule__SubSystem__Group_6__1__Impl ;
-    public final void rule__SubSystem__Group_6__1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8056:1: ( rule__SubSystem__Group_6__1__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8057:2: rule__SubSystem__Group_6__1__Impl
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_6__1__Impl_in_rule__SubSystem__Group_6__115990);
-            rule__SubSystem__Group_6__1__Impl();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__SubSystem__Group_6__1"
-
-
-    // $ANTLR start "rule__SubSystem__Group_6__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8063:1: rule__SubSystem__Group_6__1__Impl : ( ( rule__SubSystem__AssemblyAssignment_6_1 ) ) ;
-    public final void rule__SubSystem__Group_6__1__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8067:1: ( ( ( rule__SubSystem__AssemblyAssignment_6_1 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8068:1: ( ( rule__SubSystem__AssemblyAssignment_6_1 ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8068:1: ( ( rule__SubSystem__AssemblyAssignment_6_1 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8069:1: ( rule__SubSystem__AssemblyAssignment_6_1 )
-            {
-             before(grammarAccess.getSubSystemAccess().getAssemblyAssignment_6_1()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8070:1: ( rule__SubSystem__AssemblyAssignment_6_1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8070:2: rule__SubSystem__AssemblyAssignment_6_1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__AssemblyAssignment_6_1_in_rule__SubSystem__Group_6__1__Impl16017);
-            rule__SubSystem__AssemblyAssignment_6_1();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getSubSystemAccess().getAssemblyAssignment_6_1()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__SubSystem__Group_6__1__Impl"
-
-
-    // $ANTLR start "rule__ComposedStructureAssembly__Group__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8084:1: rule__ComposedStructureAssembly__Group__0 : rule__ComposedStructureAssembly__Group__0__Impl rule__ComposedStructureAssembly__Group__1 ;
-    public final void rule__ComposedStructureAssembly__Group__0() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8088:1: ( rule__ComposedStructureAssembly__Group__0__Impl rule__ComposedStructureAssembly__Group__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8089:2: rule__ComposedStructureAssembly__Group__0__Impl rule__ComposedStructureAssembly__Group__1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group__0__Impl_in_rule__ComposedStructureAssembly__Group__016051);
-            rule__ComposedStructureAssembly__Group__0__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group__1_in_rule__ComposedStructureAssembly__Group__016054);
-            rule__ComposedStructureAssembly__Group__1();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__ComposedStructureAssembly__Group__0"
-
-
-    // $ANTLR start "rule__ComposedStructureAssembly__Group__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8096:1: rule__ComposedStructureAssembly__Group__0__Impl : ( () ) ;
-    public final void rule__ComposedStructureAssembly__Group__0__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8100:1: ( ( () ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8101:1: ( () )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8101:1: ( () )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8102:1: ()
-            {
-             before(grammarAccess.getComposedStructureAssemblyAccess().getComposedStructureAssemblyAction_0()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8103:1: ()
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8105:1: 
-            {
-            }
-
-             after(grammarAccess.getComposedStructureAssemblyAccess().getComposedStructureAssemblyAction_0()); 
-
-            }
-
-
-            }
-
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__ComposedStructureAssembly__Group__0__Impl"
-
-
-    // $ANTLR start "rule__ComposedStructureAssembly__Group__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8115:1: rule__ComposedStructureAssembly__Group__1 : rule__ComposedStructureAssembly__Group__1__Impl rule__ComposedStructureAssembly__Group__2 ;
-    public final void rule__ComposedStructureAssembly__Group__1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8119:1: ( rule__ComposedStructureAssembly__Group__1__Impl rule__ComposedStructureAssembly__Group__2 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8120:2: rule__ComposedStructureAssembly__Group__1__Impl rule__ComposedStructureAssembly__Group__2
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group__1__Impl_in_rule__ComposedStructureAssembly__Group__116112);
-            rule__ComposedStructureAssembly__Group__1__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group__2_in_rule__ComposedStructureAssembly__Group__116115);
-            rule__ComposedStructureAssembly__Group__2();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__ComposedStructureAssembly__Group__1"
-
-
-    // $ANTLR start "rule__ComposedStructureAssembly__Group__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8127:1: rule__ComposedStructureAssembly__Group__1__Impl : ( 'ComposedStructureAssembly' ) ;
-    public final void rule__ComposedStructureAssembly__Group__1__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8131:1: ( ( 'ComposedStructureAssembly' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8132:1: ( 'ComposedStructureAssembly' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8132:1: ( 'ComposedStructureAssembly' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8133:1: 'ComposedStructureAssembly'
-            {
-             before(grammarAccess.getComposedStructureAssemblyAccess().getComposedStructureAssemblyKeyword_1()); 
-            match(input,55,FollowSets000.FOLLOW_55_in_rule__ComposedStructureAssembly__Group__1__Impl16143); 
-             after(grammarAccess.getComposedStructureAssemblyAccess().getComposedStructureAssemblyKeyword_1()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__ComposedStructureAssembly__Group__1__Impl"
-
-
-    // $ANTLR start "rule__ComposedStructureAssembly__Group__2"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8146:1: rule__ComposedStructureAssembly__Group__2 : rule__ComposedStructureAssembly__Group__2__Impl rule__ComposedStructureAssembly__Group__3 ;
-    public final void rule__ComposedStructureAssembly__Group__2() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8150:1: ( rule__ComposedStructureAssembly__Group__2__Impl rule__ComposedStructureAssembly__Group__3 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8151:2: rule__ComposedStructureAssembly__Group__2__Impl rule__ComposedStructureAssembly__Group__3
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group__2__Impl_in_rule__ComposedStructureAssembly__Group__216174);
-            rule__ComposedStructureAssembly__Group__2__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group__3_in_rule__ComposedStructureAssembly__Group__216177);
-            rule__ComposedStructureAssembly__Group__3();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__ComposedStructureAssembly__Group__2"
-
-
-    // $ANTLR start "rule__ComposedStructureAssembly__Group__2__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8158:1: rule__ComposedStructureAssembly__Group__2__Impl : ( '{' ) ;
-    public final void rule__ComposedStructureAssembly__Group__2__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8162:1: ( ( '{' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8163:1: ( '{' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8163:1: ( '{' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8164:1: '{'
-            {
-             before(grammarAccess.getComposedStructureAssemblyAccess().getLeftCurlyBracketKeyword_2()); 
-            match(input,20,FollowSets000.FOLLOW_20_in_rule__ComposedStructureAssembly__Group__2__Impl16205); 
-             after(grammarAccess.getComposedStructureAssemblyAccess().getLeftCurlyBracketKeyword_2()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__ComposedStructureAssembly__Group__2__Impl"
-
-
-    // $ANTLR start "rule__ComposedStructureAssembly__Group__3"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8177:1: rule__ComposedStructureAssembly__Group__3 : rule__ComposedStructureAssembly__Group__3__Impl rule__ComposedStructureAssembly__Group__4 ;
-    public final void rule__ComposedStructureAssembly__Group__3() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8181:1: ( rule__ComposedStructureAssembly__Group__3__Impl rule__ComposedStructureAssembly__Group__4 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8182:2: rule__ComposedStructureAssembly__Group__3__Impl rule__ComposedStructureAssembly__Group__4
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group__3__Impl_in_rule__ComposedStructureAssembly__Group__316236);
-            rule__ComposedStructureAssembly__Group__3__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group__4_in_rule__ComposedStructureAssembly__Group__316239);
-            rule__ComposedStructureAssembly__Group__4();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__ComposedStructureAssembly__Group__3"
-
-
-    // $ANTLR start "rule__ComposedStructureAssembly__Group__3__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8189:1: rule__ComposedStructureAssembly__Group__3__Impl : ( ( rule__ComposedStructureAssembly__Group_3__0 )? ) ;
-    public final void rule__ComposedStructureAssembly__Group__3__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8193:1: ( ( ( rule__ComposedStructureAssembly__Group_3__0 )? ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8194:1: ( ( rule__ComposedStructureAssembly__Group_3__0 )? )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8194:1: ( ( rule__ComposedStructureAssembly__Group_3__0 )? )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8195:1: ( rule__ComposedStructureAssembly__Group_3__0 )?
-            {
-             before(grammarAccess.getComposedStructureAssemblyAccess().getGroup_3()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8196:1: ( rule__ComposedStructureAssembly__Group_3__0 )?
-            int alt54=2;
-            int LA54_0 = input.LA(1);
-
-            if ( (LA54_0==56) ) {
-                alt54=1;
-            }
-            switch (alt54) {
-                case 1 :
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8196:2: rule__ComposedStructureAssembly__Group_3__0
-                    {
-                    pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_3__0_in_rule__ComposedStructureAssembly__Group__3__Impl16266);
-                    rule__ComposedStructureAssembly__Group_3__0();
-
-                    state._fsp--;
-
-
-                    }
-                    break;
-
-            }
-
-             after(grammarAccess.getComposedStructureAssemblyAccess().getGroup_3()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__ComposedStructureAssembly__Group__3__Impl"
-
-
-    // $ANTLR start "rule__ComposedStructureAssembly__Group__4"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8206:1: rule__ComposedStructureAssembly__Group__4 : rule__ComposedStructureAssembly__Group__4__Impl rule__ComposedStructureAssembly__Group__5 ;
-    public final void rule__ComposedStructureAssembly__Group__4() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8210:1: ( rule__ComposedStructureAssembly__Group__4__Impl rule__ComposedStructureAssembly__Group__5 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8211:2: rule__ComposedStructureAssembly__Group__4__Impl rule__ComposedStructureAssembly__Group__5
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group__4__Impl_in_rule__ComposedStructureAssembly__Group__416297);
-            rule__ComposedStructureAssembly__Group__4__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group__5_in_rule__ComposedStructureAssembly__Group__416300);
-            rule__ComposedStructureAssembly__Group__5();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__ComposedStructureAssembly__Group__4"
-
-
-    // $ANTLR start "rule__ComposedStructureAssembly__Group__4__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8218:1: rule__ComposedStructureAssembly__Group__4__Impl : ( ( rule__ComposedStructureAssembly__Group_4__0 )? ) ;
-    public final void rule__ComposedStructureAssembly__Group__4__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8222:1: ( ( ( rule__ComposedStructureAssembly__Group_4__0 )? ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8223:1: ( ( rule__ComposedStructureAssembly__Group_4__0 )? )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8223:1: ( ( rule__ComposedStructureAssembly__Group_4__0 )? )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8224:1: ( rule__ComposedStructureAssembly__Group_4__0 )?
-            {
-             before(grammarAccess.getComposedStructureAssemblyAccess().getGroup_4()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8225:1: ( rule__ComposedStructureAssembly__Group_4__0 )?
-            int alt55=2;
-            int LA55_0 = input.LA(1);
-
-            if ( (LA55_0==57) ) {
-                alt55=1;
-            }
-            switch (alt55) {
-                case 1 :
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8225:2: rule__ComposedStructureAssembly__Group_4__0
-                    {
-                    pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_4__0_in_rule__ComposedStructureAssembly__Group__4__Impl16327);
-                    rule__ComposedStructureAssembly__Group_4__0();
-
-                    state._fsp--;
-
-
-                    }
-                    break;
-
-            }
-
-             after(grammarAccess.getComposedStructureAssemblyAccess().getGroup_4()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__ComposedStructureAssembly__Group__4__Impl"
-
-
-    // $ANTLR start "rule__ComposedStructureAssembly__Group__5"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8235:1: rule__ComposedStructureAssembly__Group__5 : rule__ComposedStructureAssembly__Group__5__Impl rule__ComposedStructureAssembly__Group__6 ;
-    public final void rule__ComposedStructureAssembly__Group__5() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8239:1: ( rule__ComposedStructureAssembly__Group__5__Impl rule__ComposedStructureAssembly__Group__6 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8240:2: rule__ComposedStructureAssembly__Group__5__Impl rule__ComposedStructureAssembly__Group__6
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group__5__Impl_in_rule__ComposedStructureAssembly__Group__516358);
-            rule__ComposedStructureAssembly__Group__5__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group__6_in_rule__ComposedStructureAssembly__Group__516361);
-            rule__ComposedStructureAssembly__Group__6();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__ComposedStructureAssembly__Group__5"
-
-
-    // $ANTLR start "rule__ComposedStructureAssembly__Group__5__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8247:1: rule__ComposedStructureAssembly__Group__5__Impl : ( ( rule__ComposedStructureAssembly__Group_5__0 )? ) ;
-    public final void rule__ComposedStructureAssembly__Group__5__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8251:1: ( ( ( rule__ComposedStructureAssembly__Group_5__0 )? ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8252:1: ( ( rule__ComposedStructureAssembly__Group_5__0 )? )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8252:1: ( ( rule__ComposedStructureAssembly__Group_5__0 )? )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8253:1: ( rule__ComposedStructureAssembly__Group_5__0 )?
-            {
-             before(grammarAccess.getComposedStructureAssemblyAccess().getGroup_5()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8254:1: ( rule__ComposedStructureAssembly__Group_5__0 )?
-            int alt56=2;
-            int LA56_0 = input.LA(1);
-
-            if ( (LA56_0==58) ) {
-                alt56=1;
-            }
-            switch (alt56) {
-                case 1 :
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8254:2: rule__ComposedStructureAssembly__Group_5__0
-                    {
-                    pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_5__0_in_rule__ComposedStructureAssembly__Group__5__Impl16388);
-                    rule__ComposedStructureAssembly__Group_5__0();
-
-                    state._fsp--;
-
-
-                    }
-                    break;
-
-            }
-
-             after(grammarAccess.getComposedStructureAssemblyAccess().getGroup_5()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__ComposedStructureAssembly__Group__5__Impl"
-
-
-    // $ANTLR start "rule__ComposedStructureAssembly__Group__6"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8264:1: rule__ComposedStructureAssembly__Group__6 : rule__ComposedStructureAssembly__Group__6__Impl rule__ComposedStructureAssembly__Group__7 ;
-    public final void rule__ComposedStructureAssembly__Group__6() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8268:1: ( rule__ComposedStructureAssembly__Group__6__Impl rule__ComposedStructureAssembly__Group__7 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8269:2: rule__ComposedStructureAssembly__Group__6__Impl rule__ComposedStructureAssembly__Group__7
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group__6__Impl_in_rule__ComposedStructureAssembly__Group__616419);
-            rule__ComposedStructureAssembly__Group__6__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group__7_in_rule__ComposedStructureAssembly__Group__616422);
-            rule__ComposedStructureAssembly__Group__7();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__ComposedStructureAssembly__Group__6"
-
-
-    // $ANTLR start "rule__ComposedStructureAssembly__Group__6__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8276:1: rule__ComposedStructureAssembly__Group__6__Impl : ( ( rule__ComposedStructureAssembly__Group_6__0 )? ) ;
-    public final void rule__ComposedStructureAssembly__Group__6__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8280:1: ( ( ( rule__ComposedStructureAssembly__Group_6__0 )? ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8281:1: ( ( rule__ComposedStructureAssembly__Group_6__0 )? )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8281:1: ( ( rule__ComposedStructureAssembly__Group_6__0 )? )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8282:1: ( rule__ComposedStructureAssembly__Group_6__0 )?
-            {
-             before(grammarAccess.getComposedStructureAssemblyAccess().getGroup_6()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8283:1: ( rule__ComposedStructureAssembly__Group_6__0 )?
-            int alt57=2;
-            int LA57_0 = input.LA(1);
-
-            if ( (LA57_0==59) ) {
-                alt57=1;
-            }
-            switch (alt57) {
-                case 1 :
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8283:2: rule__ComposedStructureAssembly__Group_6__0
-                    {
-                    pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_6__0_in_rule__ComposedStructureAssembly__Group__6__Impl16449);
-                    rule__ComposedStructureAssembly__Group_6__0();
-
-                    state._fsp--;
-
-
-                    }
-                    break;
-
-            }
-
-             after(grammarAccess.getComposedStructureAssemblyAccess().getGroup_6()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__ComposedStructureAssembly__Group__6__Impl"
-
-
-    // $ANTLR start "rule__ComposedStructureAssembly__Group__7"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8293:1: rule__ComposedStructureAssembly__Group__7 : rule__ComposedStructureAssembly__Group__7__Impl ;
-    public final void rule__ComposedStructureAssembly__Group__7() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8297:1: ( rule__ComposedStructureAssembly__Group__7__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8298:2: rule__ComposedStructureAssembly__Group__7__Impl
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group__7__Impl_in_rule__ComposedStructureAssembly__Group__716480);
-            rule__ComposedStructureAssembly__Group__7__Impl();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__ComposedStructureAssembly__Group__7"
-
-
-    // $ANTLR start "rule__ComposedStructureAssembly__Group__7__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8304:1: rule__ComposedStructureAssembly__Group__7__Impl : ( '}' ) ;
-    public final void rule__ComposedStructureAssembly__Group__7__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8308:1: ( ( '}' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8309:1: ( '}' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8309:1: ( '}' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8310:1: '}'
-            {
-             before(grammarAccess.getComposedStructureAssemblyAccess().getRightCurlyBracketKeyword_7()); 
-            match(input,21,FollowSets000.FOLLOW_21_in_rule__ComposedStructureAssembly__Group__7__Impl16508); 
-             after(grammarAccess.getComposedStructureAssemblyAccess().getRightCurlyBracketKeyword_7()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__ComposedStructureAssembly__Group__7__Impl"
-
-
-    // $ANTLR start "rule__ComposedStructureAssembly__Group_3__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8339:1: rule__ComposedStructureAssembly__Group_3__0 : rule__ComposedStructureAssembly__Group_3__0__Impl rule__ComposedStructureAssembly__Group_3__1 ;
-    public final void rule__ComposedStructureAssembly__Group_3__0() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8343:1: ( rule__ComposedStructureAssembly__Group_3__0__Impl rule__ComposedStructureAssembly__Group_3__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8344:2: rule__ComposedStructureAssembly__Group_3__0__Impl rule__ComposedStructureAssembly__Group_3__1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_3__0__Impl_in_rule__ComposedStructureAssembly__Group_3__016555);
-            rule__ComposedStructureAssembly__Group_3__0__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_3__1_in_rule__ComposedStructureAssembly__Group_3__016558);
-            rule__ComposedStructureAssembly__Group_3__1();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__ComposedStructureAssembly__Group_3__0"
-
-
-    // $ANTLR start "rule__ComposedStructureAssembly__Group_3__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8351:1: rule__ComposedStructureAssembly__Group_3__0__Impl : ( 'assemblyContexts' ) ;
-    public final void rule__ComposedStructureAssembly__Group_3__0__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8355:1: ( ( 'assemblyContexts' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8356:1: ( 'assemblyContexts' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8356:1: ( 'assemblyContexts' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8357:1: 'assemblyContexts'
-            {
-             before(grammarAccess.getComposedStructureAssemblyAccess().getAssemblyContextsKeyword_3_0()); 
-            match(input,56,FollowSets000.FOLLOW_56_in_rule__ComposedStructureAssembly__Group_3__0__Impl16586); 
-             after(grammarAccess.getComposedStructureAssemblyAccess().getAssemblyContextsKeyword_3_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__ComposedStructureAssembly__Group_3__0__Impl"
-
-
-    // $ANTLR start "rule__ComposedStructureAssembly__Group_3__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8370:1: rule__ComposedStructureAssembly__Group_3__1 : rule__ComposedStructureAssembly__Group_3__1__Impl rule__ComposedStructureAssembly__Group_3__2 ;
-    public final void rule__ComposedStructureAssembly__Group_3__1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8374:1: ( rule__ComposedStructureAssembly__Group_3__1__Impl rule__ComposedStructureAssembly__Group_3__2 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8375:2: rule__ComposedStructureAssembly__Group_3__1__Impl rule__ComposedStructureAssembly__Group_3__2
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_3__1__Impl_in_rule__ComposedStructureAssembly__Group_3__116617);
-            rule__ComposedStructureAssembly__Group_3__1__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_3__2_in_rule__ComposedStructureAssembly__Group_3__116620);
-            rule__ComposedStructureAssembly__Group_3__2();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__ComposedStructureAssembly__Group_3__1"
-
-
-    // $ANTLR start "rule__ComposedStructureAssembly__Group_3__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8382:1: rule__ComposedStructureAssembly__Group_3__1__Impl : ( '{' ) ;
-    public final void rule__ComposedStructureAssembly__Group_3__1__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8386:1: ( ( '{' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8387:1: ( '{' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8387:1: ( '{' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8388:1: '{'
-            {
-             before(grammarAccess.getComposedStructureAssemblyAccess().getLeftCurlyBracketKeyword_3_1()); 
-            match(input,20,FollowSets000.FOLLOW_20_in_rule__ComposedStructureAssembly__Group_3__1__Impl16648); 
-             after(grammarAccess.getComposedStructureAssemblyAccess().getLeftCurlyBracketKeyword_3_1()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__ComposedStructureAssembly__Group_3__1__Impl"
-
-
-    // $ANTLR start "rule__ComposedStructureAssembly__Group_3__2"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8401:1: rule__ComposedStructureAssembly__Group_3__2 : rule__ComposedStructureAssembly__Group_3__2__Impl rule__ComposedStructureAssembly__Group_3__3 ;
-    public final void rule__ComposedStructureAssembly__Group_3__2() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8405:1: ( rule__ComposedStructureAssembly__Group_3__2__Impl rule__ComposedStructureAssembly__Group_3__3 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8406:2: rule__ComposedStructureAssembly__Group_3__2__Impl rule__ComposedStructureAssembly__Group_3__3
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_3__2__Impl_in_rule__ComposedStructureAssembly__Group_3__216679);
-            rule__ComposedStructureAssembly__Group_3__2__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_3__3_in_rule__ComposedStructureAssembly__Group_3__216682);
-            rule__ComposedStructureAssembly__Group_3__3();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__ComposedStructureAssembly__Group_3__2"
-
-
-    // $ANTLR start "rule__ComposedStructureAssembly__Group_3__2__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8413:1: rule__ComposedStructureAssembly__Group_3__2__Impl : ( ( rule__ComposedStructureAssembly__AssemblyContextsAssignment_3_2 ) ) ;
-    public final void rule__ComposedStructureAssembly__Group_3__2__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8417:1: ( ( ( rule__ComposedStructureAssembly__AssemblyContextsAssignment_3_2 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8418:1: ( ( rule__ComposedStructureAssembly__AssemblyContextsAssignment_3_2 ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8418:1: ( ( rule__ComposedStructureAssembly__AssemblyContextsAssignment_3_2 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8419:1: ( rule__ComposedStructureAssembly__AssemblyContextsAssignment_3_2 )
-            {
-             before(grammarAccess.getComposedStructureAssemblyAccess().getAssemblyContextsAssignment_3_2()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8420:1: ( rule__ComposedStructureAssembly__AssemblyContextsAssignment_3_2 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8420:2: rule__ComposedStructureAssembly__AssemblyContextsAssignment_3_2
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__AssemblyContextsAssignment_3_2_in_rule__ComposedStructureAssembly__Group_3__2__Impl16709);
-            rule__ComposedStructureAssembly__AssemblyContextsAssignment_3_2();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getComposedStructureAssemblyAccess().getAssemblyContextsAssignment_3_2()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__ComposedStructureAssembly__Group_3__2__Impl"
-
-
-    // $ANTLR start "rule__ComposedStructureAssembly__Group_3__3"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8430:1: rule__ComposedStructureAssembly__Group_3__3 : rule__ComposedStructureAssembly__Group_3__3__Impl rule__ComposedStructureAssembly__Group_3__4 ;
-    public final void rule__ComposedStructureAssembly__Group_3__3() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8434:1: ( rule__ComposedStructureAssembly__Group_3__3__Impl rule__ComposedStructureAssembly__Group_3__4 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8435:2: rule__ComposedStructureAssembly__Group_3__3__Impl rule__ComposedStructureAssembly__Group_3__4
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_3__3__Impl_in_rule__ComposedStructureAssembly__Group_3__316739);
-            rule__ComposedStructureAssembly__Group_3__3__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_3__4_in_rule__ComposedStructureAssembly__Group_3__316742);
-            rule__ComposedStructureAssembly__Group_3__4();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__ComposedStructureAssembly__Group_3__3"
-
-
-    // $ANTLR start "rule__ComposedStructureAssembly__Group_3__3__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8442:1: rule__ComposedStructureAssembly__Group_3__3__Impl : ( ( rule__ComposedStructureAssembly__Group_3_3__0 )* ) ;
-    public final void rule__ComposedStructureAssembly__Group_3__3__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8446:1: ( ( ( rule__ComposedStructureAssembly__Group_3_3__0 )* ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8447:1: ( ( rule__ComposedStructureAssembly__Group_3_3__0 )* )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8447:1: ( ( rule__ComposedStructureAssembly__Group_3_3__0 )* )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8448:1: ( rule__ComposedStructureAssembly__Group_3_3__0 )*
-            {
-             before(grammarAccess.getComposedStructureAssemblyAccess().getGroup_3_3()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8449:1: ( rule__ComposedStructureAssembly__Group_3_3__0 )*
-            loop58:
-            do {
-                int alt58=2;
-                int LA58_0 = input.LA(1);
-
-                if ( (LA58_0==23) ) {
-                    alt58=1;
-                }
-
-
-                switch (alt58) {
-            	case 1 :
-            	    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8449:2: rule__ComposedStructureAssembly__Group_3_3__0
-            	    {
-            	    pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_3_3__0_in_rule__ComposedStructureAssembly__Group_3__3__Impl16769);
-            	    rule__ComposedStructureAssembly__Group_3_3__0();
-
-            	    state._fsp--;
-
-
-            	    }
-            	    break;
-
-            	default :
-            	    break loop58;
-                }
-            } while (true);
-
-             after(grammarAccess.getComposedStructureAssemblyAccess().getGroup_3_3()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__ComposedStructureAssembly__Group_3__3__Impl"
-
-
-    // $ANTLR start "rule__ComposedStructureAssembly__Group_3__4"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8459:1: rule__ComposedStructureAssembly__Group_3__4 : rule__ComposedStructureAssembly__Group_3__4__Impl ;
-    public final void rule__ComposedStructureAssembly__Group_3__4() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8463:1: ( rule__ComposedStructureAssembly__Group_3__4__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8464:2: rule__ComposedStructureAssembly__Group_3__4__Impl
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_3__4__Impl_in_rule__ComposedStructureAssembly__Group_3__416800);
-            rule__ComposedStructureAssembly__Group_3__4__Impl();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__ComposedStructureAssembly__Group_3__4"
-
-
-    // $ANTLR start "rule__ComposedStructureAssembly__Group_3__4__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8470:1: rule__ComposedStructureAssembly__Group_3__4__Impl : ( '}' ) ;
-    public final void rule__ComposedStructureAssembly__Group_3__4__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8474:1: ( ( '}' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8475:1: ( '}' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8475:1: ( '}' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8476:1: '}'
-            {
-             before(grammarAccess.getComposedStructureAssemblyAccess().getRightCurlyBracketKeyword_3_4()); 
-            match(input,21,FollowSets000.FOLLOW_21_in_rule__ComposedStructureAssembly__Group_3__4__Impl16828); 
-             after(grammarAccess.getComposedStructureAssemblyAccess().getRightCurlyBracketKeyword_3_4()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__ComposedStructureAssembly__Group_3__4__Impl"
-
-
-    // $ANTLR start "rule__ComposedStructureAssembly__Group_3_3__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8499:1: rule__ComposedStructureAssembly__Group_3_3__0 : rule__ComposedStructureAssembly__Group_3_3__0__Impl rule__ComposedStructureAssembly__Group_3_3__1 ;
-    public final void rule__ComposedStructureAssembly__Group_3_3__0() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8503:1: ( rule__ComposedStructureAssembly__Group_3_3__0__Impl rule__ComposedStructureAssembly__Group_3_3__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8504:2: rule__ComposedStructureAssembly__Group_3_3__0__Impl rule__ComposedStructureAssembly__Group_3_3__1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_3_3__0__Impl_in_rule__ComposedStructureAssembly__Group_3_3__016869);
-            rule__ComposedStructureAssembly__Group_3_3__0__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_3_3__1_in_rule__ComposedStructureAssembly__Group_3_3__016872);
-            rule__ComposedStructureAssembly__Group_3_3__1();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__ComposedStructureAssembly__Group_3_3__0"
-
-
-    // $ANTLR start "rule__ComposedStructureAssembly__Group_3_3__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8511:1: rule__ComposedStructureAssembly__Group_3_3__0__Impl : ( ',' ) ;
-    public final void rule__ComposedStructureAssembly__Group_3_3__0__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8515:1: ( ( ',' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8516:1: ( ',' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8516:1: ( ',' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8517:1: ','
-            {
-             before(grammarAccess.getComposedStructureAssemblyAccess().getCommaKeyword_3_3_0()); 
-            match(input,23,FollowSets000.FOLLOW_23_in_rule__ComposedStructureAssembly__Group_3_3__0__Impl16900); 
-             after(grammarAccess.getComposedStructureAssemblyAccess().getCommaKeyword_3_3_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__ComposedStructureAssembly__Group_3_3__0__Impl"
-
-
-    // $ANTLR start "rule__ComposedStructureAssembly__Group_3_3__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8530:1: rule__ComposedStructureAssembly__Group_3_3__1 : rule__ComposedStructureAssembly__Group_3_3__1__Impl ;
-    public final void rule__ComposedStructureAssembly__Group_3_3__1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8534:1: ( rule__ComposedStructureAssembly__Group_3_3__1__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8535:2: rule__ComposedStructureAssembly__Group_3_3__1__Impl
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_3_3__1__Impl_in_rule__ComposedStructureAssembly__Group_3_3__116931);
-            rule__ComposedStructureAssembly__Group_3_3__1__Impl();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__ComposedStructureAssembly__Group_3_3__1"
-
-
-    // $ANTLR start "rule__ComposedStructureAssembly__Group_3_3__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8541:1: rule__ComposedStructureAssembly__Group_3_3__1__Impl : ( ( rule__ComposedStructureAssembly__AssemblyContextsAssignment_3_3_1 ) ) ;
-    public final void rule__ComposedStructureAssembly__Group_3_3__1__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8545:1: ( ( ( rule__ComposedStructureAssembly__AssemblyContextsAssignment_3_3_1 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8546:1: ( ( rule__ComposedStructureAssembly__AssemblyContextsAssignment_3_3_1 ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8546:1: ( ( rule__ComposedStructureAssembly__AssemblyContextsAssignment_3_3_1 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8547:1: ( rule__ComposedStructureAssembly__AssemblyContextsAssignment_3_3_1 )
-            {
-             before(grammarAccess.getComposedStructureAssemblyAccess().getAssemblyContextsAssignment_3_3_1()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8548:1: ( rule__ComposedStructureAssembly__AssemblyContextsAssignment_3_3_1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8548:2: rule__ComposedStructureAssembly__AssemblyContextsAssignment_3_3_1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__AssemblyContextsAssignment_3_3_1_in_rule__ComposedStructureAssembly__Group_3_3__1__Impl16958);
-            rule__ComposedStructureAssembly__AssemblyContextsAssignment_3_3_1();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getComposedStructureAssemblyAccess().getAssemblyContextsAssignment_3_3_1()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__ComposedStructureAssembly__Group_3_3__1__Impl"
-
-
-    // $ANTLR start "rule__ComposedStructureAssembly__Group_4__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8562:1: rule__ComposedStructureAssembly__Group_4__0 : rule__ComposedStructureAssembly__Group_4__0__Impl rule__ComposedStructureAssembly__Group_4__1 ;
-    public final void rule__ComposedStructureAssembly__Group_4__0() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8566:1: ( rule__ComposedStructureAssembly__Group_4__0__Impl rule__ComposedStructureAssembly__Group_4__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8567:2: rule__ComposedStructureAssembly__Group_4__0__Impl rule__ComposedStructureAssembly__Group_4__1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_4__0__Impl_in_rule__ComposedStructureAssembly__Group_4__016992);
-            rule__ComposedStructureAssembly__Group_4__0__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_4__1_in_rule__ComposedStructureAssembly__Group_4__016995);
-            rule__ComposedStructureAssembly__Group_4__1();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__ComposedStructureAssembly__Group_4__0"
-
-
-    // $ANTLR start "rule__ComposedStructureAssembly__Group_4__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8574:1: rule__ComposedStructureAssembly__Group_4__0__Impl : ( 'assemblyConnectors' ) ;
-    public final void rule__ComposedStructureAssembly__Group_4__0__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8578:1: ( ( 'assemblyConnectors' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8579:1: ( 'assemblyConnectors' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8579:1: ( 'assemblyConnectors' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8580:1: 'assemblyConnectors'
-            {
-             before(grammarAccess.getComposedStructureAssemblyAccess().getAssemblyConnectorsKeyword_4_0()); 
-            match(input,57,FollowSets000.FOLLOW_57_in_rule__ComposedStructureAssembly__Group_4__0__Impl17023); 
-             after(grammarAccess.getComposedStructureAssemblyAccess().getAssemblyConnectorsKeyword_4_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__ComposedStructureAssembly__Group_4__0__Impl"
-
-
-    // $ANTLR start "rule__ComposedStructureAssembly__Group_4__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8593:1: rule__ComposedStructureAssembly__Group_4__1 : rule__ComposedStructureAssembly__Group_4__1__Impl rule__ComposedStructureAssembly__Group_4__2 ;
-    public final void rule__ComposedStructureAssembly__Group_4__1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8597:1: ( rule__ComposedStructureAssembly__Group_4__1__Impl rule__ComposedStructureAssembly__Group_4__2 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8598:2: rule__ComposedStructureAssembly__Group_4__1__Impl rule__ComposedStructureAssembly__Group_4__2
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_4__1__Impl_in_rule__ComposedStructureAssembly__Group_4__117054);
-            rule__ComposedStructureAssembly__Group_4__1__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_4__2_in_rule__ComposedStructureAssembly__Group_4__117057);
-            rule__ComposedStructureAssembly__Group_4__2();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__ComposedStructureAssembly__Group_4__1"
-
-
-    // $ANTLR start "rule__ComposedStructureAssembly__Group_4__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8605:1: rule__ComposedStructureAssembly__Group_4__1__Impl : ( '{' ) ;
-    public final void rule__ComposedStructureAssembly__Group_4__1__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8609:1: ( ( '{' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8610:1: ( '{' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8610:1: ( '{' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8611:1: '{'
-            {
-             before(grammarAccess.getComposedStructureAssemblyAccess().getLeftCurlyBracketKeyword_4_1()); 
-            match(input,20,FollowSets000.FOLLOW_20_in_rule__ComposedStructureAssembly__Group_4__1__Impl17085); 
-             after(grammarAccess.getComposedStructureAssemblyAccess().getLeftCurlyBracketKeyword_4_1()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__ComposedStructureAssembly__Group_4__1__Impl"
-
-
-    // $ANTLR start "rule__ComposedStructureAssembly__Group_4__2"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8624:1: rule__ComposedStructureAssembly__Group_4__2 : rule__ComposedStructureAssembly__Group_4__2__Impl rule__ComposedStructureAssembly__Group_4__3 ;
-    public final void rule__ComposedStructureAssembly__Group_4__2() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8628:1: ( rule__ComposedStructureAssembly__Group_4__2__Impl rule__ComposedStructureAssembly__Group_4__3 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8629:2: rule__ComposedStructureAssembly__Group_4__2__Impl rule__ComposedStructureAssembly__Group_4__3
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_4__2__Impl_in_rule__ComposedStructureAssembly__Group_4__217116);
-            rule__ComposedStructureAssembly__Group_4__2__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_4__3_in_rule__ComposedStructureAssembly__Group_4__217119);
-            rule__ComposedStructureAssembly__Group_4__3();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__ComposedStructureAssembly__Group_4__2"
-
-
-    // $ANTLR start "rule__ComposedStructureAssembly__Group_4__2__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8636:1: rule__ComposedStructureAssembly__Group_4__2__Impl : ( ( rule__ComposedStructureAssembly__AssemblyConnectorsAssignment_4_2 ) ) ;
-    public final void rule__ComposedStructureAssembly__Group_4__2__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8640:1: ( ( ( rule__ComposedStructureAssembly__AssemblyConnectorsAssignment_4_2 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8641:1: ( ( rule__ComposedStructureAssembly__AssemblyConnectorsAssignment_4_2 ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8641:1: ( ( rule__ComposedStructureAssembly__AssemblyConnectorsAssignment_4_2 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8642:1: ( rule__ComposedStructureAssembly__AssemblyConnectorsAssignment_4_2 )
-            {
-             before(grammarAccess.getComposedStructureAssemblyAccess().getAssemblyConnectorsAssignment_4_2()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8643:1: ( rule__ComposedStructureAssembly__AssemblyConnectorsAssignment_4_2 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8643:2: rule__ComposedStructureAssembly__AssemblyConnectorsAssignment_4_2
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__AssemblyConnectorsAssignment_4_2_in_rule__ComposedStructureAssembly__Group_4__2__Impl17146);
-            rule__ComposedStructureAssembly__AssemblyConnectorsAssignment_4_2();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getComposedStructureAssemblyAccess().getAssemblyConnectorsAssignment_4_2()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__ComposedStructureAssembly__Group_4__2__Impl"
-
-
-    // $ANTLR start "rule__ComposedStructureAssembly__Group_4__3"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8653:1: rule__ComposedStructureAssembly__Group_4__3 : rule__ComposedStructureAssembly__Group_4__3__Impl rule__ComposedStructureAssembly__Group_4__4 ;
-    public final void rule__ComposedStructureAssembly__Group_4__3() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8657:1: ( rule__ComposedStructureAssembly__Group_4__3__Impl rule__ComposedStructureAssembly__Group_4__4 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8658:2: rule__ComposedStructureAssembly__Group_4__3__Impl rule__ComposedStructureAssembly__Group_4__4
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_4__3__Impl_in_rule__ComposedStructureAssembly__Group_4__317176);
-            rule__ComposedStructureAssembly__Group_4__3__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_4__4_in_rule__ComposedStructureAssembly__Group_4__317179);
-            rule__ComposedStructureAssembly__Group_4__4();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__ComposedStructureAssembly__Group_4__3"
-
-
-    // $ANTLR start "rule__ComposedStructureAssembly__Group_4__3__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8665:1: rule__ComposedStructureAssembly__Group_4__3__Impl : ( ( rule__ComposedStructureAssembly__Group_4_3__0 )* ) ;
-    public final void rule__ComposedStructureAssembly__Group_4__3__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8669:1: ( ( ( rule__ComposedStructureAssembly__Group_4_3__0 )* ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8670:1: ( ( rule__ComposedStructureAssembly__Group_4_3__0 )* )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8670:1: ( ( rule__ComposedStructureAssembly__Group_4_3__0 )* )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8671:1: ( rule__ComposedStructureAssembly__Group_4_3__0 )*
-            {
-             before(grammarAccess.getComposedStructureAssemblyAccess().getGroup_4_3()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8672:1: ( rule__ComposedStructureAssembly__Group_4_3__0 )*
-            loop59:
-            do {
-                int alt59=2;
-                int LA59_0 = input.LA(1);
-
-                if ( (LA59_0==23) ) {
-                    alt59=1;
-                }
-
-
-                switch (alt59) {
-            	case 1 :
-            	    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8672:2: rule__ComposedStructureAssembly__Group_4_3__0
-            	    {
-            	    pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_4_3__0_in_rule__ComposedStructureAssembly__Group_4__3__Impl17206);
-            	    rule__ComposedStructureAssembly__Group_4_3__0();
-
-            	    state._fsp--;
-
-
-            	    }
-            	    break;
-
-            	default :
-            	    break loop59;
-                }
-            } while (true);
-
-             after(grammarAccess.getComposedStructureAssemblyAccess().getGroup_4_3()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__ComposedStructureAssembly__Group_4__3__Impl"
-
-
-    // $ANTLR start "rule__ComposedStructureAssembly__Group_4__4"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8682:1: rule__ComposedStructureAssembly__Group_4__4 : rule__ComposedStructureAssembly__Group_4__4__Impl ;
-    public final void rule__ComposedStructureAssembly__Group_4__4() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8686:1: ( rule__ComposedStructureAssembly__Group_4__4__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8687:2: rule__ComposedStructureAssembly__Group_4__4__Impl
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_4__4__Impl_in_rule__ComposedStructureAssembly__Group_4__417237);
-            rule__ComposedStructureAssembly__Group_4__4__Impl();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__ComposedStructureAssembly__Group_4__4"
-
-
-    // $ANTLR start "rule__ComposedStructureAssembly__Group_4__4__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8693:1: rule__ComposedStructureAssembly__Group_4__4__Impl : ( '}' ) ;
-    public final void rule__ComposedStructureAssembly__Group_4__4__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8697:1: ( ( '}' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8698:1: ( '}' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8698:1: ( '}' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8699:1: '}'
-            {
-             before(grammarAccess.getComposedStructureAssemblyAccess().getRightCurlyBracketKeyword_4_4()); 
-            match(input,21,FollowSets000.FOLLOW_21_in_rule__ComposedStructureAssembly__Group_4__4__Impl17265); 
-             after(grammarAccess.getComposedStructureAssemblyAccess().getRightCurlyBracketKeyword_4_4()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__ComposedStructureAssembly__Group_4__4__Impl"
-
-
-    // $ANTLR start "rule__ComposedStructureAssembly__Group_4_3__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8722:1: rule__ComposedStructureAssembly__Group_4_3__0 : rule__ComposedStructureAssembly__Group_4_3__0__Impl rule__ComposedStructureAssembly__Group_4_3__1 ;
-    public final void rule__ComposedStructureAssembly__Group_4_3__0() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8726:1: ( rule__ComposedStructureAssembly__Group_4_3__0__Impl rule__ComposedStructureAssembly__Group_4_3__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8727:2: rule__ComposedStructureAssembly__Group_4_3__0__Impl rule__ComposedStructureAssembly__Group_4_3__1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_4_3__0__Impl_in_rule__ComposedStructureAssembly__Group_4_3__017306);
-            rule__ComposedStructureAssembly__Group_4_3__0__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_4_3__1_in_rule__ComposedStructureAssembly__Group_4_3__017309);
-            rule__ComposedStructureAssembly__Group_4_3__1();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__ComposedStructureAssembly__Group_4_3__0"
-
-
-    // $ANTLR start "rule__ComposedStructureAssembly__Group_4_3__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8734:1: rule__ComposedStructureAssembly__Group_4_3__0__Impl : ( ',' ) ;
-    public final void rule__ComposedStructureAssembly__Group_4_3__0__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8738:1: ( ( ',' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8739:1: ( ',' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8739:1: ( ',' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8740:1: ','
-            {
-             before(grammarAccess.getComposedStructureAssemblyAccess().getCommaKeyword_4_3_0()); 
-            match(input,23,FollowSets000.FOLLOW_23_in_rule__ComposedStructureAssembly__Group_4_3__0__Impl17337); 
-             after(grammarAccess.getComposedStructureAssemblyAccess().getCommaKeyword_4_3_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__ComposedStructureAssembly__Group_4_3__0__Impl"
-
-
-    // $ANTLR start "rule__ComposedStructureAssembly__Group_4_3__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8753:1: rule__ComposedStructureAssembly__Group_4_3__1 : rule__ComposedStructureAssembly__Group_4_3__1__Impl ;
-    public final void rule__ComposedStructureAssembly__Group_4_3__1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8757:1: ( rule__ComposedStructureAssembly__Group_4_3__1__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8758:2: rule__ComposedStructureAssembly__Group_4_3__1__Impl
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_4_3__1__Impl_in_rule__ComposedStructureAssembly__Group_4_3__117368);
-            rule__ComposedStructureAssembly__Group_4_3__1__Impl();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__ComposedStructureAssembly__Group_4_3__1"
-
-
-    // $ANTLR start "rule__ComposedStructureAssembly__Group_4_3__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8764:1: rule__ComposedStructureAssembly__Group_4_3__1__Impl : ( ( rule__ComposedStructureAssembly__AssemblyConnectorsAssignment_4_3_1 ) ) ;
-    public final void rule__ComposedStructureAssembly__Group_4_3__1__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8768:1: ( ( ( rule__ComposedStructureAssembly__AssemblyConnectorsAssignment_4_3_1 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8769:1: ( ( rule__ComposedStructureAssembly__AssemblyConnectorsAssignment_4_3_1 ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8769:1: ( ( rule__ComposedStructureAssembly__AssemblyConnectorsAssignment_4_3_1 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8770:1: ( rule__ComposedStructureAssembly__AssemblyConnectorsAssignment_4_3_1 )
-            {
-             before(grammarAccess.getComposedStructureAssemblyAccess().getAssemblyConnectorsAssignment_4_3_1()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8771:1: ( rule__ComposedStructureAssembly__AssemblyConnectorsAssignment_4_3_1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8771:2: rule__ComposedStructureAssembly__AssemblyConnectorsAssignment_4_3_1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__AssemblyConnectorsAssignment_4_3_1_in_rule__ComposedStructureAssembly__Group_4_3__1__Impl17395);
-            rule__ComposedStructureAssembly__AssemblyConnectorsAssignment_4_3_1();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getComposedStructureAssemblyAccess().getAssemblyConnectorsAssignment_4_3_1()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__ComposedStructureAssembly__Group_4_3__1__Impl"
-
-
-    // $ANTLR start "rule__ComposedStructureAssembly__Group_5__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8785:1: rule__ComposedStructureAssembly__Group_5__0 : rule__ComposedStructureAssembly__Group_5__0__Impl rule__ComposedStructureAssembly__Group_5__1 ;
-    public final void rule__ComposedStructureAssembly__Group_5__0() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8789:1: ( rule__ComposedStructureAssembly__Group_5__0__Impl rule__ComposedStructureAssembly__Group_5__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8790:2: rule__ComposedStructureAssembly__Group_5__0__Impl rule__ComposedStructureAssembly__Group_5__1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_5__0__Impl_in_rule__ComposedStructureAssembly__Group_5__017429);
-            rule__ComposedStructureAssembly__Group_5__0__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_5__1_in_rule__ComposedStructureAssembly__Group_5__017432);
-            rule__ComposedStructureAssembly__Group_5__1();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__ComposedStructureAssembly__Group_5__0"
-
-
-    // $ANTLR start "rule__ComposedStructureAssembly__Group_5__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8797:1: rule__ComposedStructureAssembly__Group_5__0__Impl : ( 'providedDelegationConnectors' ) ;
-    public final void rule__ComposedStructureAssembly__Group_5__0__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8801:1: ( ( 'providedDelegationConnectors' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8802:1: ( 'providedDelegationConnectors' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8802:1: ( 'providedDelegationConnectors' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8803:1: 'providedDelegationConnectors'
-            {
-             before(grammarAccess.getComposedStructureAssemblyAccess().getProvidedDelegationConnectorsKeyword_5_0()); 
-            match(input,58,FollowSets000.FOLLOW_58_in_rule__ComposedStructureAssembly__Group_5__0__Impl17460); 
-             after(grammarAccess.getComposedStructureAssemblyAccess().getProvidedDelegationConnectorsKeyword_5_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__ComposedStructureAssembly__Group_5__0__Impl"
-
-
-    // $ANTLR start "rule__ComposedStructureAssembly__Group_5__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8816:1: rule__ComposedStructureAssembly__Group_5__1 : rule__ComposedStructureAssembly__Group_5__1__Impl rule__ComposedStructureAssembly__Group_5__2 ;
-    public final void rule__ComposedStructureAssembly__Group_5__1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8820:1: ( rule__ComposedStructureAssembly__Group_5__1__Impl rule__ComposedStructureAssembly__Group_5__2 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8821:2: rule__ComposedStructureAssembly__Group_5__1__Impl rule__ComposedStructureAssembly__Group_5__2
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_5__1__Impl_in_rule__ComposedStructureAssembly__Group_5__117491);
-            rule__ComposedStructureAssembly__Group_5__1__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_5__2_in_rule__ComposedStructureAssembly__Group_5__117494);
-            rule__ComposedStructureAssembly__Group_5__2();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__ComposedStructureAssembly__Group_5__1"
-
-
-    // $ANTLR start "rule__ComposedStructureAssembly__Group_5__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8828:1: rule__ComposedStructureAssembly__Group_5__1__Impl : ( '{' ) ;
-    public final void rule__ComposedStructureAssembly__Group_5__1__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8832:1: ( ( '{' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8833:1: ( '{' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8833:1: ( '{' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8834:1: '{'
-            {
-             before(grammarAccess.getComposedStructureAssemblyAccess().getLeftCurlyBracketKeyword_5_1()); 
-            match(input,20,FollowSets000.FOLLOW_20_in_rule__ComposedStructureAssembly__Group_5__1__Impl17522); 
-             after(grammarAccess.getComposedStructureAssemblyAccess().getLeftCurlyBracketKeyword_5_1()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__ComposedStructureAssembly__Group_5__1__Impl"
-
-
-    // $ANTLR start "rule__ComposedStructureAssembly__Group_5__2"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8847:1: rule__ComposedStructureAssembly__Group_5__2 : rule__ComposedStructureAssembly__Group_5__2__Impl rule__ComposedStructureAssembly__Group_5__3 ;
-    public final void rule__ComposedStructureAssembly__Group_5__2() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8851:1: ( rule__ComposedStructureAssembly__Group_5__2__Impl rule__ComposedStructureAssembly__Group_5__3 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8852:2: rule__ComposedStructureAssembly__Group_5__2__Impl rule__ComposedStructureAssembly__Group_5__3
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_5__2__Impl_in_rule__ComposedStructureAssembly__Group_5__217553);
-            rule__ComposedStructureAssembly__Group_5__2__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_5__3_in_rule__ComposedStructureAssembly__Group_5__217556);
-            rule__ComposedStructureAssembly__Group_5__3();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__ComposedStructureAssembly__Group_5__2"
-
-
-    // $ANTLR start "rule__ComposedStructureAssembly__Group_5__2__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8859:1: rule__ComposedStructureAssembly__Group_5__2__Impl : ( ( rule__ComposedStructureAssembly__ProvidedDelegationConnectorsAssignment_5_2 ) ) ;
-    public final void rule__ComposedStructureAssembly__Group_5__2__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8863:1: ( ( ( rule__ComposedStructureAssembly__ProvidedDelegationConnectorsAssignment_5_2 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8864:1: ( ( rule__ComposedStructureAssembly__ProvidedDelegationConnectorsAssignment_5_2 ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8864:1: ( ( rule__ComposedStructureAssembly__ProvidedDelegationConnectorsAssignment_5_2 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8865:1: ( rule__ComposedStructureAssembly__ProvidedDelegationConnectorsAssignment_5_2 )
-            {
-             before(grammarAccess.getComposedStructureAssemblyAccess().getProvidedDelegationConnectorsAssignment_5_2()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8866:1: ( rule__ComposedStructureAssembly__ProvidedDelegationConnectorsAssignment_5_2 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8866:2: rule__ComposedStructureAssembly__ProvidedDelegationConnectorsAssignment_5_2
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__ProvidedDelegationConnectorsAssignment_5_2_in_rule__ComposedStructureAssembly__Group_5__2__Impl17583);
-            rule__ComposedStructureAssembly__ProvidedDelegationConnectorsAssignment_5_2();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getComposedStructureAssemblyAccess().getProvidedDelegationConnectorsAssignment_5_2()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__ComposedStructureAssembly__Group_5__2__Impl"
-
-
-    // $ANTLR start "rule__ComposedStructureAssembly__Group_5__3"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8876:1: rule__ComposedStructureAssembly__Group_5__3 : rule__ComposedStructureAssembly__Group_5__3__Impl rule__ComposedStructureAssembly__Group_5__4 ;
-    public final void rule__ComposedStructureAssembly__Group_5__3() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8880:1: ( rule__ComposedStructureAssembly__Group_5__3__Impl rule__ComposedStructureAssembly__Group_5__4 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8881:2: rule__ComposedStructureAssembly__Group_5__3__Impl rule__ComposedStructureAssembly__Group_5__4
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_5__3__Impl_in_rule__ComposedStructureAssembly__Group_5__317613);
-            rule__ComposedStructureAssembly__Group_5__3__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_5__4_in_rule__ComposedStructureAssembly__Group_5__317616);
-            rule__ComposedStructureAssembly__Group_5__4();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__ComposedStructureAssembly__Group_5__3"
-
-
-    // $ANTLR start "rule__ComposedStructureAssembly__Group_5__3__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8888:1: rule__ComposedStructureAssembly__Group_5__3__Impl : ( ( rule__ComposedStructureAssembly__Group_5_3__0 )* ) ;
-    public final void rule__ComposedStructureAssembly__Group_5__3__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8892:1: ( ( ( rule__ComposedStructureAssembly__Group_5_3__0 )* ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8893:1: ( ( rule__ComposedStructureAssembly__Group_5_3__0 )* )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8893:1: ( ( rule__ComposedStructureAssembly__Group_5_3__0 )* )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8894:1: ( rule__ComposedStructureAssembly__Group_5_3__0 )*
-            {
-             before(grammarAccess.getComposedStructureAssemblyAccess().getGroup_5_3()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8895:1: ( rule__ComposedStructureAssembly__Group_5_3__0 )*
-            loop60:
-            do {
-                int alt60=2;
-                int LA60_0 = input.LA(1);
-
-                if ( (LA60_0==23) ) {
-                    alt60=1;
-                }
-
-
-                switch (alt60) {
-            	case 1 :
-            	    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8895:2: rule__ComposedStructureAssembly__Group_5_3__0
-            	    {
-            	    pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_5_3__0_in_rule__ComposedStructureAssembly__Group_5__3__Impl17643);
-            	    rule__ComposedStructureAssembly__Group_5_3__0();
-
-            	    state._fsp--;
-
-
-            	    }
-            	    break;
-
-            	default :
-            	    break loop60;
-                }
-            } while (true);
-
-             after(grammarAccess.getComposedStructureAssemblyAccess().getGroup_5_3()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__ComposedStructureAssembly__Group_5__3__Impl"
-
-
-    // $ANTLR start "rule__ComposedStructureAssembly__Group_5__4"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8905:1: rule__ComposedStructureAssembly__Group_5__4 : rule__ComposedStructureAssembly__Group_5__4__Impl ;
-    public final void rule__ComposedStructureAssembly__Group_5__4() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8909:1: ( rule__ComposedStructureAssembly__Group_5__4__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8910:2: rule__ComposedStructureAssembly__Group_5__4__Impl
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_5__4__Impl_in_rule__ComposedStructureAssembly__Group_5__417674);
-            rule__ComposedStructureAssembly__Group_5__4__Impl();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__ComposedStructureAssembly__Group_5__4"
-
-
-    // $ANTLR start "rule__ComposedStructureAssembly__Group_5__4__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8916:1: rule__ComposedStructureAssembly__Group_5__4__Impl : ( '}' ) ;
-    public final void rule__ComposedStructureAssembly__Group_5__4__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8920:1: ( ( '}' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8921:1: ( '}' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8921:1: ( '}' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8922:1: '}'
-            {
-             before(grammarAccess.getComposedStructureAssemblyAccess().getRightCurlyBracketKeyword_5_4()); 
-            match(input,21,FollowSets000.FOLLOW_21_in_rule__ComposedStructureAssembly__Group_5__4__Impl17702); 
-             after(grammarAccess.getComposedStructureAssemblyAccess().getRightCurlyBracketKeyword_5_4()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__ComposedStructureAssembly__Group_5__4__Impl"
-
-
-    // $ANTLR start "rule__ComposedStructureAssembly__Group_5_3__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8945:1: rule__ComposedStructureAssembly__Group_5_3__0 : rule__ComposedStructureAssembly__Group_5_3__0__Impl rule__ComposedStructureAssembly__Group_5_3__1 ;
-    public final void rule__ComposedStructureAssembly__Group_5_3__0() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8949:1: ( rule__ComposedStructureAssembly__Group_5_3__0__Impl rule__ComposedStructureAssembly__Group_5_3__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8950:2: rule__ComposedStructureAssembly__Group_5_3__0__Impl rule__ComposedStructureAssembly__Group_5_3__1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_5_3__0__Impl_in_rule__ComposedStructureAssembly__Group_5_3__017743);
-            rule__ComposedStructureAssembly__Group_5_3__0__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_5_3__1_in_rule__ComposedStructureAssembly__Group_5_3__017746);
-            rule__ComposedStructureAssembly__Group_5_3__1();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__ComposedStructureAssembly__Group_5_3__0"
-
-
-    // $ANTLR start "rule__ComposedStructureAssembly__Group_5_3__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8957:1: rule__ComposedStructureAssembly__Group_5_3__0__Impl : ( ',' ) ;
-    public final void rule__ComposedStructureAssembly__Group_5_3__0__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8961:1: ( ( ',' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8962:1: ( ',' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8962:1: ( ',' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8963:1: ','
-            {
-             before(grammarAccess.getComposedStructureAssemblyAccess().getCommaKeyword_5_3_0()); 
-            match(input,23,FollowSets000.FOLLOW_23_in_rule__ComposedStructureAssembly__Group_5_3__0__Impl17774); 
-             after(grammarAccess.getComposedStructureAssemblyAccess().getCommaKeyword_5_3_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__ComposedStructureAssembly__Group_5_3__0__Impl"
-
-
-    // $ANTLR start "rule__ComposedStructureAssembly__Group_5_3__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8976:1: rule__ComposedStructureAssembly__Group_5_3__1 : rule__ComposedStructureAssembly__Group_5_3__1__Impl ;
-    public final void rule__ComposedStructureAssembly__Group_5_3__1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8980:1: ( rule__ComposedStructureAssembly__Group_5_3__1__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8981:2: rule__ComposedStructureAssembly__Group_5_3__1__Impl
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_5_3__1__Impl_in_rule__ComposedStructureAssembly__Group_5_3__117805);
-            rule__ComposedStructureAssembly__Group_5_3__1__Impl();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__ComposedStructureAssembly__Group_5_3__1"
-
-
-    // $ANTLR start "rule__ComposedStructureAssembly__Group_5_3__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8987:1: rule__ComposedStructureAssembly__Group_5_3__1__Impl : ( ( rule__ComposedStructureAssembly__ProvidedDelegationConnectorsAssignment_5_3_1 ) ) ;
-    public final void rule__ComposedStructureAssembly__Group_5_3__1__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8991:1: ( ( ( rule__ComposedStructureAssembly__ProvidedDelegationConnectorsAssignment_5_3_1 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8992:1: ( ( rule__ComposedStructureAssembly__ProvidedDelegationConnectorsAssignment_5_3_1 ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8992:1: ( ( rule__ComposedStructureAssembly__ProvidedDelegationConnectorsAssignment_5_3_1 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8993:1: ( rule__ComposedStructureAssembly__ProvidedDelegationConnectorsAssignment_5_3_1 )
-            {
-             before(grammarAccess.getComposedStructureAssemblyAccess().getProvidedDelegationConnectorsAssignment_5_3_1()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8994:1: ( rule__ComposedStructureAssembly__ProvidedDelegationConnectorsAssignment_5_3_1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8994:2: rule__ComposedStructureAssembly__ProvidedDelegationConnectorsAssignment_5_3_1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__ProvidedDelegationConnectorsAssignment_5_3_1_in_rule__ComposedStructureAssembly__Group_5_3__1__Impl17832);
-            rule__ComposedStructureAssembly__ProvidedDelegationConnectorsAssignment_5_3_1();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getComposedStructureAssemblyAccess().getProvidedDelegationConnectorsAssignment_5_3_1()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__ComposedStructureAssembly__Group_5_3__1__Impl"
-
-
-    // $ANTLR start "rule__ComposedStructureAssembly__Group_6__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9008:1: rule__ComposedStructureAssembly__Group_6__0 : rule__ComposedStructureAssembly__Group_6__0__Impl rule__ComposedStructureAssembly__Group_6__1 ;
-    public final void rule__ComposedStructureAssembly__Group_6__0() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9012:1: ( rule__ComposedStructureAssembly__Group_6__0__Impl rule__ComposedStructureAssembly__Group_6__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9013:2: rule__ComposedStructureAssembly__Group_6__0__Impl rule__ComposedStructureAssembly__Group_6__1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_6__0__Impl_in_rule__ComposedStructureAssembly__Group_6__017866);
-            rule__ComposedStructureAssembly__Group_6__0__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_6__1_in_rule__ComposedStructureAssembly__Group_6__017869);
-            rule__ComposedStructureAssembly__Group_6__1();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__ComposedStructureAssembly__Group_6__0"
-
-
-    // $ANTLR start "rule__ComposedStructureAssembly__Group_6__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9020:1: rule__ComposedStructureAssembly__Group_6__0__Impl : ( 'requiredDelegationConnectors' ) ;
-    public final void rule__ComposedStructureAssembly__Group_6__0__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9024:1: ( ( 'requiredDelegationConnectors' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9025:1: ( 'requiredDelegationConnectors' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9025:1: ( 'requiredDelegationConnectors' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9026:1: 'requiredDelegationConnectors'
-            {
-             before(grammarAccess.getComposedStructureAssemblyAccess().getRequiredDelegationConnectorsKeyword_6_0()); 
-            match(input,59,FollowSets000.FOLLOW_59_in_rule__ComposedStructureAssembly__Group_6__0__Impl17897); 
-             after(grammarAccess.getComposedStructureAssemblyAccess().getRequiredDelegationConnectorsKeyword_6_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__ComposedStructureAssembly__Group_6__0__Impl"
-
-
-    // $ANTLR start "rule__ComposedStructureAssembly__Group_6__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9039:1: rule__ComposedStructureAssembly__Group_6__1 : rule__ComposedStructureAssembly__Group_6__1__Impl rule__ComposedStructureAssembly__Group_6__2 ;
-    public final void rule__ComposedStructureAssembly__Group_6__1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9043:1: ( rule__ComposedStructureAssembly__Group_6__1__Impl rule__ComposedStructureAssembly__Group_6__2 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9044:2: rule__ComposedStructureAssembly__Group_6__1__Impl rule__ComposedStructureAssembly__Group_6__2
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_6__1__Impl_in_rule__ComposedStructureAssembly__Group_6__117928);
-            rule__ComposedStructureAssembly__Group_6__1__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_6__2_in_rule__ComposedStructureAssembly__Group_6__117931);
-            rule__ComposedStructureAssembly__Group_6__2();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__ComposedStructureAssembly__Group_6__1"
-
-
-    // $ANTLR start "rule__ComposedStructureAssembly__Group_6__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9051:1: rule__ComposedStructureAssembly__Group_6__1__Impl : ( '{' ) ;
-    public final void rule__ComposedStructureAssembly__Group_6__1__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9055:1: ( ( '{' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9056:1: ( '{' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9056:1: ( '{' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9057:1: '{'
-            {
-             before(grammarAccess.getComposedStructureAssemblyAccess().getLeftCurlyBracketKeyword_6_1()); 
-            match(input,20,FollowSets000.FOLLOW_20_in_rule__ComposedStructureAssembly__Group_6__1__Impl17959); 
-             after(grammarAccess.getComposedStructureAssemblyAccess().getLeftCurlyBracketKeyword_6_1()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__ComposedStructureAssembly__Group_6__1__Impl"
-
-
-    // $ANTLR start "rule__ComposedStructureAssembly__Group_6__2"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9070:1: rule__ComposedStructureAssembly__Group_6__2 : rule__ComposedStructureAssembly__Group_6__2__Impl rule__ComposedStructureAssembly__Group_6__3 ;
-    public final void rule__ComposedStructureAssembly__Group_6__2() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9074:1: ( rule__ComposedStructureAssembly__Group_6__2__Impl rule__ComposedStructureAssembly__Group_6__3 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9075:2: rule__ComposedStructureAssembly__Group_6__2__Impl rule__ComposedStructureAssembly__Group_6__3
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_6__2__Impl_in_rule__ComposedStructureAssembly__Group_6__217990);
-            rule__ComposedStructureAssembly__Group_6__2__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_6__3_in_rule__ComposedStructureAssembly__Group_6__217993);
-            rule__ComposedStructureAssembly__Group_6__3();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__ComposedStructureAssembly__Group_6__2"
-
-
-    // $ANTLR start "rule__ComposedStructureAssembly__Group_6__2__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9082:1: rule__ComposedStructureAssembly__Group_6__2__Impl : ( ( rule__ComposedStructureAssembly__RequiredDelegationConnectorsAssignment_6_2 ) ) ;
-    public final void rule__ComposedStructureAssembly__Group_6__2__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9086:1: ( ( ( rule__ComposedStructureAssembly__RequiredDelegationConnectorsAssignment_6_2 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9087:1: ( ( rule__ComposedStructureAssembly__RequiredDelegationConnectorsAssignment_6_2 ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9087:1: ( ( rule__ComposedStructureAssembly__RequiredDelegationConnectorsAssignment_6_2 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9088:1: ( rule__ComposedStructureAssembly__RequiredDelegationConnectorsAssignment_6_2 )
-            {
-             before(grammarAccess.getComposedStructureAssemblyAccess().getRequiredDelegationConnectorsAssignment_6_2()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9089:1: ( rule__ComposedStructureAssembly__RequiredDelegationConnectorsAssignment_6_2 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9089:2: rule__ComposedStructureAssembly__RequiredDelegationConnectorsAssignment_6_2
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__RequiredDelegationConnectorsAssignment_6_2_in_rule__ComposedStructureAssembly__Group_6__2__Impl18020);
-            rule__ComposedStructureAssembly__RequiredDelegationConnectorsAssignment_6_2();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getComposedStructureAssemblyAccess().getRequiredDelegationConnectorsAssignment_6_2()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__ComposedStructureAssembly__Group_6__2__Impl"
-
-
-    // $ANTLR start "rule__ComposedStructureAssembly__Group_6__3"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9099:1: rule__ComposedStructureAssembly__Group_6__3 : rule__ComposedStructureAssembly__Group_6__3__Impl rule__ComposedStructureAssembly__Group_6__4 ;
-    public final void rule__ComposedStructureAssembly__Group_6__3() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9103:1: ( rule__ComposedStructureAssembly__Group_6__3__Impl rule__ComposedStructureAssembly__Group_6__4 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9104:2: rule__ComposedStructureAssembly__Group_6__3__Impl rule__ComposedStructureAssembly__Group_6__4
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_6__3__Impl_in_rule__ComposedStructureAssembly__Group_6__318050);
-            rule__ComposedStructureAssembly__Group_6__3__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_6__4_in_rule__ComposedStructureAssembly__Group_6__318053);
-            rule__ComposedStructureAssembly__Group_6__4();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__ComposedStructureAssembly__Group_6__3"
-
-
-    // $ANTLR start "rule__ComposedStructureAssembly__Group_6__3__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9111:1: rule__ComposedStructureAssembly__Group_6__3__Impl : ( ( rule__ComposedStructureAssembly__Group_6_3__0 )* ) ;
-    public final void rule__ComposedStructureAssembly__Group_6__3__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9115:1: ( ( ( rule__ComposedStructureAssembly__Group_6_3__0 )* ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9116:1: ( ( rule__ComposedStructureAssembly__Group_6_3__0 )* )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9116:1: ( ( rule__ComposedStructureAssembly__Group_6_3__0 )* )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9117:1: ( rule__ComposedStructureAssembly__Group_6_3__0 )*
-            {
-             before(grammarAccess.getComposedStructureAssemblyAccess().getGroup_6_3()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9118:1: ( rule__ComposedStructureAssembly__Group_6_3__0 )*
-            loop61:
-            do {
-                int alt61=2;
-                int LA61_0 = input.LA(1);
-
-                if ( (LA61_0==23) ) {
-                    alt61=1;
-                }
-
-
-                switch (alt61) {
-            	case 1 :
-            	    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9118:2: rule__ComposedStructureAssembly__Group_6_3__0
-            	    {
-            	    pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_6_3__0_in_rule__ComposedStructureAssembly__Group_6__3__Impl18080);
-            	    rule__ComposedStructureAssembly__Group_6_3__0();
-
-            	    state._fsp--;
-
-
-            	    }
-            	    break;
-
-            	default :
-            	    break loop61;
-                }
-            } while (true);
-
-             after(grammarAccess.getComposedStructureAssemblyAccess().getGroup_6_3()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__ComposedStructureAssembly__Group_6__3__Impl"
-
-
-    // $ANTLR start "rule__ComposedStructureAssembly__Group_6__4"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9128:1: rule__ComposedStructureAssembly__Group_6__4 : rule__ComposedStructureAssembly__Group_6__4__Impl ;
-    public final void rule__ComposedStructureAssembly__Group_6__4() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9132:1: ( rule__ComposedStructureAssembly__Group_6__4__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9133:2: rule__ComposedStructureAssembly__Group_6__4__Impl
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_6__4__Impl_in_rule__ComposedStructureAssembly__Group_6__418111);
-            rule__ComposedStructureAssembly__Group_6__4__Impl();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__ComposedStructureAssembly__Group_6__4"
-
-
-    // $ANTLR start "rule__ComposedStructureAssembly__Group_6__4__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9139:1: rule__ComposedStructureAssembly__Group_6__4__Impl : ( '}' ) ;
-    public final void rule__ComposedStructureAssembly__Group_6__4__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9143:1: ( ( '}' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9144:1: ( '}' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9144:1: ( '}' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9145:1: '}'
-            {
-             before(grammarAccess.getComposedStructureAssemblyAccess().getRightCurlyBracketKeyword_6_4()); 
-            match(input,21,FollowSets000.FOLLOW_21_in_rule__ComposedStructureAssembly__Group_6__4__Impl18139); 
-             after(grammarAccess.getComposedStructureAssemblyAccess().getRightCurlyBracketKeyword_6_4()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__ComposedStructureAssembly__Group_6__4__Impl"
-
-
-    // $ANTLR start "rule__ComposedStructureAssembly__Group_6_3__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9168:1: rule__ComposedStructureAssembly__Group_6_3__0 : rule__ComposedStructureAssembly__Group_6_3__0__Impl rule__ComposedStructureAssembly__Group_6_3__1 ;
-    public final void rule__ComposedStructureAssembly__Group_6_3__0() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9172:1: ( rule__ComposedStructureAssembly__Group_6_3__0__Impl rule__ComposedStructureAssembly__Group_6_3__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9173:2: rule__ComposedStructureAssembly__Group_6_3__0__Impl rule__ComposedStructureAssembly__Group_6_3__1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_6_3__0__Impl_in_rule__ComposedStructureAssembly__Group_6_3__018180);
-            rule__ComposedStructureAssembly__Group_6_3__0__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_6_3__1_in_rule__ComposedStructureAssembly__Group_6_3__018183);
-            rule__ComposedStructureAssembly__Group_6_3__1();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__ComposedStructureAssembly__Group_6_3__0"
-
-
-    // $ANTLR start "rule__ComposedStructureAssembly__Group_6_3__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9180:1: rule__ComposedStructureAssembly__Group_6_3__0__Impl : ( ',' ) ;
-    public final void rule__ComposedStructureAssembly__Group_6_3__0__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9184:1: ( ( ',' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9185:1: ( ',' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9185:1: ( ',' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9186:1: ','
-            {
-             before(grammarAccess.getComposedStructureAssemblyAccess().getCommaKeyword_6_3_0()); 
-            match(input,23,FollowSets000.FOLLOW_23_in_rule__ComposedStructureAssembly__Group_6_3__0__Impl18211); 
-             after(grammarAccess.getComposedStructureAssemblyAccess().getCommaKeyword_6_3_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__ComposedStructureAssembly__Group_6_3__0__Impl"
-
-
-    // $ANTLR start "rule__ComposedStructureAssembly__Group_6_3__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9199:1: rule__ComposedStructureAssembly__Group_6_3__1 : rule__ComposedStructureAssembly__Group_6_3__1__Impl ;
-    public final void rule__ComposedStructureAssembly__Group_6_3__1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9203:1: ( rule__ComposedStructureAssembly__Group_6_3__1__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9204:2: rule__ComposedStructureAssembly__Group_6_3__1__Impl
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_6_3__1__Impl_in_rule__ComposedStructureAssembly__Group_6_3__118242);
-            rule__ComposedStructureAssembly__Group_6_3__1__Impl();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__ComposedStructureAssembly__Group_6_3__1"
-
-
-    // $ANTLR start "rule__ComposedStructureAssembly__Group_6_3__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9210:1: rule__ComposedStructureAssembly__Group_6_3__1__Impl : ( ( rule__ComposedStructureAssembly__RequiredDelegationConnectorsAssignment_6_3_1 ) ) ;
-    public final void rule__ComposedStructureAssembly__Group_6_3__1__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9214:1: ( ( ( rule__ComposedStructureAssembly__RequiredDelegationConnectorsAssignment_6_3_1 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9215:1: ( ( rule__ComposedStructureAssembly__RequiredDelegationConnectorsAssignment_6_3_1 ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9215:1: ( ( rule__ComposedStructureAssembly__RequiredDelegationConnectorsAssignment_6_3_1 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9216:1: ( rule__ComposedStructureAssembly__RequiredDelegationConnectorsAssignment_6_3_1 )
-            {
-             before(grammarAccess.getComposedStructureAssemblyAccess().getRequiredDelegationConnectorsAssignment_6_3_1()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9217:1: ( rule__ComposedStructureAssembly__RequiredDelegationConnectorsAssignment_6_3_1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9217:2: rule__ComposedStructureAssembly__RequiredDelegationConnectorsAssignment_6_3_1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__RequiredDelegationConnectorsAssignment_6_3_1_in_rule__ComposedStructureAssembly__Group_6_3__1__Impl18269);
-            rule__ComposedStructureAssembly__RequiredDelegationConnectorsAssignment_6_3_1();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getComposedStructureAssemblyAccess().getRequiredDelegationConnectorsAssignment_6_3_1()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__ComposedStructureAssembly__Group_6_3__1__Impl"
-
-
-    // $ANTLR start "rule__AssemblyContext__Group__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9231:1: rule__AssemblyContext__Group__0 : rule__AssemblyContext__Group__0__Impl rule__AssemblyContext__Group__1 ;
-    public final void rule__AssemblyContext__Group__0() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9235:1: ( rule__AssemblyContext__Group__0__Impl rule__AssemblyContext__Group__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9236:2: rule__AssemblyContext__Group__0__Impl rule__AssemblyContext__Group__1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__AssemblyContext__Group__0__Impl_in_rule__AssemblyContext__Group__018303);
-            rule__AssemblyContext__Group__0__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__AssemblyContext__Group__1_in_rule__AssemblyContext__Group__018306);
-            rule__AssemblyContext__Group__1();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__AssemblyContext__Group__0"
-
-
-    // $ANTLR start "rule__AssemblyContext__Group__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9243:1: rule__AssemblyContext__Group__0__Impl : ( 'AssemblyContext' ) ;
-    public final void rule__AssemblyContext__Group__0__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9247:1: ( ( 'AssemblyContext' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9248:1: ( 'AssemblyContext' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9248:1: ( 'AssemblyContext' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9249:1: 'AssemblyContext'
-            {
-             before(grammarAccess.getAssemblyContextAccess().getAssemblyContextKeyword_0()); 
-            match(input,60,FollowSets000.FOLLOW_60_in_rule__AssemblyContext__Group__0__Impl18334); 
-             after(grammarAccess.getAssemblyContextAccess().getAssemblyContextKeyword_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__AssemblyContext__Group__0__Impl"
-
-
-    // $ANTLR start "rule__AssemblyContext__Group__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9262:1: rule__AssemblyContext__Group__1 : rule__AssemblyContext__Group__1__Impl rule__AssemblyContext__Group__2 ;
-    public final void rule__AssemblyContext__Group__1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9266:1: ( rule__AssemblyContext__Group__1__Impl rule__AssemblyContext__Group__2 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9267:2: rule__AssemblyContext__Group__1__Impl rule__AssemblyContext__Group__2
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__AssemblyContext__Group__1__Impl_in_rule__AssemblyContext__Group__118365);
-            rule__AssemblyContext__Group__1__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__AssemblyContext__Group__2_in_rule__AssemblyContext__Group__118368);
-            rule__AssemblyContext__Group__2();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__AssemblyContext__Group__1"
-
-
-    // $ANTLR start "rule__AssemblyContext__Group__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9274:1: rule__AssemblyContext__Group__1__Impl : ( ( rule__AssemblyContext__NameAssignment_1 ) ) ;
-    public final void rule__AssemblyContext__Group__1__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9278:1: ( ( ( rule__AssemblyContext__NameAssignment_1 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9279:1: ( ( rule__AssemblyContext__NameAssignment_1 ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9279:1: ( ( rule__AssemblyContext__NameAssignment_1 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9280:1: ( rule__AssemblyContext__NameAssignment_1 )
-            {
-             before(grammarAccess.getAssemblyContextAccess().getNameAssignment_1()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9281:1: ( rule__AssemblyContext__NameAssignment_1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9281:2: rule__AssemblyContext__NameAssignment_1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__AssemblyContext__NameAssignment_1_in_rule__AssemblyContext__Group__1__Impl18395);
-            rule__AssemblyContext__NameAssignment_1();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getAssemblyContextAccess().getNameAssignment_1()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__AssemblyContext__Group__1__Impl"
-
-
-    // $ANTLR start "rule__AssemblyContext__Group__2"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9291:1: rule__AssemblyContext__Group__2 : rule__AssemblyContext__Group__2__Impl rule__AssemblyContext__Group__3 ;
-    public final void rule__AssemblyContext__Group__2() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9295:1: ( rule__AssemblyContext__Group__2__Impl rule__AssemblyContext__Group__3 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9296:2: rule__AssemblyContext__Group__2__Impl rule__AssemblyContext__Group__3
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__AssemblyContext__Group__2__Impl_in_rule__AssemblyContext__Group__218425);
-            rule__AssemblyContext__Group__2__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__AssemblyContext__Group__3_in_rule__AssemblyContext__Group__218428);
-            rule__AssemblyContext__Group__3();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__AssemblyContext__Group__2"
-
-
-    // $ANTLR start "rule__AssemblyContext__Group__2__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9303:1: rule__AssemblyContext__Group__2__Impl : ( '{' ) ;
-    public final void rule__AssemblyContext__Group__2__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9307:1: ( ( '{' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9308:1: ( '{' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9308:1: ( '{' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9309:1: '{'
-            {
-             before(grammarAccess.getAssemblyContextAccess().getLeftCurlyBracketKeyword_2()); 
-            match(input,20,FollowSets000.FOLLOW_20_in_rule__AssemblyContext__Group__2__Impl18456); 
-             after(grammarAccess.getAssemblyContextAccess().getLeftCurlyBracketKeyword_2()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__AssemblyContext__Group__2__Impl"
-
-
-    // $ANTLR start "rule__AssemblyContext__Group__3"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9322:1: rule__AssemblyContext__Group__3 : rule__AssemblyContext__Group__3__Impl rule__AssemblyContext__Group__4 ;
-    public final void rule__AssemblyContext__Group__3() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9326:1: ( rule__AssemblyContext__Group__3__Impl rule__AssemblyContext__Group__4 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9327:2: rule__AssemblyContext__Group__3__Impl rule__AssemblyContext__Group__4
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__AssemblyContext__Group__3__Impl_in_rule__AssemblyContext__Group__318487);
-            rule__AssemblyContext__Group__3__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__AssemblyContext__Group__4_in_rule__AssemblyContext__Group__318490);
-            rule__AssemblyContext__Group__4();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__AssemblyContext__Group__3"
-
-
-    // $ANTLR start "rule__AssemblyContext__Group__3__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9334:1: rule__AssemblyContext__Group__3__Impl : ( 'encapsulatedComponent' ) ;
-    public final void rule__AssemblyContext__Group__3__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9338:1: ( ( 'encapsulatedComponent' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9339:1: ( 'encapsulatedComponent' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9339:1: ( 'encapsulatedComponent' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9340:1: 'encapsulatedComponent'
-            {
-             before(grammarAccess.getAssemblyContextAccess().getEncapsulatedComponentKeyword_3()); 
-            match(input,61,FollowSets000.FOLLOW_61_in_rule__AssemblyContext__Group__3__Impl18518); 
-             after(grammarAccess.getAssemblyContextAccess().getEncapsulatedComponentKeyword_3()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__AssemblyContext__Group__3__Impl"
-
-
-    // $ANTLR start "rule__AssemblyContext__Group__4"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9353:1: rule__AssemblyContext__Group__4 : rule__AssemblyContext__Group__4__Impl rule__AssemblyContext__Group__5 ;
-    public final void rule__AssemblyContext__Group__4() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9357:1: ( rule__AssemblyContext__Group__4__Impl rule__AssemblyContext__Group__5 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9358:2: rule__AssemblyContext__Group__4__Impl rule__AssemblyContext__Group__5
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__AssemblyContext__Group__4__Impl_in_rule__AssemblyContext__Group__418549);
-            rule__AssemblyContext__Group__4__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__AssemblyContext__Group__5_in_rule__AssemblyContext__Group__418552);
-            rule__AssemblyContext__Group__5();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__AssemblyContext__Group__4"
-
-
-    // $ANTLR start "rule__AssemblyContext__Group__4__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9365:1: rule__AssemblyContext__Group__4__Impl : ( ( rule__AssemblyContext__EncapsulatedComponentAssignment_4 ) ) ;
-    public final void rule__AssemblyContext__Group__4__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9369:1: ( ( ( rule__AssemblyContext__EncapsulatedComponentAssignment_4 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9370:1: ( ( rule__AssemblyContext__EncapsulatedComponentAssignment_4 ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9370:1: ( ( rule__AssemblyContext__EncapsulatedComponentAssignment_4 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9371:1: ( rule__AssemblyContext__EncapsulatedComponentAssignment_4 )
-            {
-             before(grammarAccess.getAssemblyContextAccess().getEncapsulatedComponentAssignment_4()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9372:1: ( rule__AssemblyContext__EncapsulatedComponentAssignment_4 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9372:2: rule__AssemblyContext__EncapsulatedComponentAssignment_4
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__AssemblyContext__EncapsulatedComponentAssignment_4_in_rule__AssemblyContext__Group__4__Impl18579);
-            rule__AssemblyContext__EncapsulatedComponentAssignment_4();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getAssemblyContextAccess().getEncapsulatedComponentAssignment_4()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__AssemblyContext__Group__4__Impl"
-
-
-    // $ANTLR start "rule__AssemblyContext__Group__5"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9382:1: rule__AssemblyContext__Group__5 : rule__AssemblyContext__Group__5__Impl ;
-    public final void rule__AssemblyContext__Group__5() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9386:1: ( rule__AssemblyContext__Group__5__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9387:2: rule__AssemblyContext__Group__5__Impl
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__AssemblyContext__Group__5__Impl_in_rule__AssemblyContext__Group__518609);
-            rule__AssemblyContext__Group__5__Impl();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__AssemblyContext__Group__5"
-
-
-    // $ANTLR start "rule__AssemblyContext__Group__5__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9393:1: rule__AssemblyContext__Group__5__Impl : ( '}' ) ;
-    public final void rule__AssemblyContext__Group__5__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9397:1: ( ( '}' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9398:1: ( '}' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9398:1: ( '}' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9399:1: '}'
-            {
-             before(grammarAccess.getAssemblyContextAccess().getRightCurlyBracketKeyword_5()); 
-            match(input,21,FollowSets000.FOLLOW_21_in_rule__AssemblyContext__Group__5__Impl18637); 
-             after(grammarAccess.getAssemblyContextAccess().getRightCurlyBracketKeyword_5()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__AssemblyContext__Group__5__Impl"
-
-
-    // $ANTLR start "rule__AssemblyConnector__Group__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9424:1: rule__AssemblyConnector__Group__0 : rule__AssemblyConnector__Group__0__Impl rule__AssemblyConnector__Group__1 ;
-    public final void rule__AssemblyConnector__Group__0() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9428:1: ( rule__AssemblyConnector__Group__0__Impl rule__AssemblyConnector__Group__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9429:2: rule__AssemblyConnector__Group__0__Impl rule__AssemblyConnector__Group__1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__AssemblyConnector__Group__0__Impl_in_rule__AssemblyConnector__Group__018680);
-            rule__AssemblyConnector__Group__0__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__AssemblyConnector__Group__1_in_rule__AssemblyConnector__Group__018683);
-            rule__AssemblyConnector__Group__1();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__AssemblyConnector__Group__0"
-
-
-    // $ANTLR start "rule__AssemblyConnector__Group__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9436:1: rule__AssemblyConnector__Group__0__Impl : ( 'AssemblyConnector' ) ;
-    public final void rule__AssemblyConnector__Group__0__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9440:1: ( ( 'AssemblyConnector' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9441:1: ( 'AssemblyConnector' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9441:1: ( 'AssemblyConnector' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9442:1: 'AssemblyConnector'
-            {
-             before(grammarAccess.getAssemblyConnectorAccess().getAssemblyConnectorKeyword_0()); 
-            match(input,62,FollowSets000.FOLLOW_62_in_rule__AssemblyConnector__Group__0__Impl18711); 
-             after(grammarAccess.getAssemblyConnectorAccess().getAssemblyConnectorKeyword_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__AssemblyConnector__Group__0__Impl"
-
-
-    // $ANTLR start "rule__AssemblyConnector__Group__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9455:1: rule__AssemblyConnector__Group__1 : rule__AssemblyConnector__Group__1__Impl rule__AssemblyConnector__Group__2 ;
-    public final void rule__AssemblyConnector__Group__1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9459:1: ( rule__AssemblyConnector__Group__1__Impl rule__AssemblyConnector__Group__2 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9460:2: rule__AssemblyConnector__Group__1__Impl rule__AssemblyConnector__Group__2
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__AssemblyConnector__Group__1__Impl_in_rule__AssemblyConnector__Group__118742);
-            rule__AssemblyConnector__Group__1__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__AssemblyConnector__Group__2_in_rule__AssemblyConnector__Group__118745);
-            rule__AssemblyConnector__Group__2();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__AssemblyConnector__Group__1"
-
-
-    // $ANTLR start "rule__AssemblyConnector__Group__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9467:1: rule__AssemblyConnector__Group__1__Impl : ( ( rule__AssemblyConnector__NameAssignment_1 ) ) ;
-    public final void rule__AssemblyConnector__Group__1__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9471:1: ( ( ( rule__AssemblyConnector__NameAssignment_1 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9472:1: ( ( rule__AssemblyConnector__NameAssignment_1 ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9472:1: ( ( rule__AssemblyConnector__NameAssignment_1 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9473:1: ( rule__AssemblyConnector__NameAssignment_1 )
-            {
-             before(grammarAccess.getAssemblyConnectorAccess().getNameAssignment_1()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9474:1: ( rule__AssemblyConnector__NameAssignment_1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9474:2: rule__AssemblyConnector__NameAssignment_1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__AssemblyConnector__NameAssignment_1_in_rule__AssemblyConnector__Group__1__Impl18772);
-            rule__AssemblyConnector__NameAssignment_1();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getAssemblyConnectorAccess().getNameAssignment_1()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__AssemblyConnector__Group__1__Impl"
-
-
-    // $ANTLR start "rule__AssemblyConnector__Group__2"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9484:1: rule__AssemblyConnector__Group__2 : rule__AssemblyConnector__Group__2__Impl rule__AssemblyConnector__Group__3 ;
-    public final void rule__AssemblyConnector__Group__2() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9488:1: ( rule__AssemblyConnector__Group__2__Impl rule__AssemblyConnector__Group__3 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9489:2: rule__AssemblyConnector__Group__2__Impl rule__AssemblyConnector__Group__3
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__AssemblyConnector__Group__2__Impl_in_rule__AssemblyConnector__Group__218802);
-            rule__AssemblyConnector__Group__2__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__AssemblyConnector__Group__3_in_rule__AssemblyConnector__Group__218805);
-            rule__AssemblyConnector__Group__3();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__AssemblyConnector__Group__2"
-
-
-    // $ANTLR start "rule__AssemblyConnector__Group__2__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9496:1: rule__AssemblyConnector__Group__2__Impl : ( '{' ) ;
-    public final void rule__AssemblyConnector__Group__2__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9500:1: ( ( '{' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9501:1: ( '{' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9501:1: ( '{' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9502:1: '{'
-            {
-             before(grammarAccess.getAssemblyConnectorAccess().getLeftCurlyBracketKeyword_2()); 
-            match(input,20,FollowSets000.FOLLOW_20_in_rule__AssemblyConnector__Group__2__Impl18833); 
-             after(grammarAccess.getAssemblyConnectorAccess().getLeftCurlyBracketKeyword_2()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__AssemblyConnector__Group__2__Impl"
-
-
-    // $ANTLR start "rule__AssemblyConnector__Group__3"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9515:1: rule__AssemblyConnector__Group__3 : rule__AssemblyConnector__Group__3__Impl rule__AssemblyConnector__Group__4 ;
-    public final void rule__AssemblyConnector__Group__3() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9519:1: ( rule__AssemblyConnector__Group__3__Impl rule__AssemblyConnector__Group__4 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9520:2: rule__AssemblyConnector__Group__3__Impl rule__AssemblyConnector__Group__4
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__AssemblyConnector__Group__3__Impl_in_rule__AssemblyConnector__Group__318864);
-            rule__AssemblyConnector__Group__3__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__AssemblyConnector__Group__4_in_rule__AssemblyConnector__Group__318867);
-            rule__AssemblyConnector__Group__4();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__AssemblyConnector__Group__3"
-
-
-    // $ANTLR start "rule__AssemblyConnector__Group__3__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9527:1: rule__AssemblyConnector__Group__3__Impl : ( 'requiredRole' ) ;
-    public final void rule__AssemblyConnector__Group__3__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9531:1: ( ( 'requiredRole' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9532:1: ( 'requiredRole' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9532:1: ( 'requiredRole' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9533:1: 'requiredRole'
-            {
-             before(grammarAccess.getAssemblyConnectorAccess().getRequiredRoleKeyword_3()); 
-            match(input,63,FollowSets000.FOLLOW_63_in_rule__AssemblyConnector__Group__3__Impl18895); 
-             after(grammarAccess.getAssemblyConnectorAccess().getRequiredRoleKeyword_3()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__AssemblyConnector__Group__3__Impl"
-
-
-    // $ANTLR start "rule__AssemblyConnector__Group__4"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9546:1: rule__AssemblyConnector__Group__4 : rule__AssemblyConnector__Group__4__Impl rule__AssemblyConnector__Group__5 ;
-    public final void rule__AssemblyConnector__Group__4() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9550:1: ( rule__AssemblyConnector__Group__4__Impl rule__AssemblyConnector__Group__5 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9551:2: rule__AssemblyConnector__Group__4__Impl rule__AssemblyConnector__Group__5
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__AssemblyConnector__Group__4__Impl_in_rule__AssemblyConnector__Group__418926);
-            rule__AssemblyConnector__Group__4__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__AssemblyConnector__Group__5_in_rule__AssemblyConnector__Group__418929);
-            rule__AssemblyConnector__Group__5();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__AssemblyConnector__Group__4"
-
-
-    // $ANTLR start "rule__AssemblyConnector__Group__4__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9558:1: rule__AssemblyConnector__Group__4__Impl : ( ( rule__AssemblyConnector__RequiredRoleAssignment_4 ) ) ;
-    public final void rule__AssemblyConnector__Group__4__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9562:1: ( ( ( rule__AssemblyConnector__RequiredRoleAssignment_4 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9563:1: ( ( rule__AssemblyConnector__RequiredRoleAssignment_4 ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9563:1: ( ( rule__AssemblyConnector__RequiredRoleAssignment_4 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9564:1: ( rule__AssemblyConnector__RequiredRoleAssignment_4 )
-            {
-             before(grammarAccess.getAssemblyConnectorAccess().getRequiredRoleAssignment_4()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9565:1: ( rule__AssemblyConnector__RequiredRoleAssignment_4 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9565:2: rule__AssemblyConnector__RequiredRoleAssignment_4
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__AssemblyConnector__RequiredRoleAssignment_4_in_rule__AssemblyConnector__Group__4__Impl18956);
-            rule__AssemblyConnector__RequiredRoleAssignment_4();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getAssemblyConnectorAccess().getRequiredRoleAssignment_4()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__AssemblyConnector__Group__4__Impl"
-
-
-    // $ANTLR start "rule__AssemblyConnector__Group__5"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9575:1: rule__AssemblyConnector__Group__5 : rule__AssemblyConnector__Group__5__Impl rule__AssemblyConnector__Group__6 ;
-    public final void rule__AssemblyConnector__Group__5() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9579:1: ( rule__AssemblyConnector__Group__5__Impl rule__AssemblyConnector__Group__6 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9580:2: rule__AssemblyConnector__Group__5__Impl rule__AssemblyConnector__Group__6
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__AssemblyConnector__Group__5__Impl_in_rule__AssemblyConnector__Group__518986);
-            rule__AssemblyConnector__Group__5__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__AssemblyConnector__Group__6_in_rule__AssemblyConnector__Group__518989);
-            rule__AssemblyConnector__Group__6();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__AssemblyConnector__Group__5"
-
-
-    // $ANTLR start "rule__AssemblyConnector__Group__5__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9587:1: rule__AssemblyConnector__Group__5__Impl : ( 'providedRole' ) ;
-    public final void rule__AssemblyConnector__Group__5__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9591:1: ( ( 'providedRole' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9592:1: ( 'providedRole' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9592:1: ( 'providedRole' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9593:1: 'providedRole'
-            {
-             before(grammarAccess.getAssemblyConnectorAccess().getProvidedRoleKeyword_5()); 
-            match(input,64,FollowSets000.FOLLOW_64_in_rule__AssemblyConnector__Group__5__Impl19017); 
-             after(grammarAccess.getAssemblyConnectorAccess().getProvidedRoleKeyword_5()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__AssemblyConnector__Group__5__Impl"
-
-
-    // $ANTLR start "rule__AssemblyConnector__Group__6"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9606:1: rule__AssemblyConnector__Group__6 : rule__AssemblyConnector__Group__6__Impl rule__AssemblyConnector__Group__7 ;
-    public final void rule__AssemblyConnector__Group__6() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9610:1: ( rule__AssemblyConnector__Group__6__Impl rule__AssemblyConnector__Group__7 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9611:2: rule__AssemblyConnector__Group__6__Impl rule__AssemblyConnector__Group__7
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__AssemblyConnector__Group__6__Impl_in_rule__AssemblyConnector__Group__619048);
-            rule__AssemblyConnector__Group__6__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__AssemblyConnector__Group__7_in_rule__AssemblyConnector__Group__619051);
-            rule__AssemblyConnector__Group__7();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__AssemblyConnector__Group__6"
-
-
-    // $ANTLR start "rule__AssemblyConnector__Group__6__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9618:1: rule__AssemblyConnector__Group__6__Impl : ( ( rule__AssemblyConnector__ProvidedRoleAssignment_6 ) ) ;
-    public final void rule__AssemblyConnector__Group__6__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9622:1: ( ( ( rule__AssemblyConnector__ProvidedRoleAssignment_6 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9623:1: ( ( rule__AssemblyConnector__ProvidedRoleAssignment_6 ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9623:1: ( ( rule__AssemblyConnector__ProvidedRoleAssignment_6 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9624:1: ( rule__AssemblyConnector__ProvidedRoleAssignment_6 )
-            {
-             before(grammarAccess.getAssemblyConnectorAccess().getProvidedRoleAssignment_6()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9625:1: ( rule__AssemblyConnector__ProvidedRoleAssignment_6 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9625:2: rule__AssemblyConnector__ProvidedRoleAssignment_6
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__AssemblyConnector__ProvidedRoleAssignment_6_in_rule__AssemblyConnector__Group__6__Impl19078);
-            rule__AssemblyConnector__ProvidedRoleAssignment_6();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getAssemblyConnectorAccess().getProvidedRoleAssignment_6()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__AssemblyConnector__Group__6__Impl"
-
-
-    // $ANTLR start "rule__AssemblyConnector__Group__7"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9635:1: rule__AssemblyConnector__Group__7 : rule__AssemblyConnector__Group__7__Impl rule__AssemblyConnector__Group__8 ;
-    public final void rule__AssemblyConnector__Group__7() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9639:1: ( rule__AssemblyConnector__Group__7__Impl rule__AssemblyConnector__Group__8 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9640:2: rule__AssemblyConnector__Group__7__Impl rule__AssemblyConnector__Group__8
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__AssemblyConnector__Group__7__Impl_in_rule__AssemblyConnector__Group__719108);
-            rule__AssemblyConnector__Group__7__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__AssemblyConnector__Group__8_in_rule__AssemblyConnector__Group__719111);
-            rule__AssemblyConnector__Group__8();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__AssemblyConnector__Group__7"
-
-
-    // $ANTLR start "rule__AssemblyConnector__Group__7__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9647:1: rule__AssemblyConnector__Group__7__Impl : ( 'providingAssemblyContext' ) ;
-    public final void rule__AssemblyConnector__Group__7__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9651:1: ( ( 'providingAssemblyContext' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9652:1: ( 'providingAssemblyContext' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9652:1: ( 'providingAssemblyContext' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9653:1: 'providingAssemblyContext'
-            {
-             before(grammarAccess.getAssemblyConnectorAccess().getProvidingAssemblyContextKeyword_7()); 
-            match(input,65,FollowSets000.FOLLOW_65_in_rule__AssemblyConnector__Group__7__Impl19139); 
-             after(grammarAccess.getAssemblyConnectorAccess().getProvidingAssemblyContextKeyword_7()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__AssemblyConnector__Group__7__Impl"
-
-
-    // $ANTLR start "rule__AssemblyConnector__Group__8"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9666:1: rule__AssemblyConnector__Group__8 : rule__AssemblyConnector__Group__8__Impl rule__AssemblyConnector__Group__9 ;
-    public final void rule__AssemblyConnector__Group__8() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9670:1: ( rule__AssemblyConnector__Group__8__Impl rule__AssemblyConnector__Group__9 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9671:2: rule__AssemblyConnector__Group__8__Impl rule__AssemblyConnector__Group__9
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__AssemblyConnector__Group__8__Impl_in_rule__AssemblyConnector__Group__819170);
-            rule__AssemblyConnector__Group__8__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__AssemblyConnector__Group__9_in_rule__AssemblyConnector__Group__819173);
-            rule__AssemblyConnector__Group__9();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__AssemblyConnector__Group__8"
-
-
-    // $ANTLR start "rule__AssemblyConnector__Group__8__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9678:1: rule__AssemblyConnector__Group__8__Impl : ( ( rule__AssemblyConnector__ProvidingAssemblyContextAssignment_8 ) ) ;
-    public final void rule__AssemblyConnector__Group__8__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9682:1: ( ( ( rule__AssemblyConnector__ProvidingAssemblyContextAssignment_8 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9683:1: ( ( rule__AssemblyConnector__ProvidingAssemblyContextAssignment_8 ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9683:1: ( ( rule__AssemblyConnector__ProvidingAssemblyContextAssignment_8 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9684:1: ( rule__AssemblyConnector__ProvidingAssemblyContextAssignment_8 )
-            {
-             before(grammarAccess.getAssemblyConnectorAccess().getProvidingAssemblyContextAssignment_8()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9685:1: ( rule__AssemblyConnector__ProvidingAssemblyContextAssignment_8 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9685:2: rule__AssemblyConnector__ProvidingAssemblyContextAssignment_8
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__AssemblyConnector__ProvidingAssemblyContextAssignment_8_in_rule__AssemblyConnector__Group__8__Impl19200);
-            rule__AssemblyConnector__ProvidingAssemblyContextAssignment_8();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getAssemblyConnectorAccess().getProvidingAssemblyContextAssignment_8()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__AssemblyConnector__Group__8__Impl"
-
-
-    // $ANTLR start "rule__AssemblyConnector__Group__9"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9695:1: rule__AssemblyConnector__Group__9 : rule__AssemblyConnector__Group__9__Impl rule__AssemblyConnector__Group__10 ;
-    public final void rule__AssemblyConnector__Group__9() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9699:1: ( rule__AssemblyConnector__Group__9__Impl rule__AssemblyConnector__Group__10 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9700:2: rule__AssemblyConnector__Group__9__Impl rule__AssemblyConnector__Group__10
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__AssemblyConnector__Group__9__Impl_in_rule__AssemblyConnector__Group__919230);
-            rule__AssemblyConnector__Group__9__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__AssemblyConnector__Group__10_in_rule__AssemblyConnector__Group__919233);
-            rule__AssemblyConnector__Group__10();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__AssemblyConnector__Group__9"
-
-
-    // $ANTLR start "rule__AssemblyConnector__Group__9__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9707:1: rule__AssemblyConnector__Group__9__Impl : ( 'requiringAssemblyContext' ) ;
-    public final void rule__AssemblyConnector__Group__9__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9711:1: ( ( 'requiringAssemblyContext' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9712:1: ( 'requiringAssemblyContext' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9712:1: ( 'requiringAssemblyContext' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9713:1: 'requiringAssemblyContext'
-            {
-             before(grammarAccess.getAssemblyConnectorAccess().getRequiringAssemblyContextKeyword_9()); 
-            match(input,66,FollowSets000.FOLLOW_66_in_rule__AssemblyConnector__Group__9__Impl19261); 
-             after(grammarAccess.getAssemblyConnectorAccess().getRequiringAssemblyContextKeyword_9()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__AssemblyConnector__Group__9__Impl"
-
-
-    // $ANTLR start "rule__AssemblyConnector__Group__10"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9726:1: rule__AssemblyConnector__Group__10 : rule__AssemblyConnector__Group__10__Impl rule__AssemblyConnector__Group__11 ;
-    public final void rule__AssemblyConnector__Group__10() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9730:1: ( rule__AssemblyConnector__Group__10__Impl rule__AssemblyConnector__Group__11 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9731:2: rule__AssemblyConnector__Group__10__Impl rule__AssemblyConnector__Group__11
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__AssemblyConnector__Group__10__Impl_in_rule__AssemblyConnector__Group__1019292);
-            rule__AssemblyConnector__Group__10__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__AssemblyConnector__Group__11_in_rule__AssemblyConnector__Group__1019295);
-            rule__AssemblyConnector__Group__11();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__AssemblyConnector__Group__10"
-
-
-    // $ANTLR start "rule__AssemblyConnector__Group__10__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9738:1: rule__AssemblyConnector__Group__10__Impl : ( ( rule__AssemblyConnector__RequiringAssemblyContextAssignment_10 ) ) ;
-    public final void rule__AssemblyConnector__Group__10__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9742:1: ( ( ( rule__AssemblyConnector__RequiringAssemblyContextAssignment_10 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9743:1: ( ( rule__AssemblyConnector__RequiringAssemblyContextAssignment_10 ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9743:1: ( ( rule__AssemblyConnector__RequiringAssemblyContextAssignment_10 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9744:1: ( rule__AssemblyConnector__RequiringAssemblyContextAssignment_10 )
-            {
-             before(grammarAccess.getAssemblyConnectorAccess().getRequiringAssemblyContextAssignment_10()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9745:1: ( rule__AssemblyConnector__RequiringAssemblyContextAssignment_10 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9745:2: rule__AssemblyConnector__RequiringAssemblyContextAssignment_10
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__AssemblyConnector__RequiringAssemblyContextAssignment_10_in_rule__AssemblyConnector__Group__10__Impl19322);
-            rule__AssemblyConnector__RequiringAssemblyContextAssignment_10();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getAssemblyConnectorAccess().getRequiringAssemblyContextAssignment_10()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__AssemblyConnector__Group__10__Impl"
-
-
-    // $ANTLR start "rule__AssemblyConnector__Group__11"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9755:1: rule__AssemblyConnector__Group__11 : rule__AssemblyConnector__Group__11__Impl ;
-    public final void rule__AssemblyConnector__Group__11() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9759:1: ( rule__AssemblyConnector__Group__11__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9760:2: rule__AssemblyConnector__Group__11__Impl
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__AssemblyConnector__Group__11__Impl_in_rule__AssemblyConnector__Group__1119352);
-            rule__AssemblyConnector__Group__11__Impl();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__AssemblyConnector__Group__11"
-
-
-    // $ANTLR start "rule__AssemblyConnector__Group__11__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9766:1: rule__AssemblyConnector__Group__11__Impl : ( '}' ) ;
-    public final void rule__AssemblyConnector__Group__11__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9770:1: ( ( '}' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9771:1: ( '}' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9771:1: ( '}' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9772:1: '}'
-            {
-             before(grammarAccess.getAssemblyConnectorAccess().getRightCurlyBracketKeyword_11()); 
-            match(input,21,FollowSets000.FOLLOW_21_in_rule__AssemblyConnector__Group__11__Impl19380); 
-             after(grammarAccess.getAssemblyConnectorAccess().getRightCurlyBracketKeyword_11()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__AssemblyConnector__Group__11__Impl"
-
-
-    // $ANTLR start "rule__ProvidedDelegationConnector__Group__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9809:1: rule__ProvidedDelegationConnector__Group__0 : rule__ProvidedDelegationConnector__Group__0__Impl rule__ProvidedDelegationConnector__Group__1 ;
-    public final void rule__ProvidedDelegationConnector__Group__0() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9813:1: ( rule__ProvidedDelegationConnector__Group__0__Impl rule__ProvidedDelegationConnector__Group__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9814:2: rule__ProvidedDelegationConnector__Group__0__Impl rule__ProvidedDelegationConnector__Group__1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__ProvidedDelegationConnector__Group__0__Impl_in_rule__ProvidedDelegationConnector__Group__019435);
-            rule__ProvidedDelegationConnector__Group__0__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__ProvidedDelegationConnector__Group__1_in_rule__ProvidedDelegationConnector__Group__019438);
-            rule__ProvidedDelegationConnector__Group__1();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__ProvidedDelegationConnector__Group__0"
-
-
-    // $ANTLR start "rule__ProvidedDelegationConnector__Group__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9821:1: rule__ProvidedDelegationConnector__Group__0__Impl : ( 'ProvidedDelegationConnector' ) ;
-    public final void rule__ProvidedDelegationConnector__Group__0__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9825:1: ( ( 'ProvidedDelegationConnector' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9826:1: ( 'ProvidedDelegationConnector' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9826:1: ( 'ProvidedDelegationConnector' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9827:1: 'ProvidedDelegationConnector'
-            {
-             before(grammarAccess.getProvidedDelegationConnectorAccess().getProvidedDelegationConnectorKeyword_0()); 
-            match(input,67,FollowSets000.FOLLOW_67_in_rule__ProvidedDelegationConnector__Group__0__Impl19466); 
-             after(grammarAccess.getProvidedDelegationConnectorAccess().getProvidedDelegationConnectorKeyword_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__ProvidedDelegationConnector__Group__0__Impl"
-
-
-    // $ANTLR start "rule__ProvidedDelegationConnector__Group__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9840:1: rule__ProvidedDelegationConnector__Group__1 : rule__ProvidedDelegationConnector__Group__1__Impl rule__ProvidedDelegationConnector__Group__2 ;
-    public final void rule__ProvidedDelegationConnector__Group__1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9844:1: ( rule__ProvidedDelegationConnector__Group__1__Impl rule__ProvidedDelegationConnector__Group__2 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9845:2: rule__ProvidedDelegationConnector__Group__1__Impl rule__ProvidedDelegationConnector__Group__2
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__ProvidedDelegationConnector__Group__1__Impl_in_rule__ProvidedDelegationConnector__Group__119497);
-            rule__ProvidedDelegationConnector__Group__1__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__ProvidedDelegationConnector__Group__2_in_rule__ProvidedDelegationConnector__Group__119500);
-            rule__ProvidedDelegationConnector__Group__2();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__ProvidedDelegationConnector__Group__1"
-
-
-    // $ANTLR start "rule__ProvidedDelegationConnector__Group__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9852:1: rule__ProvidedDelegationConnector__Group__1__Impl : ( ( rule__ProvidedDelegationConnector__NameAssignment_1 ) ) ;
-    public final void rule__ProvidedDelegationConnector__Group__1__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9856:1: ( ( ( rule__ProvidedDelegationConnector__NameAssignment_1 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9857:1: ( ( rule__ProvidedDelegationConnector__NameAssignment_1 ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9857:1: ( ( rule__ProvidedDelegationConnector__NameAssignment_1 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9858:1: ( rule__ProvidedDelegationConnector__NameAssignment_1 )
-            {
-             before(grammarAccess.getProvidedDelegationConnectorAccess().getNameAssignment_1()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9859:1: ( rule__ProvidedDelegationConnector__NameAssignment_1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9859:2: rule__ProvidedDelegationConnector__NameAssignment_1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__ProvidedDelegationConnector__NameAssignment_1_in_rule__ProvidedDelegationConnector__Group__1__Impl19527);
-            rule__ProvidedDelegationConnector__NameAssignment_1();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getProvidedDelegationConnectorAccess().getNameAssignment_1()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__ProvidedDelegationConnector__Group__1__Impl"
-
-
-    // $ANTLR start "rule__ProvidedDelegationConnector__Group__2"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9869:1: rule__ProvidedDelegationConnector__Group__2 : rule__ProvidedDelegationConnector__Group__2__Impl rule__ProvidedDelegationConnector__Group__3 ;
-    public final void rule__ProvidedDelegationConnector__Group__2() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9873:1: ( rule__ProvidedDelegationConnector__Group__2__Impl rule__ProvidedDelegationConnector__Group__3 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9874:2: rule__ProvidedDelegationConnector__Group__2__Impl rule__ProvidedDelegationConnector__Group__3
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__ProvidedDelegationConnector__Group__2__Impl_in_rule__ProvidedDelegationConnector__Group__219557);
-            rule__ProvidedDelegationConnector__Group__2__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__ProvidedDelegationConnector__Group__3_in_rule__ProvidedDelegationConnector__Group__219560);
-            rule__ProvidedDelegationConnector__Group__3();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__ProvidedDelegationConnector__Group__2"
-
-
-    // $ANTLR start "rule__ProvidedDelegationConnector__Group__2__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9881:1: rule__ProvidedDelegationConnector__Group__2__Impl : ( '{' ) ;
-    public final void rule__ProvidedDelegationConnector__Group__2__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9885:1: ( ( '{' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9886:1: ( '{' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9886:1: ( '{' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9887:1: '{'
-            {
-             before(grammarAccess.getProvidedDelegationConnectorAccess().getLeftCurlyBracketKeyword_2()); 
-            match(input,20,FollowSets000.FOLLOW_20_in_rule__ProvidedDelegationConnector__Group__2__Impl19588); 
-             after(grammarAccess.getProvidedDelegationConnectorAccess().getLeftCurlyBracketKeyword_2()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__ProvidedDelegationConnector__Group__2__Impl"
-
-
-    // $ANTLR start "rule__ProvidedDelegationConnector__Group__3"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9900:1: rule__ProvidedDelegationConnector__Group__3 : rule__ProvidedDelegationConnector__Group__3__Impl rule__ProvidedDelegationConnector__Group__4 ;
-    public final void rule__ProvidedDelegationConnector__Group__3() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9904:1: ( rule__ProvidedDelegationConnector__Group__3__Impl rule__ProvidedDelegationConnector__Group__4 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9905:2: rule__ProvidedDelegationConnector__Group__3__Impl rule__ProvidedDelegationConnector__Group__4
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__ProvidedDelegationConnector__Group__3__Impl_in_rule__ProvidedDelegationConnector__Group__319619);
-            rule__ProvidedDelegationConnector__Group__3__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__ProvidedDelegationConnector__Group__4_in_rule__ProvidedDelegationConnector__Group__319622);
-            rule__ProvidedDelegationConnector__Group__4();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__ProvidedDelegationConnector__Group__3"
-
-
-    // $ANTLR start "rule__ProvidedDelegationConnector__Group__3__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9912:1: rule__ProvidedDelegationConnector__Group__3__Impl : ( 'assemblyContext' ) ;
-    public final void rule__ProvidedDelegationConnector__Group__3__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9916:1: ( ( 'assemblyContext' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9917:1: ( 'assemblyContext' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9917:1: ( 'assemblyContext' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9918:1: 'assemblyContext'
-            {
-             before(grammarAccess.getProvidedDelegationConnectorAccess().getAssemblyContextKeyword_3()); 
-            match(input,68,FollowSets000.FOLLOW_68_in_rule__ProvidedDelegationConnector__Group__3__Impl19650); 
-             after(grammarAccess.getProvidedDelegationConnectorAccess().getAssemblyContextKeyword_3()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__ProvidedDelegationConnector__Group__3__Impl"
-
-
-    // $ANTLR start "rule__ProvidedDelegationConnector__Group__4"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9931:1: rule__ProvidedDelegationConnector__Group__4 : rule__ProvidedDelegationConnector__Group__4__Impl rule__ProvidedDelegationConnector__Group__5 ;
-    public final void rule__ProvidedDelegationConnector__Group__4() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9935:1: ( rule__ProvidedDelegationConnector__Group__4__Impl rule__ProvidedDelegationConnector__Group__5 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9936:2: rule__ProvidedDelegationConnector__Group__4__Impl rule__ProvidedDelegationConnector__Group__5
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__ProvidedDelegationConnector__Group__4__Impl_in_rule__ProvidedDelegationConnector__Group__419681);
-            rule__ProvidedDelegationConnector__Group__4__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__ProvidedDelegationConnector__Group__5_in_rule__ProvidedDelegationConnector__Group__419684);
-            rule__ProvidedDelegationConnector__Group__5();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__ProvidedDelegationConnector__Group__4"
-
-
-    // $ANTLR start "rule__ProvidedDelegationConnector__Group__4__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9943:1: rule__ProvidedDelegationConnector__Group__4__Impl : ( ( rule__ProvidedDelegationConnector__AssemblyContextAssignment_4 ) ) ;
-    public final void rule__ProvidedDelegationConnector__Group__4__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9947:1: ( ( ( rule__ProvidedDelegationConnector__AssemblyContextAssignment_4 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9948:1: ( ( rule__ProvidedDelegationConnector__AssemblyContextAssignment_4 ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9948:1: ( ( rule__ProvidedDelegationConnector__AssemblyContextAssignment_4 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9949:1: ( rule__ProvidedDelegationConnector__AssemblyContextAssignment_4 )
-            {
-             before(grammarAccess.getProvidedDelegationConnectorAccess().getAssemblyContextAssignment_4()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9950:1: ( rule__ProvidedDelegationConnector__AssemblyContextAssignment_4 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9950:2: rule__ProvidedDelegationConnector__AssemblyContextAssignment_4
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__ProvidedDelegationConnector__AssemblyContextAssignment_4_in_rule__ProvidedDelegationConnector__Group__4__Impl19711);
-            rule__ProvidedDelegationConnector__AssemblyContextAssignment_4();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getProvidedDelegationConnectorAccess().getAssemblyContextAssignment_4()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__ProvidedDelegationConnector__Group__4__Impl"
-
-
-    // $ANTLR start "rule__ProvidedDelegationConnector__Group__5"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9960:1: rule__ProvidedDelegationConnector__Group__5 : rule__ProvidedDelegationConnector__Group__5__Impl rule__ProvidedDelegationConnector__Group__6 ;
-    public final void rule__ProvidedDelegationConnector__Group__5() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9964:1: ( rule__ProvidedDelegationConnector__Group__5__Impl rule__ProvidedDelegationConnector__Group__6 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9965:2: rule__ProvidedDelegationConnector__Group__5__Impl rule__ProvidedDelegationConnector__Group__6
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__ProvidedDelegationConnector__Group__5__Impl_in_rule__ProvidedDelegationConnector__Group__519741);
-            rule__ProvidedDelegationConnector__Group__5__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__ProvidedDelegationConnector__Group__6_in_rule__ProvidedDelegationConnector__Group__519744);
-            rule__ProvidedDelegationConnector__Group__6();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__ProvidedDelegationConnector__Group__5"
-
-
-    // $ANTLR start "rule__ProvidedDelegationConnector__Group__5__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9972:1: rule__ProvidedDelegationConnector__Group__5__Impl : ( 'innerProvidedRole' ) ;
-    public final void rule__ProvidedDelegationConnector__Group__5__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9976:1: ( ( 'innerProvidedRole' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9977:1: ( 'innerProvidedRole' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9977:1: ( 'innerProvidedRole' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9978:1: 'innerProvidedRole'
-            {
-             before(grammarAccess.getProvidedDelegationConnectorAccess().getInnerProvidedRoleKeyword_5()); 
-            match(input,69,FollowSets000.FOLLOW_69_in_rule__ProvidedDelegationConnector__Group__5__Impl19772); 
-             after(grammarAccess.getProvidedDelegationConnectorAccess().getInnerProvidedRoleKeyword_5()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__ProvidedDelegationConnector__Group__5__Impl"
-
-
-    // $ANTLR start "rule__ProvidedDelegationConnector__Group__6"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9991:1: rule__ProvidedDelegationConnector__Group__6 : rule__ProvidedDelegationConnector__Group__6__Impl rule__ProvidedDelegationConnector__Group__7 ;
-    public final void rule__ProvidedDelegationConnector__Group__6() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9995:1: ( rule__ProvidedDelegationConnector__Group__6__Impl rule__ProvidedDelegationConnector__Group__7 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9996:2: rule__ProvidedDelegationConnector__Group__6__Impl rule__ProvidedDelegationConnector__Group__7
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__ProvidedDelegationConnector__Group__6__Impl_in_rule__ProvidedDelegationConnector__Group__619803);
-            rule__ProvidedDelegationConnector__Group__6__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__ProvidedDelegationConnector__Group__7_in_rule__ProvidedDelegationConnector__Group__619806);
-            rule__ProvidedDelegationConnector__Group__7();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__ProvidedDelegationConnector__Group__6"
-
-
-    // $ANTLR start "rule__ProvidedDelegationConnector__Group__6__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10003:1: rule__ProvidedDelegationConnector__Group__6__Impl : ( ( rule__ProvidedDelegationConnector__InnerProvidedRoleAssignment_6 ) ) ;
-    public final void rule__ProvidedDelegationConnector__Group__6__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10007:1: ( ( ( rule__ProvidedDelegationConnector__InnerProvidedRoleAssignment_6 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10008:1: ( ( rule__ProvidedDelegationConnector__InnerProvidedRoleAssignment_6 ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10008:1: ( ( rule__ProvidedDelegationConnector__InnerProvidedRoleAssignment_6 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10009:1: ( rule__ProvidedDelegationConnector__InnerProvidedRoleAssignment_6 )
-            {
-             before(grammarAccess.getProvidedDelegationConnectorAccess().getInnerProvidedRoleAssignment_6()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10010:1: ( rule__ProvidedDelegationConnector__InnerProvidedRoleAssignment_6 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10010:2: rule__ProvidedDelegationConnector__InnerProvidedRoleAssignment_6
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__ProvidedDelegationConnector__InnerProvidedRoleAssignment_6_in_rule__ProvidedDelegationConnector__Group__6__Impl19833);
-            rule__ProvidedDelegationConnector__InnerProvidedRoleAssignment_6();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getProvidedDelegationConnectorAccess().getInnerProvidedRoleAssignment_6()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__ProvidedDelegationConnector__Group__6__Impl"
-
-
-    // $ANTLR start "rule__ProvidedDelegationConnector__Group__7"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10020:1: rule__ProvidedDelegationConnector__Group__7 : rule__ProvidedDelegationConnector__Group__7__Impl rule__ProvidedDelegationConnector__Group__8 ;
-    public final void rule__ProvidedDelegationConnector__Group__7() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10024:1: ( rule__ProvidedDelegationConnector__Group__7__Impl rule__ProvidedDelegationConnector__Group__8 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10025:2: rule__ProvidedDelegationConnector__Group__7__Impl rule__ProvidedDelegationConnector__Group__8
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__ProvidedDelegationConnector__Group__7__Impl_in_rule__ProvidedDelegationConnector__Group__719863);
-            rule__ProvidedDelegationConnector__Group__7__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__ProvidedDelegationConnector__Group__8_in_rule__ProvidedDelegationConnector__Group__719866);
-            rule__ProvidedDelegationConnector__Group__8();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__ProvidedDelegationConnector__Group__7"
-
-
-    // $ANTLR start "rule__ProvidedDelegationConnector__Group__7__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10032:1: rule__ProvidedDelegationConnector__Group__7__Impl : ( 'outerProvidedRole' ) ;
-    public final void rule__ProvidedDelegationConnector__Group__7__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10036:1: ( ( 'outerProvidedRole' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10037:1: ( 'outerProvidedRole' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10037:1: ( 'outerProvidedRole' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10038:1: 'outerProvidedRole'
-            {
-             before(grammarAccess.getProvidedDelegationConnectorAccess().getOuterProvidedRoleKeyword_7()); 
-            match(input,70,FollowSets000.FOLLOW_70_in_rule__ProvidedDelegationConnector__Group__7__Impl19894); 
-             after(grammarAccess.getProvidedDelegationConnectorAccess().getOuterProvidedRoleKeyword_7()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__ProvidedDelegationConnector__Group__7__Impl"
-
-
-    // $ANTLR start "rule__ProvidedDelegationConnector__Group__8"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10051:1: rule__ProvidedDelegationConnector__Group__8 : rule__ProvidedDelegationConnector__Group__8__Impl rule__ProvidedDelegationConnector__Group__9 ;
-    public final void rule__ProvidedDelegationConnector__Group__8() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10055:1: ( rule__ProvidedDelegationConnector__Group__8__Impl rule__ProvidedDelegationConnector__Group__9 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10056:2: rule__ProvidedDelegationConnector__Group__8__Impl rule__ProvidedDelegationConnector__Group__9
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__ProvidedDelegationConnector__Group__8__Impl_in_rule__ProvidedDelegationConnector__Group__819925);
-            rule__ProvidedDelegationConnector__Group__8__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__ProvidedDelegationConnector__Group__9_in_rule__ProvidedDelegationConnector__Group__819928);
-            rule__ProvidedDelegationConnector__Group__9();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__ProvidedDelegationConnector__Group__8"
-
-
-    // $ANTLR start "rule__ProvidedDelegationConnector__Group__8__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10063:1: rule__ProvidedDelegationConnector__Group__8__Impl : ( ( rule__ProvidedDelegationConnector__OuterProvidedRoleAssignment_8 ) ) ;
-    public final void rule__ProvidedDelegationConnector__Group__8__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10067:1: ( ( ( rule__ProvidedDelegationConnector__OuterProvidedRoleAssignment_8 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10068:1: ( ( rule__ProvidedDelegationConnector__OuterProvidedRoleAssignment_8 ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10068:1: ( ( rule__ProvidedDelegationConnector__OuterProvidedRoleAssignment_8 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10069:1: ( rule__ProvidedDelegationConnector__OuterProvidedRoleAssignment_8 )
-            {
-             before(grammarAccess.getProvidedDelegationConnectorAccess().getOuterProvidedRoleAssignment_8()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10070:1: ( rule__ProvidedDelegationConnector__OuterProvidedRoleAssignment_8 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10070:2: rule__ProvidedDelegationConnector__OuterProvidedRoleAssignment_8
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__ProvidedDelegationConnector__OuterProvidedRoleAssignment_8_in_rule__ProvidedDelegationConnector__Group__8__Impl19955);
-            rule__ProvidedDelegationConnector__OuterProvidedRoleAssignment_8();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getProvidedDelegationConnectorAccess().getOuterProvidedRoleAssignment_8()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__ProvidedDelegationConnector__Group__8__Impl"
-
-
-    // $ANTLR start "rule__ProvidedDelegationConnector__Group__9"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10080:1: rule__ProvidedDelegationConnector__Group__9 : rule__ProvidedDelegationConnector__Group__9__Impl ;
-    public final void rule__ProvidedDelegationConnector__Group__9() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10084:1: ( rule__ProvidedDelegationConnector__Group__9__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10085:2: rule__ProvidedDelegationConnector__Group__9__Impl
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__ProvidedDelegationConnector__Group__9__Impl_in_rule__ProvidedDelegationConnector__Group__919985);
-            rule__ProvidedDelegationConnector__Group__9__Impl();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__ProvidedDelegationConnector__Group__9"
-
-
-    // $ANTLR start "rule__ProvidedDelegationConnector__Group__9__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10091:1: rule__ProvidedDelegationConnector__Group__9__Impl : ( '}' ) ;
-    public final void rule__ProvidedDelegationConnector__Group__9__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10095:1: ( ( '}' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10096:1: ( '}' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10096:1: ( '}' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10097:1: '}'
-            {
-             before(grammarAccess.getProvidedDelegationConnectorAccess().getRightCurlyBracketKeyword_9()); 
-            match(input,21,FollowSets000.FOLLOW_21_in_rule__ProvidedDelegationConnector__Group__9__Impl20013); 
-             after(grammarAccess.getProvidedDelegationConnectorAccess().getRightCurlyBracketKeyword_9()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__ProvidedDelegationConnector__Group__9__Impl"
-
-
-    // $ANTLR start "rule__RequiredDelegationConnector__Group__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10130:1: rule__RequiredDelegationConnector__Group__0 : rule__RequiredDelegationConnector__Group__0__Impl rule__RequiredDelegationConnector__Group__1 ;
-    public final void rule__RequiredDelegationConnector__Group__0() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10134:1: ( rule__RequiredDelegationConnector__Group__0__Impl rule__RequiredDelegationConnector__Group__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10135:2: rule__RequiredDelegationConnector__Group__0__Impl rule__RequiredDelegationConnector__Group__1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__RequiredDelegationConnector__Group__0__Impl_in_rule__RequiredDelegationConnector__Group__020064);
-            rule__RequiredDelegationConnector__Group__0__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__RequiredDelegationConnector__Group__1_in_rule__RequiredDelegationConnector__Group__020067);
-            rule__RequiredDelegationConnector__Group__1();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__RequiredDelegationConnector__Group__0"
-
-
-    // $ANTLR start "rule__RequiredDelegationConnector__Group__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10142:1: rule__RequiredDelegationConnector__Group__0__Impl : ( 'RequiredDelegationConnector' ) ;
-    public final void rule__RequiredDelegationConnector__Group__0__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10146:1: ( ( 'RequiredDelegationConnector' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10147:1: ( 'RequiredDelegationConnector' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10147:1: ( 'RequiredDelegationConnector' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10148:1: 'RequiredDelegationConnector'
-            {
-             before(grammarAccess.getRequiredDelegationConnectorAccess().getRequiredDelegationConnectorKeyword_0()); 
-            match(input,71,FollowSets000.FOLLOW_71_in_rule__RequiredDelegationConnector__Group__0__Impl20095); 
-             after(grammarAccess.getRequiredDelegationConnectorAccess().getRequiredDelegationConnectorKeyword_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__RequiredDelegationConnector__Group__0__Impl"
-
-
-    // $ANTLR start "rule__RequiredDelegationConnector__Group__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10161:1: rule__RequiredDelegationConnector__Group__1 : rule__RequiredDelegationConnector__Group__1__Impl rule__RequiredDelegationConnector__Group__2 ;
-    public final void rule__RequiredDelegationConnector__Group__1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10165:1: ( rule__RequiredDelegationConnector__Group__1__Impl rule__RequiredDelegationConnector__Group__2 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10166:2: rule__RequiredDelegationConnector__Group__1__Impl rule__RequiredDelegationConnector__Group__2
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__RequiredDelegationConnector__Group__1__Impl_in_rule__RequiredDelegationConnector__Group__120126);
-            rule__RequiredDelegationConnector__Group__1__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__RequiredDelegationConnector__Group__2_in_rule__RequiredDelegationConnector__Group__120129);
-            rule__RequiredDelegationConnector__Group__2();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__RequiredDelegationConnector__Group__1"
-
-
-    // $ANTLR start "rule__RequiredDelegationConnector__Group__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10173:1: rule__RequiredDelegationConnector__Group__1__Impl : ( ( rule__RequiredDelegationConnector__NameAssignment_1 ) ) ;
-    public final void rule__RequiredDelegationConnector__Group__1__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10177:1: ( ( ( rule__RequiredDelegationConnector__NameAssignment_1 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10178:1: ( ( rule__RequiredDelegationConnector__NameAssignment_1 ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10178:1: ( ( rule__RequiredDelegationConnector__NameAssignment_1 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10179:1: ( rule__RequiredDelegationConnector__NameAssignment_1 )
-            {
-             before(grammarAccess.getRequiredDelegationConnectorAccess().getNameAssignment_1()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10180:1: ( rule__RequiredDelegationConnector__NameAssignment_1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10180:2: rule__RequiredDelegationConnector__NameAssignment_1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__RequiredDelegationConnector__NameAssignment_1_in_rule__RequiredDelegationConnector__Group__1__Impl20156);
-            rule__RequiredDelegationConnector__NameAssignment_1();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getRequiredDelegationConnectorAccess().getNameAssignment_1()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__RequiredDelegationConnector__Group__1__Impl"
-
-
-    // $ANTLR start "rule__RequiredDelegationConnector__Group__2"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10190:1: rule__RequiredDelegationConnector__Group__2 : rule__RequiredDelegationConnector__Group__2__Impl rule__RequiredDelegationConnector__Group__3 ;
-    public final void rule__RequiredDelegationConnector__Group__2() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10194:1: ( rule__RequiredDelegationConnector__Group__2__Impl rule__RequiredDelegationConnector__Group__3 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10195:2: rule__RequiredDelegationConnector__Group__2__Impl rule__RequiredDelegationConnector__Group__3
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__RequiredDelegationConnector__Group__2__Impl_in_rule__RequiredDelegationConnector__Group__220186);
-            rule__RequiredDelegationConnector__Group__2__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__RequiredDelegationConnector__Group__3_in_rule__RequiredDelegationConnector__Group__220189);
-            rule__RequiredDelegationConnector__Group__3();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__RequiredDelegationConnector__Group__2"
-
-
-    // $ANTLR start "rule__RequiredDelegationConnector__Group__2__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10202:1: rule__RequiredDelegationConnector__Group__2__Impl : ( '{' ) ;
-    public final void rule__RequiredDelegationConnector__Group__2__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10206:1: ( ( '{' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10207:1: ( '{' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10207:1: ( '{' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10208:1: '{'
-            {
-             before(grammarAccess.getRequiredDelegationConnectorAccess().getLeftCurlyBracketKeyword_2()); 
-            match(input,20,FollowSets000.FOLLOW_20_in_rule__RequiredDelegationConnector__Group__2__Impl20217); 
-             after(grammarAccess.getRequiredDelegationConnectorAccess().getLeftCurlyBracketKeyword_2()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__RequiredDelegationConnector__Group__2__Impl"
-
-
-    // $ANTLR start "rule__RequiredDelegationConnector__Group__3"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10221:1: rule__RequiredDelegationConnector__Group__3 : rule__RequiredDelegationConnector__Group__3__Impl rule__RequiredDelegationConnector__Group__4 ;
-    public final void rule__RequiredDelegationConnector__Group__3() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10225:1: ( rule__RequiredDelegationConnector__Group__3__Impl rule__RequiredDelegationConnector__Group__4 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10226:2: rule__RequiredDelegationConnector__Group__3__Impl rule__RequiredDelegationConnector__Group__4
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__RequiredDelegationConnector__Group__3__Impl_in_rule__RequiredDelegationConnector__Group__320248);
-            rule__RequiredDelegationConnector__Group__3__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__RequiredDelegationConnector__Group__4_in_rule__RequiredDelegationConnector__Group__320251);
-            rule__RequiredDelegationConnector__Group__4();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__RequiredDelegationConnector__Group__3"
-
-
-    // $ANTLR start "rule__RequiredDelegationConnector__Group__3__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10233:1: rule__RequiredDelegationConnector__Group__3__Impl : ( 'assemblyContext' ) ;
-    public final void rule__RequiredDelegationConnector__Group__3__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10237:1: ( ( 'assemblyContext' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10238:1: ( 'assemblyContext' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10238:1: ( 'assemblyContext' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10239:1: 'assemblyContext'
-            {
-             before(grammarAccess.getRequiredDelegationConnectorAccess().getAssemblyContextKeyword_3()); 
-            match(input,68,FollowSets000.FOLLOW_68_in_rule__RequiredDelegationConnector__Group__3__Impl20279); 
-             after(grammarAccess.getRequiredDelegationConnectorAccess().getAssemblyContextKeyword_3()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__RequiredDelegationConnector__Group__3__Impl"
-
-
-    // $ANTLR start "rule__RequiredDelegationConnector__Group__4"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10252:1: rule__RequiredDelegationConnector__Group__4 : rule__RequiredDelegationConnector__Group__4__Impl rule__RequiredDelegationConnector__Group__5 ;
-    public final void rule__RequiredDelegationConnector__Group__4() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10256:1: ( rule__RequiredDelegationConnector__Group__4__Impl rule__RequiredDelegationConnector__Group__5 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10257:2: rule__RequiredDelegationConnector__Group__4__Impl rule__RequiredDelegationConnector__Group__5
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__RequiredDelegationConnector__Group__4__Impl_in_rule__RequiredDelegationConnector__Group__420310);
-            rule__RequiredDelegationConnector__Group__4__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__RequiredDelegationConnector__Group__5_in_rule__RequiredDelegationConnector__Group__420313);
-            rule__RequiredDelegationConnector__Group__5();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__RequiredDelegationConnector__Group__4"
-
-
-    // $ANTLR start "rule__RequiredDelegationConnector__Group__4__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10264:1: rule__RequiredDelegationConnector__Group__4__Impl : ( ( rule__RequiredDelegationConnector__AssemblyContextAssignment_4 ) ) ;
-    public final void rule__RequiredDelegationConnector__Group__4__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10268:1: ( ( ( rule__RequiredDelegationConnector__AssemblyContextAssignment_4 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10269:1: ( ( rule__RequiredDelegationConnector__AssemblyContextAssignment_4 ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10269:1: ( ( rule__RequiredDelegationConnector__AssemblyContextAssignment_4 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10270:1: ( rule__RequiredDelegationConnector__AssemblyContextAssignment_4 )
-            {
-             before(grammarAccess.getRequiredDelegationConnectorAccess().getAssemblyContextAssignment_4()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10271:1: ( rule__RequiredDelegationConnector__AssemblyContextAssignment_4 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10271:2: rule__RequiredDelegationConnector__AssemblyContextAssignment_4
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__RequiredDelegationConnector__AssemblyContextAssignment_4_in_rule__RequiredDelegationConnector__Group__4__Impl20340);
-            rule__RequiredDelegationConnector__AssemblyContextAssignment_4();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getRequiredDelegationConnectorAccess().getAssemblyContextAssignment_4()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__RequiredDelegationConnector__Group__4__Impl"
-
-
-    // $ANTLR start "rule__RequiredDelegationConnector__Group__5"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10281:1: rule__RequiredDelegationConnector__Group__5 : rule__RequiredDelegationConnector__Group__5__Impl rule__RequiredDelegationConnector__Group__6 ;
-    public final void rule__RequiredDelegationConnector__Group__5() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10285:1: ( rule__RequiredDelegationConnector__Group__5__Impl rule__RequiredDelegationConnector__Group__6 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10286:2: rule__RequiredDelegationConnector__Group__5__Impl rule__RequiredDelegationConnector__Group__6
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__RequiredDelegationConnector__Group__5__Impl_in_rule__RequiredDelegationConnector__Group__520370);
-            rule__RequiredDelegationConnector__Group__5__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__RequiredDelegationConnector__Group__6_in_rule__RequiredDelegationConnector__Group__520373);
-            rule__RequiredDelegationConnector__Group__6();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__RequiredDelegationConnector__Group__5"
-
-
-    // $ANTLR start "rule__RequiredDelegationConnector__Group__5__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10293:1: rule__RequiredDelegationConnector__Group__5__Impl : ( 'innerRequiredRole' ) ;
-    public final void rule__RequiredDelegationConnector__Group__5__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10297:1: ( ( 'innerRequiredRole' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10298:1: ( 'innerRequiredRole' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10298:1: ( 'innerRequiredRole' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10299:1: 'innerRequiredRole'
-            {
-             before(grammarAccess.getRequiredDelegationConnectorAccess().getInnerRequiredRoleKeyword_5()); 
-            match(input,72,FollowSets000.FOLLOW_72_in_rule__RequiredDelegationConnector__Group__5__Impl20401); 
-             after(grammarAccess.getRequiredDelegationConnectorAccess().getInnerRequiredRoleKeyword_5()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__RequiredDelegationConnector__Group__5__Impl"
-
-
-    // $ANTLR start "rule__RequiredDelegationConnector__Group__6"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10312:1: rule__RequiredDelegationConnector__Group__6 : rule__RequiredDelegationConnector__Group__6__Impl rule__RequiredDelegationConnector__Group__7 ;
-    public final void rule__RequiredDelegationConnector__Group__6() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10316:1: ( rule__RequiredDelegationConnector__Group__6__Impl rule__RequiredDelegationConnector__Group__7 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10317:2: rule__RequiredDelegationConnector__Group__6__Impl rule__RequiredDelegationConnector__Group__7
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__RequiredDelegationConnector__Group__6__Impl_in_rule__RequiredDelegationConnector__Group__620432);
-            rule__RequiredDelegationConnector__Group__6__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__RequiredDelegationConnector__Group__7_in_rule__RequiredDelegationConnector__Group__620435);
-            rule__RequiredDelegationConnector__Group__7();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__RequiredDelegationConnector__Group__6"
-
-
-    // $ANTLR start "rule__RequiredDelegationConnector__Group__6__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10324:1: rule__RequiredDelegationConnector__Group__6__Impl : ( ( rule__RequiredDelegationConnector__InnerRequiredRoleAssignment_6 ) ) ;
-    public final void rule__RequiredDelegationConnector__Group__6__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10328:1: ( ( ( rule__RequiredDelegationConnector__InnerRequiredRoleAssignment_6 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10329:1: ( ( rule__RequiredDelegationConnector__InnerRequiredRoleAssignment_6 ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10329:1: ( ( rule__RequiredDelegationConnector__InnerRequiredRoleAssignment_6 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10330:1: ( rule__RequiredDelegationConnector__InnerRequiredRoleAssignment_6 )
-            {
-             before(grammarAccess.getRequiredDelegationConnectorAccess().getInnerRequiredRoleAssignment_6()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10331:1: ( rule__RequiredDelegationConnector__InnerRequiredRoleAssignment_6 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10331:2: rule__RequiredDelegationConnector__InnerRequiredRoleAssignment_6
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__RequiredDelegationConnector__InnerRequiredRoleAssignment_6_in_rule__RequiredDelegationConnector__Group__6__Impl20462);
-            rule__RequiredDelegationConnector__InnerRequiredRoleAssignment_6();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getRequiredDelegationConnectorAccess().getInnerRequiredRoleAssignment_6()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__RequiredDelegationConnector__Group__6__Impl"
-
-
-    // $ANTLR start "rule__RequiredDelegationConnector__Group__7"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10341:1: rule__RequiredDelegationConnector__Group__7 : rule__RequiredDelegationConnector__Group__7__Impl rule__RequiredDelegationConnector__Group__8 ;
-    public final void rule__RequiredDelegationConnector__Group__7() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10345:1: ( rule__RequiredDelegationConnector__Group__7__Impl rule__RequiredDelegationConnector__Group__8 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10346:2: rule__RequiredDelegationConnector__Group__7__Impl rule__RequiredDelegationConnector__Group__8
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__RequiredDelegationConnector__Group__7__Impl_in_rule__RequiredDelegationConnector__Group__720492);
-            rule__RequiredDelegationConnector__Group__7__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__RequiredDelegationConnector__Group__8_in_rule__RequiredDelegationConnector__Group__720495);
-            rule__RequiredDelegationConnector__Group__8();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__RequiredDelegationConnector__Group__7"
-
-
-    // $ANTLR start "rule__RequiredDelegationConnector__Group__7__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10353:1: rule__RequiredDelegationConnector__Group__7__Impl : ( 'outerRequiredRole' ) ;
-    public final void rule__RequiredDelegationConnector__Group__7__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10357:1: ( ( 'outerRequiredRole' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10358:1: ( 'outerRequiredRole' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10358:1: ( 'outerRequiredRole' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10359:1: 'outerRequiredRole'
-            {
-             before(grammarAccess.getRequiredDelegationConnectorAccess().getOuterRequiredRoleKeyword_7()); 
-            match(input,73,FollowSets000.FOLLOW_73_in_rule__RequiredDelegationConnector__Group__7__Impl20523); 
-             after(grammarAccess.getRequiredDelegationConnectorAccess().getOuterRequiredRoleKeyword_7()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__RequiredDelegationConnector__Group__7__Impl"
-
-
-    // $ANTLR start "rule__RequiredDelegationConnector__Group__8"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10372:1: rule__RequiredDelegationConnector__Group__8 : rule__RequiredDelegationConnector__Group__8__Impl rule__RequiredDelegationConnector__Group__9 ;
-    public final void rule__RequiredDelegationConnector__Group__8() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10376:1: ( rule__RequiredDelegationConnector__Group__8__Impl rule__RequiredDelegationConnector__Group__9 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10377:2: rule__RequiredDelegationConnector__Group__8__Impl rule__RequiredDelegationConnector__Group__9
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__RequiredDelegationConnector__Group__8__Impl_in_rule__RequiredDelegationConnector__Group__820554);
-            rule__RequiredDelegationConnector__Group__8__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__RequiredDelegationConnector__Group__9_in_rule__RequiredDelegationConnector__Group__820557);
-            rule__RequiredDelegationConnector__Group__9();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__RequiredDelegationConnector__Group__8"
-
-
-    // $ANTLR start "rule__RequiredDelegationConnector__Group__8__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10384:1: rule__RequiredDelegationConnector__Group__8__Impl : ( ( rule__RequiredDelegationConnector__OuterRequiredRoleAssignment_8 ) ) ;
-    public final void rule__RequiredDelegationConnector__Group__8__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10388:1: ( ( ( rule__RequiredDelegationConnector__OuterRequiredRoleAssignment_8 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10389:1: ( ( rule__RequiredDelegationConnector__OuterRequiredRoleAssignment_8 ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10389:1: ( ( rule__RequiredDelegationConnector__OuterRequiredRoleAssignment_8 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10390:1: ( rule__RequiredDelegationConnector__OuterRequiredRoleAssignment_8 )
-            {
-             before(grammarAccess.getRequiredDelegationConnectorAccess().getOuterRequiredRoleAssignment_8()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10391:1: ( rule__RequiredDelegationConnector__OuterRequiredRoleAssignment_8 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10391:2: rule__RequiredDelegationConnector__OuterRequiredRoleAssignment_8
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__RequiredDelegationConnector__OuterRequiredRoleAssignment_8_in_rule__RequiredDelegationConnector__Group__8__Impl20584);
-            rule__RequiredDelegationConnector__OuterRequiredRoleAssignment_8();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getRequiredDelegationConnectorAccess().getOuterRequiredRoleAssignment_8()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__RequiredDelegationConnector__Group__8__Impl"
-
-
-    // $ANTLR start "rule__RequiredDelegationConnector__Group__9"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10401:1: rule__RequiredDelegationConnector__Group__9 : rule__RequiredDelegationConnector__Group__9__Impl ;
-    public final void rule__RequiredDelegationConnector__Group__9() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10405:1: ( rule__RequiredDelegationConnector__Group__9__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10406:2: rule__RequiredDelegationConnector__Group__9__Impl
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__RequiredDelegationConnector__Group__9__Impl_in_rule__RequiredDelegationConnector__Group__920614);
-            rule__RequiredDelegationConnector__Group__9__Impl();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__RequiredDelegationConnector__Group__9"
-
-
-    // $ANTLR start "rule__RequiredDelegationConnector__Group__9__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10412:1: rule__RequiredDelegationConnector__Group__9__Impl : ( '}' ) ;
-    public final void rule__RequiredDelegationConnector__Group__9__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10416:1: ( ( '}' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10417:1: ( '}' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10417:1: ( '}' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10418:1: '}'
-            {
-             before(grammarAccess.getRequiredDelegationConnectorAccess().getRightCurlyBracketKeyword_9()); 
-            match(input,21,FollowSets000.FOLLOW_21_in_rule__RequiredDelegationConnector__Group__9__Impl20642); 
-             after(grammarAccess.getRequiredDelegationConnectorAccess().getRightCurlyBracketKeyword_9()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__RequiredDelegationConnector__Group__9__Impl"
-
-
-    // $ANTLR start "rule__Repository__NameAssignment_1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10452:1: rule__Repository__NameAssignment_1 : ( ruleQualifiedName ) ;
-    public final void rule__Repository__NameAssignment_1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10456:1: ( ( ruleQualifiedName ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10457:1: ( ruleQualifiedName )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10457:1: ( ruleQualifiedName )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10458:1: ruleQualifiedName
-            {
-             before(grammarAccess.getRepositoryAccess().getNameQualifiedNameParserRuleCall_1_0()); 
-            pushFollow(FollowSets000.FOLLOW_ruleQualifiedName_in_rule__Repository__NameAssignment_120698);
-            ruleQualifiedName();
-
-            state._fsp--;
-
-             after(grammarAccess.getRepositoryAccess().getNameQualifiedNameParserRuleCall_1_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__NameAssignment_1"
-
-
-    // $ANTLR start "rule__Repository__ImportsAssignment_3_2"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10467:1: rule__Repository__ImportsAssignment_3_2 : ( ruleImport ) ;
-    public final void rule__Repository__ImportsAssignment_3_2() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10471:1: ( ( ruleImport ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10472:1: ( ruleImport )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10472:1: ( ruleImport )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10473:1: ruleImport
-            {
-             before(grammarAccess.getRepositoryAccess().getImportsImportParserRuleCall_3_2_0()); 
-            pushFollow(FollowSets000.FOLLOW_ruleImport_in_rule__Repository__ImportsAssignment_3_220729);
-            ruleImport();
-
-            state._fsp--;
-
-             after(grammarAccess.getRepositoryAccess().getImportsImportParserRuleCall_3_2_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__ImportsAssignment_3_2"
-
-
-    // $ANTLR start "rule__Repository__ImportsAssignment_3_3_1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10482:1: rule__Repository__ImportsAssignment_3_3_1 : ( ruleImport ) ;
-    public final void rule__Repository__ImportsAssignment_3_3_1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10486:1: ( ( ruleImport ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10487:1: ( ruleImport )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10487:1: ( ruleImport )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10488:1: ruleImport
-            {
-             before(grammarAccess.getRepositoryAccess().getImportsImportParserRuleCall_3_3_1_0()); 
-            pushFollow(FollowSets000.FOLLOW_ruleImport_in_rule__Repository__ImportsAssignment_3_3_120760);
-            ruleImport();
-
-            state._fsp--;
-
-             after(grammarAccess.getRepositoryAccess().getImportsImportParserRuleCall_3_3_1_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__ImportsAssignment_3_3_1"
-
-
-    // $ANTLR start "rule__Repository__DatatypesAssignment_4_2"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10497:1: rule__Repository__DatatypesAssignment_4_2 : ( ruleDataType ) ;
-    public final void rule__Repository__DatatypesAssignment_4_2() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10501:1: ( ( ruleDataType ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10502:1: ( ruleDataType )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10502:1: ( ruleDataType )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10503:1: ruleDataType
-            {
-             before(grammarAccess.getRepositoryAccess().getDatatypesDataTypeParserRuleCall_4_2_0()); 
-            pushFollow(FollowSets000.FOLLOW_ruleDataType_in_rule__Repository__DatatypesAssignment_4_220791);
-            ruleDataType();
-
-            state._fsp--;
-
-             after(grammarAccess.getRepositoryAccess().getDatatypesDataTypeParserRuleCall_4_2_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__DatatypesAssignment_4_2"
-
-
-    // $ANTLR start "rule__Repository__DatatypesAssignment_4_3_1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10512:1: rule__Repository__DatatypesAssignment_4_3_1 : ( ruleDataType ) ;
-    public final void rule__Repository__DatatypesAssignment_4_3_1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10516:1: ( ( ruleDataType ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10517:1: ( ruleDataType )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10517:1: ( ruleDataType )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10518:1: ruleDataType
-            {
-             before(grammarAccess.getRepositoryAccess().getDatatypesDataTypeParserRuleCall_4_3_1_0()); 
-            pushFollow(FollowSets000.FOLLOW_ruleDataType_in_rule__Repository__DatatypesAssignment_4_3_120822);
-            ruleDataType();
-
-            state._fsp--;
-
-             after(grammarAccess.getRepositoryAccess().getDatatypesDataTypeParserRuleCall_4_3_1_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__DatatypesAssignment_4_3_1"
-
-
-    // $ANTLR start "rule__Repository__ComponentsAssignment_5_2"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10527:1: rule__Repository__ComponentsAssignment_5_2 : ( ruleRepositoryComponent ) ;
-    public final void rule__Repository__ComponentsAssignment_5_2() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10531:1: ( ( ruleRepositoryComponent ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10532:1: ( ruleRepositoryComponent )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10532:1: ( ruleRepositoryComponent )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10533:1: ruleRepositoryComponent
-            {
-             before(grammarAccess.getRepositoryAccess().getComponentsRepositoryComponentParserRuleCall_5_2_0()); 
-            pushFollow(FollowSets000.FOLLOW_ruleRepositoryComponent_in_rule__Repository__ComponentsAssignment_5_220853);
-            ruleRepositoryComponent();
-
-            state._fsp--;
-
-             after(grammarAccess.getRepositoryAccess().getComponentsRepositoryComponentParserRuleCall_5_2_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__ComponentsAssignment_5_2"
-
-
-    // $ANTLR start "rule__Repository__ComponentsAssignment_5_3_1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10542:1: rule__Repository__ComponentsAssignment_5_3_1 : ( ruleRepositoryComponent ) ;
-    public final void rule__Repository__ComponentsAssignment_5_3_1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10546:1: ( ( ruleRepositoryComponent ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10547:1: ( ruleRepositoryComponent )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10547:1: ( ruleRepositoryComponent )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10548:1: ruleRepositoryComponent
-            {
-             before(grammarAccess.getRepositoryAccess().getComponentsRepositoryComponentParserRuleCall_5_3_1_0()); 
-            pushFollow(FollowSets000.FOLLOW_ruleRepositoryComponent_in_rule__Repository__ComponentsAssignment_5_3_120884);
-            ruleRepositoryComponent();
-
-            state._fsp--;
-
-             after(grammarAccess.getRepositoryAccess().getComponentsRepositoryComponentParserRuleCall_5_3_1_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__ComponentsAssignment_5_3_1"
-
-
-    // $ANTLR start "rule__Repository__InterfacesAssignment_6_2"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10557:1: rule__Repository__InterfacesAssignment_6_2 : ( ruleInterface ) ;
-    public final void rule__Repository__InterfacesAssignment_6_2() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10561:1: ( ( ruleInterface ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10562:1: ( ruleInterface )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10562:1: ( ruleInterface )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10563:1: ruleInterface
-            {
-             before(grammarAccess.getRepositoryAccess().getInterfacesInterfaceParserRuleCall_6_2_0()); 
-            pushFollow(FollowSets000.FOLLOW_ruleInterface_in_rule__Repository__InterfacesAssignment_6_220915);
-            ruleInterface();
-
-            state._fsp--;
-
-             after(grammarAccess.getRepositoryAccess().getInterfacesInterfaceParserRuleCall_6_2_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__InterfacesAssignment_6_2"
-
-
-    // $ANTLR start "rule__Repository__InterfacesAssignment_6_3_1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10572:1: rule__Repository__InterfacesAssignment_6_3_1 : ( ruleInterface ) ;
-    public final void rule__Repository__InterfacesAssignment_6_3_1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10576:1: ( ( ruleInterface ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10577:1: ( ruleInterface )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10577:1: ( ruleInterface )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10578:1: ruleInterface
-            {
-             before(grammarAccess.getRepositoryAccess().getInterfacesInterfaceParserRuleCall_6_3_1_0()); 
-            pushFollow(FollowSets000.FOLLOW_ruleInterface_in_rule__Repository__InterfacesAssignment_6_3_120946);
-            ruleInterface();
-
-            state._fsp--;
-
-             after(grammarAccess.getRepositoryAccess().getInterfacesInterfaceParserRuleCall_6_3_1_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__InterfacesAssignment_6_3_1"
-
-
-    // $ANTLR start "rule__Import__ImportedNamespaceAssignment_1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10587:1: rule__Import__ImportedNamespaceAssignment_1 : ( ruleQualifiedNameWithWildCard ) ;
-    public final void rule__Import__ImportedNamespaceAssignment_1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10591:1: ( ( ruleQualifiedNameWithWildCard ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10592:1: ( ruleQualifiedNameWithWildCard )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10592:1: ( ruleQualifiedNameWithWildCard )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10593:1: ruleQualifiedNameWithWildCard
-            {
-             before(grammarAccess.getImportAccess().getImportedNamespaceQualifiedNameWithWildCardParserRuleCall_1_0()); 
-            pushFollow(FollowSets000.FOLLOW_ruleQualifiedNameWithWildCard_in_rule__Import__ImportedNamespaceAssignment_120977);
-            ruleQualifiedNameWithWildCard();
-
-            state._fsp--;
-
-             after(grammarAccess.getImportAccess().getImportedNamespaceQualifiedNameWithWildCardParserRuleCall_1_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Import__ImportedNamespaceAssignment_1"
-
-
-    // $ANTLR start "rule__Interface__NameAssignment_1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10602:1: rule__Interface__NameAssignment_1 : ( ruleEString ) ;
-    public final void rule__Interface__NameAssignment_1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10606:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10607:1: ( ruleEString )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10607:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10608:1: ruleEString
-            {
-             before(grammarAccess.getInterfaceAccess().getNameEStringParserRuleCall_1_0()); 
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__Interface__NameAssignment_121008);
-            ruleEString();
-
-            state._fsp--;
-
-             after(grammarAccess.getInterfaceAccess().getNameEStringParserRuleCall_1_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Interface__NameAssignment_1"
-
-
-    // $ANTLR start "rule__Interface__ParentInterfacesAssignment_3_2"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10617:1: rule__Interface__ParentInterfacesAssignment_3_2 : ( ( ruleEString ) ) ;
-    public final void rule__Interface__ParentInterfacesAssignment_3_2() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10621:1: ( ( ( ruleEString ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10622:1: ( ( ruleEString ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10622:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10623:1: ( ruleEString )
-            {
-             before(grammarAccess.getInterfaceAccess().getParentInterfacesInterfaceCrossReference_3_2_0()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10624:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10625:1: ruleEString
-            {
-             before(grammarAccess.getInterfaceAccess().getParentInterfacesInterfaceEStringParserRuleCall_3_2_0_1()); 
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__Interface__ParentInterfacesAssignment_3_221043);
-            ruleEString();
-
-            state._fsp--;
-
-             after(grammarAccess.getInterfaceAccess().getParentInterfacesInterfaceEStringParserRuleCall_3_2_0_1()); 
-
-            }
-
-             after(grammarAccess.getInterfaceAccess().getParentInterfacesInterfaceCrossReference_3_2_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Interface__ParentInterfacesAssignment_3_2"
-
-
-    // $ANTLR start "rule__Interface__ParentInterfacesAssignment_3_3_1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10636:1: rule__Interface__ParentInterfacesAssignment_3_3_1 : ( ( ruleEString ) ) ;
-    public final void rule__Interface__ParentInterfacesAssignment_3_3_1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10640:1: ( ( ( ruleEString ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10641:1: ( ( ruleEString ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10641:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10642:1: ( ruleEString )
-            {
-             before(grammarAccess.getInterfaceAccess().getParentInterfacesInterfaceCrossReference_3_3_1_0()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10643:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10644:1: ruleEString
-            {
-             before(grammarAccess.getInterfaceAccess().getParentInterfacesInterfaceEStringParserRuleCall_3_3_1_0_1()); 
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__Interface__ParentInterfacesAssignment_3_3_121082);
-            ruleEString();
-
-            state._fsp--;
-
-             after(grammarAccess.getInterfaceAccess().getParentInterfacesInterfaceEStringParserRuleCall_3_3_1_0_1()); 
-
-            }
-
-             after(grammarAccess.getInterfaceAccess().getParentInterfacesInterfaceCrossReference_3_3_1_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Interface__ParentInterfacesAssignment_3_3_1"
-
-
-    // $ANTLR start "rule__Interface__SignaturesAssignment_4_0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10655:1: rule__Interface__SignaturesAssignment_4_0 : ( ruleSignature ) ;
-    public final void rule__Interface__SignaturesAssignment_4_0() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10659:1: ( ( ruleSignature ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10660:1: ( ruleSignature )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10660:1: ( ruleSignature )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10661:1: ruleSignature
-            {
-             before(grammarAccess.getInterfaceAccess().getSignaturesSignatureParserRuleCall_4_0_0()); 
-            pushFollow(FollowSets000.FOLLOW_ruleSignature_in_rule__Interface__SignaturesAssignment_4_021117);
-            ruleSignature();
-
-            state._fsp--;
-
-             after(grammarAccess.getInterfaceAccess().getSignaturesSignatureParserRuleCall_4_0_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Interface__SignaturesAssignment_4_0"
-
-
-    // $ANTLR start "rule__Interface__SignaturesAssignment_4_1_1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10670:1: rule__Interface__SignaturesAssignment_4_1_1 : ( ruleSignature ) ;
-    public final void rule__Interface__SignaturesAssignment_4_1_1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10674:1: ( ( ruleSignature ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10675:1: ( ruleSignature )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10675:1: ( ruleSignature )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10676:1: ruleSignature
-            {
-             before(grammarAccess.getInterfaceAccess().getSignaturesSignatureParserRuleCall_4_1_1_0()); 
-            pushFollow(FollowSets000.FOLLOW_ruleSignature_in_rule__Interface__SignaturesAssignment_4_1_121148);
-            ruleSignature();
-
-            state._fsp--;
-
-             after(grammarAccess.getInterfaceAccess().getSignaturesSignatureParserRuleCall_4_1_1_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Interface__SignaturesAssignment_4_1_1"
-
-
-    // $ANTLR start "rule__RepositoryComponent_Impl__NameAssignment_1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10685:1: rule__RepositoryComponent_Impl__NameAssignment_1 : ( ruleEString ) ;
-    public final void rule__RepositoryComponent_Impl__NameAssignment_1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10689:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10690:1: ( ruleEString )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10690:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10691:1: ruleEString
-            {
-             before(grammarAccess.getRepositoryComponent_ImplAccess().getNameEStringParserRuleCall_1_0()); 
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__RepositoryComponent_Impl__NameAssignment_121179);
-            ruleEString();
-
-            state._fsp--;
-
-             after(grammarAccess.getRepositoryComponent_ImplAccess().getNameEStringParserRuleCall_1_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__RepositoryComponent_Impl__NameAssignment_1"
-
-
-    // $ANTLR start "rule__RepositoryComponent_Impl__RelationshipAssignment_3_2"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10700:1: rule__RepositoryComponent_Impl__RelationshipAssignment_3_2 : ( ( ruleEString ) ) ;
-    public final void rule__RepositoryComponent_Impl__RelationshipAssignment_3_2() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10704:1: ( ( ( ruleEString ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10705:1: ( ( ruleEString ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10705:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10706:1: ( ruleEString )
-            {
-             before(grammarAccess.getRepositoryComponent_ImplAccess().getRelationshipRelationshipCrossReference_3_2_0()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10707:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10708:1: ruleEString
-            {
-             before(grammarAccess.getRepositoryComponent_ImplAccess().getRelationshipRelationshipEStringParserRuleCall_3_2_0_1()); 
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__RepositoryComponent_Impl__RelationshipAssignment_3_221214);
-            ruleEString();
-
-            state._fsp--;
-
-             after(grammarAccess.getRepositoryComponent_ImplAccess().getRelationshipRelationshipEStringParserRuleCall_3_2_0_1()); 
-
-            }
-
-             after(grammarAccess.getRepositoryComponent_ImplAccess().getRelationshipRelationshipCrossReference_3_2_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__RepositoryComponent_Impl__RelationshipAssignment_3_2"
-
-
-    // $ANTLR start "rule__RepositoryComponent_Impl__RelationshipAssignment_3_3_1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10719:1: rule__RepositoryComponent_Impl__RelationshipAssignment_3_3_1 : ( ( ruleEString ) ) ;
-    public final void rule__RepositoryComponent_Impl__RelationshipAssignment_3_3_1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10723:1: ( ( ( ruleEString ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10724:1: ( ( ruleEString ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10724:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10725:1: ( ruleEString )
-            {
-             before(grammarAccess.getRepositoryComponent_ImplAccess().getRelationshipRelationshipCrossReference_3_3_1_0()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10726:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10727:1: ruleEString
-            {
-             before(grammarAccess.getRepositoryComponent_ImplAccess().getRelationshipRelationshipEStringParserRuleCall_3_3_1_0_1()); 
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__RepositoryComponent_Impl__RelationshipAssignment_3_3_121253);
-            ruleEString();
-
-            state._fsp--;
-
-             after(grammarAccess.getRepositoryComponent_ImplAccess().getRelationshipRelationshipEStringParserRuleCall_3_3_1_0_1()); 
-
-            }
-
-             after(grammarAccess.getRepositoryComponent_ImplAccess().getRelationshipRelationshipCrossReference_3_3_1_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__RepositoryComponent_Impl__RelationshipAssignment_3_3_1"
-
-
-    // $ANTLR start "rule__RepositoryComponent_Impl__ProvidedRolesAssignment_4_2"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10738:1: rule__RepositoryComponent_Impl__ProvidedRolesAssignment_4_2 : ( ruleProvidedRole ) ;
-    public final void rule__RepositoryComponent_Impl__ProvidedRolesAssignment_4_2() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10742:1: ( ( ruleProvidedRole ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10743:1: ( ruleProvidedRole )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10743:1: ( ruleProvidedRole )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10744:1: ruleProvidedRole
-            {
-             before(grammarAccess.getRepositoryComponent_ImplAccess().getProvidedRolesProvidedRoleParserRuleCall_4_2_0()); 
-            pushFollow(FollowSets000.FOLLOW_ruleProvidedRole_in_rule__RepositoryComponent_Impl__ProvidedRolesAssignment_4_221288);
-            ruleProvidedRole();
-
-            state._fsp--;
-
-             after(grammarAccess.getRepositoryComponent_ImplAccess().getProvidedRolesProvidedRoleParserRuleCall_4_2_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__RepositoryComponent_Impl__ProvidedRolesAssignment_4_2"
-
-
-    // $ANTLR start "rule__RepositoryComponent_Impl__ProvidedRolesAssignment_4_3_1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10753:1: rule__RepositoryComponent_Impl__ProvidedRolesAssignment_4_3_1 : ( ruleProvidedRole ) ;
-    public final void rule__RepositoryComponent_Impl__ProvidedRolesAssignment_4_3_1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10757:1: ( ( ruleProvidedRole ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10758:1: ( ruleProvidedRole )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10758:1: ( ruleProvidedRole )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10759:1: ruleProvidedRole
-            {
-             before(grammarAccess.getRepositoryComponent_ImplAccess().getProvidedRolesProvidedRoleParserRuleCall_4_3_1_0()); 
-            pushFollow(FollowSets000.FOLLOW_ruleProvidedRole_in_rule__RepositoryComponent_Impl__ProvidedRolesAssignment_4_3_121319);
-            ruleProvidedRole();
-
-            state._fsp--;
-
-             after(grammarAccess.getRepositoryComponent_ImplAccess().getProvidedRolesProvidedRoleParserRuleCall_4_3_1_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__RepositoryComponent_Impl__ProvidedRolesAssignment_4_3_1"
-
-
-    // $ANTLR start "rule__RepositoryComponent_Impl__RequiredRolesAssignment_5_2"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10768:1: rule__RepositoryComponent_Impl__RequiredRolesAssignment_5_2 : ( ruleRequiredRole ) ;
-    public final void rule__RepositoryComponent_Impl__RequiredRolesAssignment_5_2() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10772:1: ( ( ruleRequiredRole ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10773:1: ( ruleRequiredRole )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10773:1: ( ruleRequiredRole )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10774:1: ruleRequiredRole
-            {
-             before(grammarAccess.getRepositoryComponent_ImplAccess().getRequiredRolesRequiredRoleParserRuleCall_5_2_0()); 
-            pushFollow(FollowSets000.FOLLOW_ruleRequiredRole_in_rule__RepositoryComponent_Impl__RequiredRolesAssignment_5_221350);
-            ruleRequiredRole();
-
-            state._fsp--;
-
-             after(grammarAccess.getRepositoryComponent_ImplAccess().getRequiredRolesRequiredRoleParserRuleCall_5_2_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__RepositoryComponent_Impl__RequiredRolesAssignment_5_2"
-
-
-    // $ANTLR start "rule__RepositoryComponent_Impl__RequiredRolesAssignment_5_3_1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10783:1: rule__RepositoryComponent_Impl__RequiredRolesAssignment_5_3_1 : ( ruleRequiredRole ) ;
-    public final void rule__RepositoryComponent_Impl__RequiredRolesAssignment_5_3_1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10787:1: ( ( ruleRequiredRole ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10788:1: ( ruleRequiredRole )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10788:1: ( ruleRequiredRole )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10789:1: ruleRequiredRole
-            {
-             before(grammarAccess.getRepositoryComponent_ImplAccess().getRequiredRolesRequiredRoleParserRuleCall_5_3_1_0()); 
-            pushFollow(FollowSets000.FOLLOW_ruleRequiredRole_in_rule__RepositoryComponent_Impl__RequiredRolesAssignment_5_3_121381);
-            ruleRequiredRole();
-
-            state._fsp--;
-
-             after(grammarAccess.getRepositoryComponent_ImplAccess().getRequiredRolesRequiredRoleParserRuleCall_5_3_1_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__RepositoryComponent_Impl__RequiredRolesAssignment_5_3_1"
-
-
-    // $ANTLR start "rule__CollectionDataType__NameAssignment_1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10798:1: rule__CollectionDataType__NameAssignment_1 : ( ruleEString ) ;
-    public final void rule__CollectionDataType__NameAssignment_1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10802:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10803:1: ( ruleEString )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10803:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10804:1: ruleEString
-            {
-             before(grammarAccess.getCollectionDataTypeAccess().getNameEStringParserRuleCall_1_0()); 
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__CollectionDataType__NameAssignment_121412);
-            ruleEString();
-
-            state._fsp--;
-
-             after(grammarAccess.getCollectionDataTypeAccess().getNameEStringParserRuleCall_1_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CollectionDataType__NameAssignment_1"
-
-
-    // $ANTLR start "rule__CollectionDataType__InnerTypeAssignment_4"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10813:1: rule__CollectionDataType__InnerTypeAssignment_4 : ( ( ruleEString ) ) ;
-    public final void rule__CollectionDataType__InnerTypeAssignment_4() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10817:1: ( ( ( ruleEString ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10818:1: ( ( ruleEString ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10818:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10819:1: ( ruleEString )
-            {
-             before(grammarAccess.getCollectionDataTypeAccess().getInnerTypeDataTypeCrossReference_4_0()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10820:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10821:1: ruleEString
-            {
-             before(grammarAccess.getCollectionDataTypeAccess().getInnerTypeDataTypeEStringParserRuleCall_4_0_1()); 
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__CollectionDataType__InnerTypeAssignment_421447);
-            ruleEString();
-
-            state._fsp--;
-
-             after(grammarAccess.getCollectionDataTypeAccess().getInnerTypeDataTypeEStringParserRuleCall_4_0_1()); 
-
-            }
-
-             after(grammarAccess.getCollectionDataTypeAccess().getInnerTypeDataTypeCrossReference_4_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CollectionDataType__InnerTypeAssignment_4"
-
-
-    // $ANTLR start "rule__CompositeDataType__NameAssignment_1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10832:1: rule__CompositeDataType__NameAssignment_1 : ( ruleEString ) ;
-    public final void rule__CompositeDataType__NameAssignment_1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10836:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10837:1: ( ruleEString )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10837:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10838:1: ruleEString
-            {
-             before(grammarAccess.getCompositeDataTypeAccess().getNameEStringParserRuleCall_1_0()); 
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__CompositeDataType__NameAssignment_121482);
-            ruleEString();
-
-            state._fsp--;
-
-             after(grammarAccess.getCompositeDataTypeAccess().getNameEStringParserRuleCall_1_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CompositeDataType__NameAssignment_1"
-
-
-    // $ANTLR start "rule__CompositeDataType__ParentTypesAssignment_3_2"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10847:1: rule__CompositeDataType__ParentTypesAssignment_3_2 : ( ( ruleEString ) ) ;
-    public final void rule__CompositeDataType__ParentTypesAssignment_3_2() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10851:1: ( ( ( ruleEString ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10852:1: ( ( ruleEString ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10852:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10853:1: ( ruleEString )
-            {
-             before(grammarAccess.getCompositeDataTypeAccess().getParentTypesCompositeDataTypeCrossReference_3_2_0()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10854:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10855:1: ruleEString
-            {
-             before(grammarAccess.getCompositeDataTypeAccess().getParentTypesCompositeDataTypeEStringParserRuleCall_3_2_0_1()); 
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__CompositeDataType__ParentTypesAssignment_3_221517);
-            ruleEString();
-
-            state._fsp--;
-
-             after(grammarAccess.getCompositeDataTypeAccess().getParentTypesCompositeDataTypeEStringParserRuleCall_3_2_0_1()); 
-
-            }
-
-             after(grammarAccess.getCompositeDataTypeAccess().getParentTypesCompositeDataTypeCrossReference_3_2_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CompositeDataType__ParentTypesAssignment_3_2"
-
-
-    // $ANTLR start "rule__CompositeDataType__ParentTypesAssignment_3_3_1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10866:1: rule__CompositeDataType__ParentTypesAssignment_3_3_1 : ( ( ruleEString ) ) ;
-    public final void rule__CompositeDataType__ParentTypesAssignment_3_3_1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10870:1: ( ( ( ruleEString ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10871:1: ( ( ruleEString ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10871:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10872:1: ( ruleEString )
-            {
-             before(grammarAccess.getCompositeDataTypeAccess().getParentTypesCompositeDataTypeCrossReference_3_3_1_0()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10873:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10874:1: ruleEString
-            {
-             before(grammarAccess.getCompositeDataTypeAccess().getParentTypesCompositeDataTypeEStringParserRuleCall_3_3_1_0_1()); 
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__CompositeDataType__ParentTypesAssignment_3_3_121556);
-            ruleEString();
-
-            state._fsp--;
-
-             after(grammarAccess.getCompositeDataTypeAccess().getParentTypesCompositeDataTypeEStringParserRuleCall_3_3_1_0_1()); 
-
-            }
-
-             after(grammarAccess.getCompositeDataTypeAccess().getParentTypesCompositeDataTypeCrossReference_3_3_1_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CompositeDataType__ParentTypesAssignment_3_3_1"
-
-
-    // $ANTLR start "rule__CompositeDataType__InnerDeclarationsAssignment_4_2"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10885:1: rule__CompositeDataType__InnerDeclarationsAssignment_4_2 : ( ruleInnerDeclaration ) ;
-    public final void rule__CompositeDataType__InnerDeclarationsAssignment_4_2() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10889:1: ( ( ruleInnerDeclaration ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10890:1: ( ruleInnerDeclaration )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10890:1: ( ruleInnerDeclaration )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10891:1: ruleInnerDeclaration
-            {
-             before(grammarAccess.getCompositeDataTypeAccess().getInnerDeclarationsInnerDeclarationParserRuleCall_4_2_0()); 
-            pushFollow(FollowSets000.FOLLOW_ruleInnerDeclaration_in_rule__CompositeDataType__InnerDeclarationsAssignment_4_221591);
-            ruleInnerDeclaration();
-
-            state._fsp--;
-
-             after(grammarAccess.getCompositeDataTypeAccess().getInnerDeclarationsInnerDeclarationParserRuleCall_4_2_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CompositeDataType__InnerDeclarationsAssignment_4_2"
-
-
-    // $ANTLR start "rule__CompositeDataType__InnerDeclarationsAssignment_4_3_1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10900:1: rule__CompositeDataType__InnerDeclarationsAssignment_4_3_1 : ( ruleInnerDeclaration ) ;
-    public final void rule__CompositeDataType__InnerDeclarationsAssignment_4_3_1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10904:1: ( ( ruleInnerDeclaration ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10905:1: ( ruleInnerDeclaration )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10905:1: ( ruleInnerDeclaration )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10906:1: ruleInnerDeclaration
-            {
-             before(grammarAccess.getCompositeDataTypeAccess().getInnerDeclarationsInnerDeclarationParserRuleCall_4_3_1_0()); 
-            pushFollow(FollowSets000.FOLLOW_ruleInnerDeclaration_in_rule__CompositeDataType__InnerDeclarationsAssignment_4_3_121622);
-            ruleInnerDeclaration();
-
-            state._fsp--;
-
-             after(grammarAccess.getCompositeDataTypeAccess().getInnerDeclarationsInnerDeclarationParserRuleCall_4_3_1_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CompositeDataType__InnerDeclarationsAssignment_4_3_1"
-
-
-    // $ANTLR start "rule__PrimitiveDataType__TypeAssignment_3"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10915:1: rule__PrimitiveDataType__TypeAssignment_3 : ( rulePrimitiveTypeEnum ) ;
-    public final void rule__PrimitiveDataType__TypeAssignment_3() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10919:1: ( ( rulePrimitiveTypeEnum ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10920:1: ( rulePrimitiveTypeEnum )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10920:1: ( rulePrimitiveTypeEnum )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10921:1: rulePrimitiveTypeEnum
-            {
-             before(grammarAccess.getPrimitiveDataTypeAccess().getTypePrimitiveTypeEnumEnumRuleCall_3_0()); 
-            pushFollow(FollowSets000.FOLLOW_rulePrimitiveTypeEnum_in_rule__PrimitiveDataType__TypeAssignment_321653);
-            rulePrimitiveTypeEnum();
-
-            state._fsp--;
-
-             after(grammarAccess.getPrimitiveDataTypeAccess().getTypePrimitiveTypeEnumEnumRuleCall_3_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__PrimitiveDataType__TypeAssignment_3"
-
-
-    // $ANTLR start "rule__PrimitiveDataType__NameAssignment_5"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10930:1: rule__PrimitiveDataType__NameAssignment_5 : ( ruleEString ) ;
-    public final void rule__PrimitiveDataType__NameAssignment_5() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10934:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10935:1: ( ruleEString )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10935:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10936:1: ruleEString
-            {
-             before(grammarAccess.getPrimitiveDataTypeAccess().getNameEStringParserRuleCall_5_0()); 
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__PrimitiveDataType__NameAssignment_521684);
-            ruleEString();
-
-            state._fsp--;
-
-             after(grammarAccess.getPrimitiveDataTypeAccess().getNameEStringParserRuleCall_5_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__PrimitiveDataType__NameAssignment_5"
-
-
-    // $ANTLR start "rule__InnerDeclaration__NameAssignment_1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10945:1: rule__InnerDeclaration__NameAssignment_1 : ( ruleEString ) ;
-    public final void rule__InnerDeclaration__NameAssignment_1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10949:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10950:1: ( ruleEString )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10950:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10951:1: ruleEString
-            {
-             before(grammarAccess.getInnerDeclarationAccess().getNameEStringParserRuleCall_1_0()); 
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__InnerDeclaration__NameAssignment_121715);
-            ruleEString();
-
-            state._fsp--;
-
-             after(grammarAccess.getInnerDeclarationAccess().getNameEStringParserRuleCall_1_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__InnerDeclaration__NameAssignment_1"
-
-
-    // $ANTLR start "rule__InnerDeclaration__DataTypeAssignment_4"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10960:1: rule__InnerDeclaration__DataTypeAssignment_4 : ( ( ruleEString ) ) ;
-    public final void rule__InnerDeclaration__DataTypeAssignment_4() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10964:1: ( ( ( ruleEString ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10965:1: ( ( ruleEString ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10965:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10966:1: ( ruleEString )
-            {
-             before(grammarAccess.getInnerDeclarationAccess().getDataTypeDataTypeCrossReference_4_0()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10967:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10968:1: ruleEString
-            {
-             before(grammarAccess.getInnerDeclarationAccess().getDataTypeDataTypeEStringParserRuleCall_4_0_1()); 
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__InnerDeclaration__DataTypeAssignment_421750);
-            ruleEString();
-
-            state._fsp--;
-
-             after(grammarAccess.getInnerDeclarationAccess().getDataTypeDataTypeEStringParserRuleCall_4_0_1()); 
-
-            }
-
-             after(grammarAccess.getInnerDeclarationAccess().getDataTypeDataTypeCrossReference_4_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__InnerDeclaration__DataTypeAssignment_4"
-
-
-    // $ANTLR start "rule__Signature__ReturnTypeAssignment_0_0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10979:1: rule__Signature__ReturnTypeAssignment_0_0 : ( ( ruleEString ) ) ;
-    public final void rule__Signature__ReturnTypeAssignment_0_0() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10983:1: ( ( ( ruleEString ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10984:1: ( ( ruleEString ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10984:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10985:1: ( ruleEString )
-            {
-             before(grammarAccess.getSignatureAccess().getReturnTypeDataTypeCrossReference_0_0_0()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10986:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10987:1: ruleEString
-            {
-             before(grammarAccess.getSignatureAccess().getReturnTypeDataTypeEStringParserRuleCall_0_0_0_1()); 
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__Signature__ReturnTypeAssignment_0_021789);
-            ruleEString();
-
-            state._fsp--;
-
-             after(grammarAccess.getSignatureAccess().getReturnTypeDataTypeEStringParserRuleCall_0_0_0_1()); 
-
-            }
-
-             after(grammarAccess.getSignatureAccess().getReturnTypeDataTypeCrossReference_0_0_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Signature__ReturnTypeAssignment_0_0"
-
-
-    // $ANTLR start "rule__Signature__NameAssignment_1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10998:1: rule__Signature__NameAssignment_1 : ( ruleEString ) ;
-    public final void rule__Signature__NameAssignment_1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11002:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11003:1: ( ruleEString )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11003:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11004:1: ruleEString
-            {
-             before(grammarAccess.getSignatureAccess().getNameEStringParserRuleCall_1_0()); 
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__Signature__NameAssignment_121824);
-            ruleEString();
-
-            state._fsp--;
-
-             after(grammarAccess.getSignatureAccess().getNameEStringParserRuleCall_1_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Signature__NameAssignment_1"
-
-
-    // $ANTLR start "rule__Signature__ParametersAssignment_3_0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11013:1: rule__Signature__ParametersAssignment_3_0 : ( ruleParameter ) ;
-    public final void rule__Signature__ParametersAssignment_3_0() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11017:1: ( ( ruleParameter ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11018:1: ( ruleParameter )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11018:1: ( ruleParameter )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11019:1: ruleParameter
-            {
-             before(grammarAccess.getSignatureAccess().getParametersParameterParserRuleCall_3_0_0()); 
-            pushFollow(FollowSets000.FOLLOW_ruleParameter_in_rule__Signature__ParametersAssignment_3_021855);
-            ruleParameter();
-
-            state._fsp--;
-
-             after(grammarAccess.getSignatureAccess().getParametersParameterParserRuleCall_3_0_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Signature__ParametersAssignment_3_0"
-
-
-    // $ANTLR start "rule__Signature__ParametersAssignment_3_1_1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11028:1: rule__Signature__ParametersAssignment_3_1_1 : ( ruleParameter ) ;
-    public final void rule__Signature__ParametersAssignment_3_1_1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11032:1: ( ( ruleParameter ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11033:1: ( ruleParameter )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11033:1: ( ruleParameter )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11034:1: ruleParameter
-            {
-             before(grammarAccess.getSignatureAccess().getParametersParameterParserRuleCall_3_1_1_0()); 
-            pushFollow(FollowSets000.FOLLOW_ruleParameter_in_rule__Signature__ParametersAssignment_3_1_121886);
-            ruleParameter();
-
-            state._fsp--;
-
-             after(grammarAccess.getSignatureAccess().getParametersParameterParserRuleCall_3_1_1_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Signature__ParametersAssignment_3_1_1"
-
-
-    // $ANTLR start "rule__Parameter__DataTypeAssignment_0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11043:1: rule__Parameter__DataTypeAssignment_0 : ( ( ruleEString ) ) ;
-    public final void rule__Parameter__DataTypeAssignment_0() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11047:1: ( ( ( ruleEString ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11048:1: ( ( ruleEString ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11048:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11049:1: ( ruleEString )
-            {
-             before(grammarAccess.getParameterAccess().getDataTypeDataTypeCrossReference_0_0()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11050:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11051:1: ruleEString
-            {
-             before(grammarAccess.getParameterAccess().getDataTypeDataTypeEStringParserRuleCall_0_0_1()); 
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__Parameter__DataTypeAssignment_021921);
-            ruleEString();
-
-            state._fsp--;
-
-             after(grammarAccess.getParameterAccess().getDataTypeDataTypeEStringParserRuleCall_0_0_1()); 
-
-            }
-
-             after(grammarAccess.getParameterAccess().getDataTypeDataTypeCrossReference_0_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Parameter__DataTypeAssignment_0"
-
-
-    // $ANTLR start "rule__Parameter__NameAssignment_1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11062:1: rule__Parameter__NameAssignment_1 : ( ruleEString ) ;
-    public final void rule__Parameter__NameAssignment_1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11066:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11067:1: ( ruleEString )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11067:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11068:1: ruleEString
-            {
-             before(grammarAccess.getParameterAccess().getNameEStringParserRuleCall_1_0()); 
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__Parameter__NameAssignment_121956);
-            ruleEString();
-
-            state._fsp--;
-
-             after(grammarAccess.getParameterAccess().getNameEStringParserRuleCall_1_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Parameter__NameAssignment_1"
-
-
-    // $ANTLR start "rule__ProvidedRole__InterfaceAssignment_1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11077:1: rule__ProvidedRole__InterfaceAssignment_1 : ( ( ruleEString ) ) ;
-    public final void rule__ProvidedRole__InterfaceAssignment_1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11081:1: ( ( ( ruleEString ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11082:1: ( ( ruleEString ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11082:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11083:1: ( ruleEString )
-            {
-             before(grammarAccess.getProvidedRoleAccess().getInterfaceInterfaceCrossReference_1_0()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11084:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11085:1: ruleEString
-            {
-             before(grammarAccess.getProvidedRoleAccess().getInterfaceInterfaceEStringParserRuleCall_1_0_1()); 
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__ProvidedRole__InterfaceAssignment_121991);
-            ruleEString();
-
-            state._fsp--;
-
-             after(grammarAccess.getProvidedRoleAccess().getInterfaceInterfaceEStringParserRuleCall_1_0_1()); 
-
-            }
-
-             after(grammarAccess.getProvidedRoleAccess().getInterfaceInterfaceCrossReference_1_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__ProvidedRole__InterfaceAssignment_1"
-
-
-    // $ANTLR start "rule__RequiredRole__InterfaceAssignment_1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11096:1: rule__RequiredRole__InterfaceAssignment_1 : ( ( ruleEString ) ) ;
-    public final void rule__RequiredRole__InterfaceAssignment_1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11100:1: ( ( ( ruleEString ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11101:1: ( ( ruleEString ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11101:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11102:1: ( ruleEString )
-            {
-             before(grammarAccess.getRequiredRoleAccess().getInterfaceInterfaceCrossReference_1_0()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11103:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11104:1: ruleEString
-            {
-             before(grammarAccess.getRequiredRoleAccess().getInterfaceInterfaceEStringParserRuleCall_1_0_1()); 
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__RequiredRole__InterfaceAssignment_122030);
-            ruleEString();
-
-            state._fsp--;
-
-             after(grammarAccess.getRequiredRoleAccess().getInterfaceInterfaceEStringParserRuleCall_1_0_1()); 
-
-            }
-
-             after(grammarAccess.getRequiredRoleAccess().getInterfaceInterfaceCrossReference_1_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__RequiredRole__InterfaceAssignment_1"
-
-
-    // $ANTLR start "rule__BasicComponent__NameAssignment_1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11115:1: rule__BasicComponent__NameAssignment_1 : ( ruleEString ) ;
-    public final void rule__BasicComponent__NameAssignment_1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11119:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11120:1: ( ruleEString )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11120:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11121:1: ruleEString
-            {
-             before(grammarAccess.getBasicComponentAccess().getNameEStringParserRuleCall_1_0()); 
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__BasicComponent__NameAssignment_122065);
-            ruleEString();
-
-            state._fsp--;
-
-             after(grammarAccess.getBasicComponentAccess().getNameEStringParserRuleCall_1_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__BasicComponent__NameAssignment_1"
-
-
-    // $ANTLR start "rule__BasicComponent__ProvidedRolesAssignment_2_0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11130:1: rule__BasicComponent__ProvidedRolesAssignment_2_0 : ( ruleProvidedRole ) ;
-    public final void rule__BasicComponent__ProvidedRolesAssignment_2_0() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11134:1: ( ( ruleProvidedRole ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11135:1: ( ruleProvidedRole )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11135:1: ( ruleProvidedRole )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11136:1: ruleProvidedRole
-            {
-             before(grammarAccess.getBasicComponentAccess().getProvidedRolesProvidedRoleParserRuleCall_2_0_0()); 
-            pushFollow(FollowSets000.FOLLOW_ruleProvidedRole_in_rule__BasicComponent__ProvidedRolesAssignment_2_022096);
-            ruleProvidedRole();
-
-            state._fsp--;
-
-             after(grammarAccess.getBasicComponentAccess().getProvidedRolesProvidedRoleParserRuleCall_2_0_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__BasicComponent__ProvidedRolesAssignment_2_0"
-
-
-    // $ANTLR start "rule__BasicComponent__ProvidedRolesAssignment_2_1_1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11145:1: rule__BasicComponent__ProvidedRolesAssignment_2_1_1 : ( ruleProvidedRole ) ;
-    public final void rule__BasicComponent__ProvidedRolesAssignment_2_1_1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11149:1: ( ( ruleProvidedRole ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11150:1: ( ruleProvidedRole )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11150:1: ( ruleProvidedRole )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11151:1: ruleProvidedRole
-            {
-             before(grammarAccess.getBasicComponentAccess().getProvidedRolesProvidedRoleParserRuleCall_2_1_1_0()); 
-            pushFollow(FollowSets000.FOLLOW_ruleProvidedRole_in_rule__BasicComponent__ProvidedRolesAssignment_2_1_122127);
-            ruleProvidedRole();
-
-            state._fsp--;
-
-             after(grammarAccess.getBasicComponentAccess().getProvidedRolesProvidedRoleParserRuleCall_2_1_1_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__BasicComponent__ProvidedRolesAssignment_2_1_1"
-
-
-    // $ANTLR start "rule__BasicComponent__RequiredRolesAssignment_3_0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11160:1: rule__BasicComponent__RequiredRolesAssignment_3_0 : ( ruleRequiredRole ) ;
-    public final void rule__BasicComponent__RequiredRolesAssignment_3_0() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11164:1: ( ( ruleRequiredRole ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11165:1: ( ruleRequiredRole )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11165:1: ( ruleRequiredRole )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11166:1: ruleRequiredRole
-            {
-             before(grammarAccess.getBasicComponentAccess().getRequiredRolesRequiredRoleParserRuleCall_3_0_0()); 
-            pushFollow(FollowSets000.FOLLOW_ruleRequiredRole_in_rule__BasicComponent__RequiredRolesAssignment_3_022158);
-            ruleRequiredRole();
-
-            state._fsp--;
-
-             after(grammarAccess.getBasicComponentAccess().getRequiredRolesRequiredRoleParserRuleCall_3_0_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__BasicComponent__RequiredRolesAssignment_3_0"
-
-
-    // $ANTLR start "rule__BasicComponent__RequiredRolesAssignment_3_1_1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11175:1: rule__BasicComponent__RequiredRolesAssignment_3_1_1 : ( ruleRequiredRole ) ;
-    public final void rule__BasicComponent__RequiredRolesAssignment_3_1_1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11179:1: ( ( ruleRequiredRole ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11180:1: ( ruleRequiredRole )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11180:1: ( ruleRequiredRole )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11181:1: ruleRequiredRole
-            {
-             before(grammarAccess.getBasicComponentAccess().getRequiredRolesRequiredRoleParserRuleCall_3_1_1_0()); 
-            pushFollow(FollowSets000.FOLLOW_ruleRequiredRole_in_rule__BasicComponent__RequiredRolesAssignment_3_1_122189);
-            ruleRequiredRole();
-
-            state._fsp--;
-
-             after(grammarAccess.getBasicComponentAccess().getRequiredRolesRequiredRoleParserRuleCall_3_1_1_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__BasicComponent__RequiredRolesAssignment_3_1_1"
-
-
-    // $ANTLR start "rule__BasicComponent__RelationshipAssignment_5_2"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11190:1: rule__BasicComponent__RelationshipAssignment_5_2 : ( ( ruleEString ) ) ;
-    public final void rule__BasicComponent__RelationshipAssignment_5_2() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11194:1: ( ( ( ruleEString ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11195:1: ( ( ruleEString ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11195:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11196:1: ( ruleEString )
-            {
-             before(grammarAccess.getBasicComponentAccess().getRelationshipRelationshipCrossReference_5_2_0()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11197:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11198:1: ruleEString
-            {
-             before(grammarAccess.getBasicComponentAccess().getRelationshipRelationshipEStringParserRuleCall_5_2_0_1()); 
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__BasicComponent__RelationshipAssignment_5_222224);
-            ruleEString();
-
-            state._fsp--;
-
-             after(grammarAccess.getBasicComponentAccess().getRelationshipRelationshipEStringParserRuleCall_5_2_0_1()); 
-
-            }
-
-             after(grammarAccess.getBasicComponentAccess().getRelationshipRelationshipCrossReference_5_2_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__BasicComponent__RelationshipAssignment_5_2"
-
-
-    // $ANTLR start "rule__BasicComponent__RelationshipAssignment_5_3_1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11209:1: rule__BasicComponent__RelationshipAssignment_5_3_1 : ( ( ruleEString ) ) ;
-    public final void rule__BasicComponent__RelationshipAssignment_5_3_1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11213:1: ( ( ( ruleEString ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11214:1: ( ( ruleEString ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11214:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11215:1: ( ruleEString )
-            {
-             before(grammarAccess.getBasicComponentAccess().getRelationshipRelationshipCrossReference_5_3_1_0()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11216:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11217:1: ruleEString
-            {
-             before(grammarAccess.getBasicComponentAccess().getRelationshipRelationshipEStringParserRuleCall_5_3_1_0_1()); 
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__BasicComponent__RelationshipAssignment_5_3_122263);
-            ruleEString();
-
-            state._fsp--;
-
-             after(grammarAccess.getBasicComponentAccess().getRelationshipRelationshipEStringParserRuleCall_5_3_1_0_1()); 
-
-            }
-
-             after(grammarAccess.getBasicComponentAccess().getRelationshipRelationshipCrossReference_5_3_1_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__BasicComponent__RelationshipAssignment_5_3_1"
-
-
-    // $ANTLR start "rule__CompositeComponent__NameAssignment_1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11228:1: rule__CompositeComponent__NameAssignment_1 : ( ruleEString ) ;
-    public final void rule__CompositeComponent__NameAssignment_1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11232:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11233:1: ( ruleEString )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11233:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11234:1: ruleEString
-            {
-             before(grammarAccess.getCompositeComponentAccess().getNameEStringParserRuleCall_1_0()); 
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__CompositeComponent__NameAssignment_122298);
-            ruleEString();
-
-            state._fsp--;
-
-             after(grammarAccess.getCompositeComponentAccess().getNameEStringParserRuleCall_1_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CompositeComponent__NameAssignment_1"
-
-
-    // $ANTLR start "rule__CompositeComponent__ProvidedRolesAssignment_2_0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11243:1: rule__CompositeComponent__ProvidedRolesAssignment_2_0 : ( ruleProvidedRole ) ;
-    public final void rule__CompositeComponent__ProvidedRolesAssignment_2_0() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11247:1: ( ( ruleProvidedRole ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11248:1: ( ruleProvidedRole )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11248:1: ( ruleProvidedRole )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11249:1: ruleProvidedRole
-            {
-             before(grammarAccess.getCompositeComponentAccess().getProvidedRolesProvidedRoleParserRuleCall_2_0_0()); 
-            pushFollow(FollowSets000.FOLLOW_ruleProvidedRole_in_rule__CompositeComponent__ProvidedRolesAssignment_2_022329);
-            ruleProvidedRole();
-
-            state._fsp--;
-
-             after(grammarAccess.getCompositeComponentAccess().getProvidedRolesProvidedRoleParserRuleCall_2_0_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CompositeComponent__ProvidedRolesAssignment_2_0"
-
-
-    // $ANTLR start "rule__CompositeComponent__ProvidedRolesAssignment_2_1_1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11258:1: rule__CompositeComponent__ProvidedRolesAssignment_2_1_1 : ( ruleProvidedRole ) ;
-    public final void rule__CompositeComponent__ProvidedRolesAssignment_2_1_1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11262:1: ( ( ruleProvidedRole ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11263:1: ( ruleProvidedRole )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11263:1: ( ruleProvidedRole )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11264:1: ruleProvidedRole
-            {
-             before(grammarAccess.getCompositeComponentAccess().getProvidedRolesProvidedRoleParserRuleCall_2_1_1_0()); 
-            pushFollow(FollowSets000.FOLLOW_ruleProvidedRole_in_rule__CompositeComponent__ProvidedRolesAssignment_2_1_122360);
-            ruleProvidedRole();
-
-            state._fsp--;
-
-             after(grammarAccess.getCompositeComponentAccess().getProvidedRolesProvidedRoleParserRuleCall_2_1_1_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CompositeComponent__ProvidedRolesAssignment_2_1_1"
-
-
-    // $ANTLR start "rule__CompositeComponent__RequiredRolesAssignment_3_0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11273:1: rule__CompositeComponent__RequiredRolesAssignment_3_0 : ( ruleRequiredRole ) ;
-    public final void rule__CompositeComponent__RequiredRolesAssignment_3_0() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11277:1: ( ( ruleRequiredRole ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11278:1: ( ruleRequiredRole )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11278:1: ( ruleRequiredRole )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11279:1: ruleRequiredRole
-            {
-             before(grammarAccess.getCompositeComponentAccess().getRequiredRolesRequiredRoleParserRuleCall_3_0_0()); 
-            pushFollow(FollowSets000.FOLLOW_ruleRequiredRole_in_rule__CompositeComponent__RequiredRolesAssignment_3_022391);
-            ruleRequiredRole();
-
-            state._fsp--;
-
-             after(grammarAccess.getCompositeComponentAccess().getRequiredRolesRequiredRoleParserRuleCall_3_0_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CompositeComponent__RequiredRolesAssignment_3_0"
-
-
-    // $ANTLR start "rule__CompositeComponent__RequiredRolesAssignment_3_1_1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11288:1: rule__CompositeComponent__RequiredRolesAssignment_3_1_1 : ( ruleRequiredRole ) ;
-    public final void rule__CompositeComponent__RequiredRolesAssignment_3_1_1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11292:1: ( ( ruleRequiredRole ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11293:1: ( ruleRequiredRole )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11293:1: ( ruleRequiredRole )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11294:1: ruleRequiredRole
-            {
-             before(grammarAccess.getCompositeComponentAccess().getRequiredRolesRequiredRoleParserRuleCall_3_1_1_0()); 
-            pushFollow(FollowSets000.FOLLOW_ruleRequiredRole_in_rule__CompositeComponent__RequiredRolesAssignment_3_1_122422);
-            ruleRequiredRole();
-
-            state._fsp--;
-
-             after(grammarAccess.getCompositeComponentAccess().getRequiredRolesRequiredRoleParserRuleCall_3_1_1_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CompositeComponent__RequiredRolesAssignment_3_1_1"
-
-
-    // $ANTLR start "rule__CompositeComponent__RelationshipAssignment_5_2"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11303:1: rule__CompositeComponent__RelationshipAssignment_5_2 : ( ( ruleEString ) ) ;
-    public final void rule__CompositeComponent__RelationshipAssignment_5_2() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11307:1: ( ( ( ruleEString ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11308:1: ( ( ruleEString ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11308:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11309:1: ( ruleEString )
-            {
-             before(grammarAccess.getCompositeComponentAccess().getRelationshipRelationshipCrossReference_5_2_0()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11310:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11311:1: ruleEString
-            {
-             before(grammarAccess.getCompositeComponentAccess().getRelationshipRelationshipEStringParserRuleCall_5_2_0_1()); 
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__CompositeComponent__RelationshipAssignment_5_222457);
-            ruleEString();
-
-            state._fsp--;
-
-             after(grammarAccess.getCompositeComponentAccess().getRelationshipRelationshipEStringParserRuleCall_5_2_0_1()); 
-
-            }
-
-             after(grammarAccess.getCompositeComponentAccess().getRelationshipRelationshipCrossReference_5_2_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CompositeComponent__RelationshipAssignment_5_2"
-
-
-    // $ANTLR start "rule__CompositeComponent__RelationshipAssignment_5_3_1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11322:1: rule__CompositeComponent__RelationshipAssignment_5_3_1 : ( ( ruleEString ) ) ;
-    public final void rule__CompositeComponent__RelationshipAssignment_5_3_1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11326:1: ( ( ( ruleEString ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11327:1: ( ( ruleEString ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11327:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11328:1: ( ruleEString )
-            {
-             before(grammarAccess.getCompositeComponentAccess().getRelationshipRelationshipCrossReference_5_3_1_0()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11329:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11330:1: ruleEString
-            {
-             before(grammarAccess.getCompositeComponentAccess().getRelationshipRelationshipEStringParserRuleCall_5_3_1_0_1()); 
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__CompositeComponent__RelationshipAssignment_5_3_122496);
-            ruleEString();
-
-            state._fsp--;
-
-             after(grammarAccess.getCompositeComponentAccess().getRelationshipRelationshipEStringParserRuleCall_5_3_1_0_1()); 
-
-            }
-
-             after(grammarAccess.getCompositeComponentAccess().getRelationshipRelationshipCrossReference_5_3_1_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CompositeComponent__RelationshipAssignment_5_3_1"
-
-
-    // $ANTLR start "rule__CompositeComponent__AssemblyAssignment_6_1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11341:1: rule__CompositeComponent__AssemblyAssignment_6_1 : ( ruleComposedStructureAssembly ) ;
-    public final void rule__CompositeComponent__AssemblyAssignment_6_1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11345:1: ( ( ruleComposedStructureAssembly ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11346:1: ( ruleComposedStructureAssembly )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11346:1: ( ruleComposedStructureAssembly )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11347:1: ruleComposedStructureAssembly
-            {
-             before(grammarAccess.getCompositeComponentAccess().getAssemblyComposedStructureAssemblyParserRuleCall_6_1_0()); 
-            pushFollow(FollowSets000.FOLLOW_ruleComposedStructureAssembly_in_rule__CompositeComponent__AssemblyAssignment_6_122531);
-            ruleComposedStructureAssembly();
-
-            state._fsp--;
-
-             after(grammarAccess.getCompositeComponentAccess().getAssemblyComposedStructureAssemblyParserRuleCall_6_1_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__CompositeComponent__AssemblyAssignment_6_1"
-
-
-    // $ANTLR start "rule__SubSystem__NameAssignment_1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11356:1: rule__SubSystem__NameAssignment_1 : ( ruleEString ) ;
-    public final void rule__SubSystem__NameAssignment_1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11360:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11361:1: ( ruleEString )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11361:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11362:1: ruleEString
-            {
-             before(grammarAccess.getSubSystemAccess().getNameEStringParserRuleCall_1_0()); 
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__SubSystem__NameAssignment_122562);
-            ruleEString();
-
-            state._fsp--;
-
-             after(grammarAccess.getSubSystemAccess().getNameEStringParserRuleCall_1_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__SubSystem__NameAssignment_1"
-
-
-    // $ANTLR start "rule__SubSystem__ProvidedRolesAssignment_2_2"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11371:1: rule__SubSystem__ProvidedRolesAssignment_2_2 : ( ruleProvidedRole ) ;
-    public final void rule__SubSystem__ProvidedRolesAssignment_2_2() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11375:1: ( ( ruleProvidedRole ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11376:1: ( ruleProvidedRole )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11376:1: ( ruleProvidedRole )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11377:1: ruleProvidedRole
-            {
-             before(grammarAccess.getSubSystemAccess().getProvidedRolesProvidedRoleParserRuleCall_2_2_0()); 
-            pushFollow(FollowSets000.FOLLOW_ruleProvidedRole_in_rule__SubSystem__ProvidedRolesAssignment_2_222593);
-            ruleProvidedRole();
-
-            state._fsp--;
-
-             after(grammarAccess.getSubSystemAccess().getProvidedRolesProvidedRoleParserRuleCall_2_2_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__SubSystem__ProvidedRolesAssignment_2_2"
-
-
-    // $ANTLR start "rule__SubSystem__ProvidedRolesAssignment_2_3_1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11386:1: rule__SubSystem__ProvidedRolesAssignment_2_3_1 : ( ruleProvidedRole ) ;
-    public final void rule__SubSystem__ProvidedRolesAssignment_2_3_1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11390:1: ( ( ruleProvidedRole ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11391:1: ( ruleProvidedRole )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11391:1: ( ruleProvidedRole )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11392:1: ruleProvidedRole
-            {
-             before(grammarAccess.getSubSystemAccess().getProvidedRolesProvidedRoleParserRuleCall_2_3_1_0()); 
-            pushFollow(FollowSets000.FOLLOW_ruleProvidedRole_in_rule__SubSystem__ProvidedRolesAssignment_2_3_122624);
-            ruleProvidedRole();
-
-            state._fsp--;
-
-             after(grammarAccess.getSubSystemAccess().getProvidedRolesProvidedRoleParserRuleCall_2_3_1_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__SubSystem__ProvidedRolesAssignment_2_3_1"
-
-
-    // $ANTLR start "rule__SubSystem__RequiredRolesAssignment_3_2"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11401:1: rule__SubSystem__RequiredRolesAssignment_3_2 : ( ruleRequiredRole ) ;
-    public final void rule__SubSystem__RequiredRolesAssignment_3_2() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11405:1: ( ( ruleRequiredRole ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11406:1: ( ruleRequiredRole )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11406:1: ( ruleRequiredRole )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11407:1: ruleRequiredRole
-            {
-             before(grammarAccess.getSubSystemAccess().getRequiredRolesRequiredRoleParserRuleCall_3_2_0()); 
-            pushFollow(FollowSets000.FOLLOW_ruleRequiredRole_in_rule__SubSystem__RequiredRolesAssignment_3_222655);
-            ruleRequiredRole();
-
-            state._fsp--;
-
-             after(grammarAccess.getSubSystemAccess().getRequiredRolesRequiredRoleParserRuleCall_3_2_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__SubSystem__RequiredRolesAssignment_3_2"
-
-
-    // $ANTLR start "rule__SubSystem__RequiredRolesAssignment_3_3_1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11416:1: rule__SubSystem__RequiredRolesAssignment_3_3_1 : ( ruleRequiredRole ) ;
-    public final void rule__SubSystem__RequiredRolesAssignment_3_3_1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11420:1: ( ( ruleRequiredRole ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11421:1: ( ruleRequiredRole )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11421:1: ( ruleRequiredRole )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11422:1: ruleRequiredRole
-            {
-             before(grammarAccess.getSubSystemAccess().getRequiredRolesRequiredRoleParserRuleCall_3_3_1_0()); 
-            pushFollow(FollowSets000.FOLLOW_ruleRequiredRole_in_rule__SubSystem__RequiredRolesAssignment_3_3_122686);
-            ruleRequiredRole();
-
-            state._fsp--;
-
-             after(grammarAccess.getSubSystemAccess().getRequiredRolesRequiredRoleParserRuleCall_3_3_1_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__SubSystem__RequiredRolesAssignment_3_3_1"
-
-
-    // $ANTLR start "rule__SubSystem__RelationshipAssignment_5_2"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11431:1: rule__SubSystem__RelationshipAssignment_5_2 : ( ( ruleEString ) ) ;
-    public final void rule__SubSystem__RelationshipAssignment_5_2() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11435:1: ( ( ( ruleEString ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11436:1: ( ( ruleEString ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11436:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11437:1: ( ruleEString )
-            {
-             before(grammarAccess.getSubSystemAccess().getRelationshipRelationshipCrossReference_5_2_0()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11438:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11439:1: ruleEString
-            {
-             before(grammarAccess.getSubSystemAccess().getRelationshipRelationshipEStringParserRuleCall_5_2_0_1()); 
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__SubSystem__RelationshipAssignment_5_222721);
-            ruleEString();
-
-            state._fsp--;
-
-             after(grammarAccess.getSubSystemAccess().getRelationshipRelationshipEStringParserRuleCall_5_2_0_1()); 
-
-            }
-
-             after(grammarAccess.getSubSystemAccess().getRelationshipRelationshipCrossReference_5_2_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__SubSystem__RelationshipAssignment_5_2"
-
-
-    // $ANTLR start "rule__SubSystem__RelationshipAssignment_5_3_1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11450:1: rule__SubSystem__RelationshipAssignment_5_3_1 : ( ( ruleEString ) ) ;
-    public final void rule__SubSystem__RelationshipAssignment_5_3_1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11454:1: ( ( ( ruleEString ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11455:1: ( ( ruleEString ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11455:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11456:1: ( ruleEString )
-            {
-             before(grammarAccess.getSubSystemAccess().getRelationshipRelationshipCrossReference_5_3_1_0()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11457:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11458:1: ruleEString
-            {
-             before(grammarAccess.getSubSystemAccess().getRelationshipRelationshipEStringParserRuleCall_5_3_1_0_1()); 
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__SubSystem__RelationshipAssignment_5_3_122760);
-            ruleEString();
-
-            state._fsp--;
-
-             after(grammarAccess.getSubSystemAccess().getRelationshipRelationshipEStringParserRuleCall_5_3_1_0_1()); 
-
-            }
-
-             after(grammarAccess.getSubSystemAccess().getRelationshipRelationshipCrossReference_5_3_1_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__SubSystem__RelationshipAssignment_5_3_1"
-
-
-    // $ANTLR start "rule__SubSystem__AssemblyAssignment_6_1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11469:1: rule__SubSystem__AssemblyAssignment_6_1 : ( ruleComposedStructureAssembly ) ;
-    public final void rule__SubSystem__AssemblyAssignment_6_1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11473:1: ( ( ruleComposedStructureAssembly ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11474:1: ( ruleComposedStructureAssembly )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11474:1: ( ruleComposedStructureAssembly )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11475:1: ruleComposedStructureAssembly
-            {
-             before(grammarAccess.getSubSystemAccess().getAssemblyComposedStructureAssemblyParserRuleCall_6_1_0()); 
-            pushFollow(FollowSets000.FOLLOW_ruleComposedStructureAssembly_in_rule__SubSystem__AssemblyAssignment_6_122795);
-            ruleComposedStructureAssembly();
-
-            state._fsp--;
-
-             after(grammarAccess.getSubSystemAccess().getAssemblyComposedStructureAssemblyParserRuleCall_6_1_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__SubSystem__AssemblyAssignment_6_1"
-
-
-    // $ANTLR start "rule__ComposedStructureAssembly__AssemblyContextsAssignment_3_2"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11484:1: rule__ComposedStructureAssembly__AssemblyContextsAssignment_3_2 : ( ruleAssemblyContext ) ;
-    public final void rule__ComposedStructureAssembly__AssemblyContextsAssignment_3_2() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11488:1: ( ( ruleAssemblyContext ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11489:1: ( ruleAssemblyContext )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11489:1: ( ruleAssemblyContext )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11490:1: ruleAssemblyContext
-            {
-             before(grammarAccess.getComposedStructureAssemblyAccess().getAssemblyContextsAssemblyContextParserRuleCall_3_2_0()); 
-            pushFollow(FollowSets000.FOLLOW_ruleAssemblyContext_in_rule__ComposedStructureAssembly__AssemblyContextsAssignment_3_222826);
-            ruleAssemblyContext();
-
-            state._fsp--;
-
-             after(grammarAccess.getComposedStructureAssemblyAccess().getAssemblyContextsAssemblyContextParserRuleCall_3_2_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__ComposedStructureAssembly__AssemblyContextsAssignment_3_2"
-
-
-    // $ANTLR start "rule__ComposedStructureAssembly__AssemblyContextsAssignment_3_3_1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11499:1: rule__ComposedStructureAssembly__AssemblyContextsAssignment_3_3_1 : ( ruleAssemblyContext ) ;
-    public final void rule__ComposedStructureAssembly__AssemblyContextsAssignment_3_3_1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11503:1: ( ( ruleAssemblyContext ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11504:1: ( ruleAssemblyContext )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11504:1: ( ruleAssemblyContext )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11505:1: ruleAssemblyContext
-            {
-             before(grammarAccess.getComposedStructureAssemblyAccess().getAssemblyContextsAssemblyContextParserRuleCall_3_3_1_0()); 
-            pushFollow(FollowSets000.FOLLOW_ruleAssemblyContext_in_rule__ComposedStructureAssembly__AssemblyContextsAssignment_3_3_122857);
-            ruleAssemblyContext();
-
-            state._fsp--;
-
-             after(grammarAccess.getComposedStructureAssemblyAccess().getAssemblyContextsAssemblyContextParserRuleCall_3_3_1_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__ComposedStructureAssembly__AssemblyContextsAssignment_3_3_1"
-
-
-    // $ANTLR start "rule__ComposedStructureAssembly__AssemblyConnectorsAssignment_4_2"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11514:1: rule__ComposedStructureAssembly__AssemblyConnectorsAssignment_4_2 : ( ruleAssemblyConnector ) ;
-    public final void rule__ComposedStructureAssembly__AssemblyConnectorsAssignment_4_2() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11518:1: ( ( ruleAssemblyConnector ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11519:1: ( ruleAssemblyConnector )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11519:1: ( ruleAssemblyConnector )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11520:1: ruleAssemblyConnector
-            {
-             before(grammarAccess.getComposedStructureAssemblyAccess().getAssemblyConnectorsAssemblyConnectorParserRuleCall_4_2_0()); 
-            pushFollow(FollowSets000.FOLLOW_ruleAssemblyConnector_in_rule__ComposedStructureAssembly__AssemblyConnectorsAssignment_4_222888);
-            ruleAssemblyConnector();
-
-            state._fsp--;
-
-             after(grammarAccess.getComposedStructureAssemblyAccess().getAssemblyConnectorsAssemblyConnectorParserRuleCall_4_2_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__ComposedStructureAssembly__AssemblyConnectorsAssignment_4_2"
-
-
-    // $ANTLR start "rule__ComposedStructureAssembly__AssemblyConnectorsAssignment_4_3_1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11529:1: rule__ComposedStructureAssembly__AssemblyConnectorsAssignment_4_3_1 : ( ruleAssemblyConnector ) ;
-    public final void rule__ComposedStructureAssembly__AssemblyConnectorsAssignment_4_3_1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11533:1: ( ( ruleAssemblyConnector ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11534:1: ( ruleAssemblyConnector )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11534:1: ( ruleAssemblyConnector )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11535:1: ruleAssemblyConnector
-            {
-             before(grammarAccess.getComposedStructureAssemblyAccess().getAssemblyConnectorsAssemblyConnectorParserRuleCall_4_3_1_0()); 
-            pushFollow(FollowSets000.FOLLOW_ruleAssemblyConnector_in_rule__ComposedStructureAssembly__AssemblyConnectorsAssignment_4_3_122919);
-            ruleAssemblyConnector();
-
-            state._fsp--;
-
-             after(grammarAccess.getComposedStructureAssemblyAccess().getAssemblyConnectorsAssemblyConnectorParserRuleCall_4_3_1_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__ComposedStructureAssembly__AssemblyConnectorsAssignment_4_3_1"
-
-
-    // $ANTLR start "rule__ComposedStructureAssembly__ProvidedDelegationConnectorsAssignment_5_2"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11544:1: rule__ComposedStructureAssembly__ProvidedDelegationConnectorsAssignment_5_2 : ( ruleProvidedDelegationConnector ) ;
-    public final void rule__ComposedStructureAssembly__ProvidedDelegationConnectorsAssignment_5_2() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11548:1: ( ( ruleProvidedDelegationConnector ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11549:1: ( ruleProvidedDelegationConnector )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11549:1: ( ruleProvidedDelegationConnector )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11550:1: ruleProvidedDelegationConnector
-            {
-             before(grammarAccess.getComposedStructureAssemblyAccess().getProvidedDelegationConnectorsProvidedDelegationConnectorParserRuleCall_5_2_0()); 
-            pushFollow(FollowSets000.FOLLOW_ruleProvidedDelegationConnector_in_rule__ComposedStructureAssembly__ProvidedDelegationConnectorsAssignment_5_222950);
-            ruleProvidedDelegationConnector();
-
-            state._fsp--;
-
-             after(grammarAccess.getComposedStructureAssemblyAccess().getProvidedDelegationConnectorsProvidedDelegationConnectorParserRuleCall_5_2_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__ComposedStructureAssembly__ProvidedDelegationConnectorsAssignment_5_2"
-
-
-    // $ANTLR start "rule__ComposedStructureAssembly__ProvidedDelegationConnectorsAssignment_5_3_1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11559:1: rule__ComposedStructureAssembly__ProvidedDelegationConnectorsAssignment_5_3_1 : ( ruleProvidedDelegationConnector ) ;
-    public final void rule__ComposedStructureAssembly__ProvidedDelegationConnectorsAssignment_5_3_1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11563:1: ( ( ruleProvidedDelegationConnector ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11564:1: ( ruleProvidedDelegationConnector )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11564:1: ( ruleProvidedDelegationConnector )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11565:1: ruleProvidedDelegationConnector
-            {
-             before(grammarAccess.getComposedStructureAssemblyAccess().getProvidedDelegationConnectorsProvidedDelegationConnectorParserRuleCall_5_3_1_0()); 
-            pushFollow(FollowSets000.FOLLOW_ruleProvidedDelegationConnector_in_rule__ComposedStructureAssembly__ProvidedDelegationConnectorsAssignment_5_3_122981);
-            ruleProvidedDelegationConnector();
-
-            state._fsp--;
-
-             after(grammarAccess.getComposedStructureAssemblyAccess().getProvidedDelegationConnectorsProvidedDelegationConnectorParserRuleCall_5_3_1_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__ComposedStructureAssembly__ProvidedDelegationConnectorsAssignment_5_3_1"
-
-
-    // $ANTLR start "rule__ComposedStructureAssembly__RequiredDelegationConnectorsAssignment_6_2"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11574:1: rule__ComposedStructureAssembly__RequiredDelegationConnectorsAssignment_6_2 : ( ruleRequiredDelegationConnector ) ;
-    public final void rule__ComposedStructureAssembly__RequiredDelegationConnectorsAssignment_6_2() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11578:1: ( ( ruleRequiredDelegationConnector ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11579:1: ( ruleRequiredDelegationConnector )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11579:1: ( ruleRequiredDelegationConnector )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11580:1: ruleRequiredDelegationConnector
-            {
-             before(grammarAccess.getComposedStructureAssemblyAccess().getRequiredDelegationConnectorsRequiredDelegationConnectorParserRuleCall_6_2_0()); 
-            pushFollow(FollowSets000.FOLLOW_ruleRequiredDelegationConnector_in_rule__ComposedStructureAssembly__RequiredDelegationConnectorsAssignment_6_223012);
-            ruleRequiredDelegationConnector();
-
-            state._fsp--;
-
-             after(grammarAccess.getComposedStructureAssemblyAccess().getRequiredDelegationConnectorsRequiredDelegationConnectorParserRuleCall_6_2_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__ComposedStructureAssembly__RequiredDelegationConnectorsAssignment_6_2"
-
-
-    // $ANTLR start "rule__ComposedStructureAssembly__RequiredDelegationConnectorsAssignment_6_3_1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11589:1: rule__ComposedStructureAssembly__RequiredDelegationConnectorsAssignment_6_3_1 : ( ruleRequiredDelegationConnector ) ;
-    public final void rule__ComposedStructureAssembly__RequiredDelegationConnectorsAssignment_6_3_1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11593:1: ( ( ruleRequiredDelegationConnector ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11594:1: ( ruleRequiredDelegationConnector )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11594:1: ( ruleRequiredDelegationConnector )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11595:1: ruleRequiredDelegationConnector
-            {
-             before(grammarAccess.getComposedStructureAssemblyAccess().getRequiredDelegationConnectorsRequiredDelegationConnectorParserRuleCall_6_3_1_0()); 
-            pushFollow(FollowSets000.FOLLOW_ruleRequiredDelegationConnector_in_rule__ComposedStructureAssembly__RequiredDelegationConnectorsAssignment_6_3_123043);
-            ruleRequiredDelegationConnector();
-
-            state._fsp--;
-
-             after(grammarAccess.getComposedStructureAssemblyAccess().getRequiredDelegationConnectorsRequiredDelegationConnectorParserRuleCall_6_3_1_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__ComposedStructureAssembly__RequiredDelegationConnectorsAssignment_6_3_1"
-
-
-    // $ANTLR start "rule__AssemblyContext__NameAssignment_1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11604:1: rule__AssemblyContext__NameAssignment_1 : ( ruleEString ) ;
-    public final void rule__AssemblyContext__NameAssignment_1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11608:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11609:1: ( ruleEString )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11609:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11610:1: ruleEString
-            {
-             before(grammarAccess.getAssemblyContextAccess().getNameEStringParserRuleCall_1_0()); 
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__AssemblyContext__NameAssignment_123074);
-            ruleEString();
-
-            state._fsp--;
-
-             after(grammarAccess.getAssemblyContextAccess().getNameEStringParserRuleCall_1_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__AssemblyContext__NameAssignment_1"
-
-
-    // $ANTLR start "rule__AssemblyContext__EncapsulatedComponentAssignment_4"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11619:1: rule__AssemblyContext__EncapsulatedComponentAssignment_4 : ( ( ruleEString ) ) ;
-    public final void rule__AssemblyContext__EncapsulatedComponentAssignment_4() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11623:1: ( ( ( ruleEString ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11624:1: ( ( ruleEString ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11624:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11625:1: ( ruleEString )
-            {
-             before(grammarAccess.getAssemblyContextAccess().getEncapsulatedComponentRepositoryComponentCrossReference_4_0()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11626:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11627:1: ruleEString
-            {
-             before(grammarAccess.getAssemblyContextAccess().getEncapsulatedComponentRepositoryComponentEStringParserRuleCall_4_0_1()); 
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__AssemblyContext__EncapsulatedComponentAssignment_423109);
-            ruleEString();
-
-            state._fsp--;
-
-             after(grammarAccess.getAssemblyContextAccess().getEncapsulatedComponentRepositoryComponentEStringParserRuleCall_4_0_1()); 
-
-            }
-
-             after(grammarAccess.getAssemblyContextAccess().getEncapsulatedComponentRepositoryComponentCrossReference_4_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__AssemblyContext__EncapsulatedComponentAssignment_4"
-
-
-    // $ANTLR start "rule__AssemblyConnector__NameAssignment_1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11638:1: rule__AssemblyConnector__NameAssignment_1 : ( ruleEString ) ;
-    public final void rule__AssemblyConnector__NameAssignment_1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11642:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11643:1: ( ruleEString )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11643:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11644:1: ruleEString
-            {
-             before(grammarAccess.getAssemblyConnectorAccess().getNameEStringParserRuleCall_1_0()); 
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__AssemblyConnector__NameAssignment_123144);
-            ruleEString();
-
-            state._fsp--;
-
-             after(grammarAccess.getAssemblyConnectorAccess().getNameEStringParserRuleCall_1_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__AssemblyConnector__NameAssignment_1"
-
-
-    // $ANTLR start "rule__AssemblyConnector__RequiredRoleAssignment_4"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11653:1: rule__AssemblyConnector__RequiredRoleAssignment_4 : ( ( ruleEString ) ) ;
-    public final void rule__AssemblyConnector__RequiredRoleAssignment_4() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11657:1: ( ( ( ruleEString ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11658:1: ( ( ruleEString ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11658:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11659:1: ( ruleEString )
-            {
-             before(grammarAccess.getAssemblyConnectorAccess().getRequiredRoleRequiredRoleCrossReference_4_0()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11660:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11661:1: ruleEString
-            {
-             before(grammarAccess.getAssemblyConnectorAccess().getRequiredRoleRequiredRoleEStringParserRuleCall_4_0_1()); 
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__AssemblyConnector__RequiredRoleAssignment_423179);
-            ruleEString();
-
-            state._fsp--;
-
-             after(grammarAccess.getAssemblyConnectorAccess().getRequiredRoleRequiredRoleEStringParserRuleCall_4_0_1()); 
-
-            }
-
-             after(grammarAccess.getAssemblyConnectorAccess().getRequiredRoleRequiredRoleCrossReference_4_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__AssemblyConnector__RequiredRoleAssignment_4"
-
-
-    // $ANTLR start "rule__AssemblyConnector__ProvidedRoleAssignment_6"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11672:1: rule__AssemblyConnector__ProvidedRoleAssignment_6 : ( ( ruleEString ) ) ;
-    public final void rule__AssemblyConnector__ProvidedRoleAssignment_6() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11676:1: ( ( ( ruleEString ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11677:1: ( ( ruleEString ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11677:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11678:1: ( ruleEString )
-            {
-             before(grammarAccess.getAssemblyConnectorAccess().getProvidedRoleProvidedRoleCrossReference_6_0()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11679:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11680:1: ruleEString
-            {
-             before(grammarAccess.getAssemblyConnectorAccess().getProvidedRoleProvidedRoleEStringParserRuleCall_6_0_1()); 
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__AssemblyConnector__ProvidedRoleAssignment_623218);
-            ruleEString();
-
-            state._fsp--;
-
-             after(grammarAccess.getAssemblyConnectorAccess().getProvidedRoleProvidedRoleEStringParserRuleCall_6_0_1()); 
-
-            }
-
-             after(grammarAccess.getAssemblyConnectorAccess().getProvidedRoleProvidedRoleCrossReference_6_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__AssemblyConnector__ProvidedRoleAssignment_6"
-
-
-    // $ANTLR start "rule__AssemblyConnector__ProvidingAssemblyContextAssignment_8"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11691:1: rule__AssemblyConnector__ProvidingAssemblyContextAssignment_8 : ( ( ruleEString ) ) ;
-    public final void rule__AssemblyConnector__ProvidingAssemblyContextAssignment_8() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11695:1: ( ( ( ruleEString ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11696:1: ( ( ruleEString ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11696:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11697:1: ( ruleEString )
-            {
-             before(grammarAccess.getAssemblyConnectorAccess().getProvidingAssemblyContextAssemblyContextCrossReference_8_0()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11698:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11699:1: ruleEString
-            {
-             before(grammarAccess.getAssemblyConnectorAccess().getProvidingAssemblyContextAssemblyContextEStringParserRuleCall_8_0_1()); 
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__AssemblyConnector__ProvidingAssemblyContextAssignment_823257);
-            ruleEString();
-
-            state._fsp--;
-
-             after(grammarAccess.getAssemblyConnectorAccess().getProvidingAssemblyContextAssemblyContextEStringParserRuleCall_8_0_1()); 
-
-            }
-
-             after(grammarAccess.getAssemblyConnectorAccess().getProvidingAssemblyContextAssemblyContextCrossReference_8_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__AssemblyConnector__ProvidingAssemblyContextAssignment_8"
-
-
-    // $ANTLR start "rule__AssemblyConnector__RequiringAssemblyContextAssignment_10"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11710:1: rule__AssemblyConnector__RequiringAssemblyContextAssignment_10 : ( ( ruleEString ) ) ;
-    public final void rule__AssemblyConnector__RequiringAssemblyContextAssignment_10() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11714:1: ( ( ( ruleEString ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11715:1: ( ( ruleEString ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11715:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11716:1: ( ruleEString )
-            {
-             before(grammarAccess.getAssemblyConnectorAccess().getRequiringAssemblyContextAssemblyContextCrossReference_10_0()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11717:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11718:1: ruleEString
-            {
-             before(grammarAccess.getAssemblyConnectorAccess().getRequiringAssemblyContextAssemblyContextEStringParserRuleCall_10_0_1()); 
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__AssemblyConnector__RequiringAssemblyContextAssignment_1023296);
-            ruleEString();
-
-            state._fsp--;
-
-             after(grammarAccess.getAssemblyConnectorAccess().getRequiringAssemblyContextAssemblyContextEStringParserRuleCall_10_0_1()); 
-
-            }
-
-             after(grammarAccess.getAssemblyConnectorAccess().getRequiringAssemblyContextAssemblyContextCrossReference_10_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__AssemblyConnector__RequiringAssemblyContextAssignment_10"
-
-
-    // $ANTLR start "rule__ProvidedDelegationConnector__NameAssignment_1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11729:1: rule__ProvidedDelegationConnector__NameAssignment_1 : ( ruleEString ) ;
-    public final void rule__ProvidedDelegationConnector__NameAssignment_1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11733:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11734:1: ( ruleEString )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11734:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11735:1: ruleEString
-            {
-             before(grammarAccess.getProvidedDelegationConnectorAccess().getNameEStringParserRuleCall_1_0()); 
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__ProvidedDelegationConnector__NameAssignment_123331);
-            ruleEString();
-
-            state._fsp--;
-
-             after(grammarAccess.getProvidedDelegationConnectorAccess().getNameEStringParserRuleCall_1_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__ProvidedDelegationConnector__NameAssignment_1"
-
-
-    // $ANTLR start "rule__ProvidedDelegationConnector__AssemblyContextAssignment_4"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11744:1: rule__ProvidedDelegationConnector__AssemblyContextAssignment_4 : ( ( ruleEString ) ) ;
-    public final void rule__ProvidedDelegationConnector__AssemblyContextAssignment_4() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11748:1: ( ( ( ruleEString ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11749:1: ( ( ruleEString ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11749:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11750:1: ( ruleEString )
-            {
-             before(grammarAccess.getProvidedDelegationConnectorAccess().getAssemblyContextAssemblyContextCrossReference_4_0()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11751:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11752:1: ruleEString
-            {
-             before(grammarAccess.getProvidedDelegationConnectorAccess().getAssemblyContextAssemblyContextEStringParserRuleCall_4_0_1()); 
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__ProvidedDelegationConnector__AssemblyContextAssignment_423366);
-            ruleEString();
-
-            state._fsp--;
-
-             after(grammarAccess.getProvidedDelegationConnectorAccess().getAssemblyContextAssemblyContextEStringParserRuleCall_4_0_1()); 
-
-            }
-
-             after(grammarAccess.getProvidedDelegationConnectorAccess().getAssemblyContextAssemblyContextCrossReference_4_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__ProvidedDelegationConnector__AssemblyContextAssignment_4"
-
-
-    // $ANTLR start "rule__ProvidedDelegationConnector__InnerProvidedRoleAssignment_6"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11763:1: rule__ProvidedDelegationConnector__InnerProvidedRoleAssignment_6 : ( ( ruleEString ) ) ;
-    public final void rule__ProvidedDelegationConnector__InnerProvidedRoleAssignment_6() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11767:1: ( ( ( ruleEString ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11768:1: ( ( ruleEString ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11768:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11769:1: ( ruleEString )
-            {
-             before(grammarAccess.getProvidedDelegationConnectorAccess().getInnerProvidedRoleProvidedRoleCrossReference_6_0()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11770:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11771:1: ruleEString
-            {
-             before(grammarAccess.getProvidedDelegationConnectorAccess().getInnerProvidedRoleProvidedRoleEStringParserRuleCall_6_0_1()); 
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__ProvidedDelegationConnector__InnerProvidedRoleAssignment_623405);
-            ruleEString();
-
-            state._fsp--;
-
-             after(grammarAccess.getProvidedDelegationConnectorAccess().getInnerProvidedRoleProvidedRoleEStringParserRuleCall_6_0_1()); 
-
-            }
-
-             after(grammarAccess.getProvidedDelegationConnectorAccess().getInnerProvidedRoleProvidedRoleCrossReference_6_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__ProvidedDelegationConnector__InnerProvidedRoleAssignment_6"
-
-
-    // $ANTLR start "rule__ProvidedDelegationConnector__OuterProvidedRoleAssignment_8"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11782:1: rule__ProvidedDelegationConnector__OuterProvidedRoleAssignment_8 : ( ( ruleEString ) ) ;
-    public final void rule__ProvidedDelegationConnector__OuterProvidedRoleAssignment_8() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11786:1: ( ( ( ruleEString ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11787:1: ( ( ruleEString ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11787:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11788:1: ( ruleEString )
-            {
-             before(grammarAccess.getProvidedDelegationConnectorAccess().getOuterProvidedRoleProvidedRoleCrossReference_8_0()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11789:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11790:1: ruleEString
-            {
-             before(grammarAccess.getProvidedDelegationConnectorAccess().getOuterProvidedRoleProvidedRoleEStringParserRuleCall_8_0_1()); 
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__ProvidedDelegationConnector__OuterProvidedRoleAssignment_823444);
-            ruleEString();
-
-            state._fsp--;
-
-             after(grammarAccess.getProvidedDelegationConnectorAccess().getOuterProvidedRoleProvidedRoleEStringParserRuleCall_8_0_1()); 
-
-            }
-
-             after(grammarAccess.getProvidedDelegationConnectorAccess().getOuterProvidedRoleProvidedRoleCrossReference_8_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__ProvidedDelegationConnector__OuterProvidedRoleAssignment_8"
-
-
-    // $ANTLR start "rule__RequiredDelegationConnector__NameAssignment_1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11801:1: rule__RequiredDelegationConnector__NameAssignment_1 : ( ruleEString ) ;
-    public final void rule__RequiredDelegationConnector__NameAssignment_1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11805:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11806:1: ( ruleEString )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11806:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11807:1: ruleEString
-            {
-             before(grammarAccess.getRequiredDelegationConnectorAccess().getNameEStringParserRuleCall_1_0()); 
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__RequiredDelegationConnector__NameAssignment_123479);
-            ruleEString();
-
-            state._fsp--;
-
-             after(grammarAccess.getRequiredDelegationConnectorAccess().getNameEStringParserRuleCall_1_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__RequiredDelegationConnector__NameAssignment_1"
-
-
-    // $ANTLR start "rule__RequiredDelegationConnector__AssemblyContextAssignment_4"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11816:1: rule__RequiredDelegationConnector__AssemblyContextAssignment_4 : ( ( ruleEString ) ) ;
-    public final void rule__RequiredDelegationConnector__AssemblyContextAssignment_4() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11820:1: ( ( ( ruleEString ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11821:1: ( ( ruleEString ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11821:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11822:1: ( ruleEString )
-            {
-             before(grammarAccess.getRequiredDelegationConnectorAccess().getAssemblyContextAssemblyContextCrossReference_4_0()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11823:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11824:1: ruleEString
-            {
-             before(grammarAccess.getRequiredDelegationConnectorAccess().getAssemblyContextAssemblyContextEStringParserRuleCall_4_0_1()); 
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__RequiredDelegationConnector__AssemblyContextAssignment_423514);
-            ruleEString();
-
-            state._fsp--;
-
-             after(grammarAccess.getRequiredDelegationConnectorAccess().getAssemblyContextAssemblyContextEStringParserRuleCall_4_0_1()); 
-
-            }
-
-             after(grammarAccess.getRequiredDelegationConnectorAccess().getAssemblyContextAssemblyContextCrossReference_4_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__RequiredDelegationConnector__AssemblyContextAssignment_4"
-
-
-    // $ANTLR start "rule__RequiredDelegationConnector__InnerRequiredRoleAssignment_6"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11835:1: rule__RequiredDelegationConnector__InnerRequiredRoleAssignment_6 : ( ( ruleEString ) ) ;
-    public final void rule__RequiredDelegationConnector__InnerRequiredRoleAssignment_6() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11839:1: ( ( ( ruleEString ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11840:1: ( ( ruleEString ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11840:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11841:1: ( ruleEString )
-            {
-             before(grammarAccess.getRequiredDelegationConnectorAccess().getInnerRequiredRoleRequiredRoleCrossReference_6_0()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11842:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11843:1: ruleEString
-            {
-             before(grammarAccess.getRequiredDelegationConnectorAccess().getInnerRequiredRoleRequiredRoleEStringParserRuleCall_6_0_1()); 
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__RequiredDelegationConnector__InnerRequiredRoleAssignment_623553);
-            ruleEString();
-
-            state._fsp--;
-
-             after(grammarAccess.getRequiredDelegationConnectorAccess().getInnerRequiredRoleRequiredRoleEStringParserRuleCall_6_0_1()); 
-
-            }
-
-             after(grammarAccess.getRequiredDelegationConnectorAccess().getInnerRequiredRoleRequiredRoleCrossReference_6_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__RequiredDelegationConnector__InnerRequiredRoleAssignment_6"
-
-
-    // $ANTLR start "rule__RequiredDelegationConnector__OuterRequiredRoleAssignment_8"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11854:1: rule__RequiredDelegationConnector__OuterRequiredRoleAssignment_8 : ( ( ruleEString ) ) ;
-    public final void rule__RequiredDelegationConnector__OuterRequiredRoleAssignment_8() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11858:1: ( ( ( ruleEString ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11859:1: ( ( ruleEString ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11859:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11860:1: ( ruleEString )
-            {
-             before(grammarAccess.getRequiredDelegationConnectorAccess().getOuterRequiredRoleRequiredRoleCrossReference_8_0()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11861:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11862:1: ruleEString
-            {
-             before(grammarAccess.getRequiredDelegationConnectorAccess().getOuterRequiredRoleRequiredRoleEStringParserRuleCall_8_0_1()); 
-            pushFollow(FollowSets001.FOLLOW_ruleEString_in_rule__RequiredDelegationConnector__OuterRequiredRoleAssignment_823592);
-            ruleEString();
-
-            state._fsp--;
-
-             after(grammarAccess.getRequiredDelegationConnectorAccess().getOuterRequiredRoleRequiredRoleEStringParserRuleCall_8_0_1()); 
-
-            }
-
-             after(grammarAccess.getRequiredDelegationConnectorAccess().getOuterRequiredRoleRequiredRoleCrossReference_8_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__RequiredDelegationConnector__OuterRequiredRoleAssignment_8"
-
-    // Delegated rules
-
-
- 
-
-    
-    private static class FollowSets000 {
-        public static final BitSet FOLLOW_ruleRepository_in_entryRuleRepository61 = new BitSet(new long[]{0x0000000000000000L});
-        public static final BitSet FOLLOW_EOF_in_entryRuleRepository68 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Repository__Group__0_in_ruleRepository94 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleImport_in_entryRuleImport121 = new BitSet(new long[]{0x0000000000000000L});
-        public static final BitSet FOLLOW_EOF_in_entryRuleImport128 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Import__Group__0_in_ruleImport154 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleQualifiedNameWithWildCard_in_entryRuleQualifiedNameWithWildCard181 = new BitSet(new long[]{0x0000000000000000L});
-        public static final BitSet FOLLOW_EOF_in_entryRuleQualifiedNameWithWildCard188 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__QualifiedNameWithWildCard__Group__0_in_ruleQualifiedNameWithWildCard214 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleQualifiedName_in_entryRuleQualifiedName241 = new BitSet(new long[]{0x0000000000000000L});
-        public static final BitSet FOLLOW_EOF_in_entryRuleQualifiedName248 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__QualifiedName__Group__0_in_ruleQualifiedName274 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleDataType_in_entryRuleDataType301 = new BitSet(new long[]{0x0000000000000000L});
-        public static final BitSet FOLLOW_EOF_in_entryRuleDataType308 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__DataType__Alternatives_in_ruleDataType334 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleRepositoryComponent_in_entryRuleRepositoryComponent361 = new BitSet(new long[]{0x0000000000000000L});
-        public static final BitSet FOLLOW_EOF_in_entryRuleRepositoryComponent368 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent__Alternatives_in_ruleRepositoryComponent394 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleEString_in_entryRuleEString421 = new BitSet(new long[]{0x0000000000000000L});
-        public static final BitSet FOLLOW_EOF_in_entryRuleEString428 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__EString__Alternatives_in_ruleEString454 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleInterface_in_entryRuleInterface481 = new BitSet(new long[]{0x0000000000000000L});
-        public static final BitSet FOLLOW_EOF_in_entryRuleInterface488 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Interface__Group__0_in_ruleInterface514 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleRepositoryComponent_Impl_in_entryRuleRepositoryComponent_Impl541 = new BitSet(new long[]{0x0000000000000000L});
-        public static final BitSet FOLLOW_EOF_in_entryRuleRepositoryComponent_Impl548 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group__0_in_ruleRepositoryComponent_Impl574 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleCollectionDataType_in_entryRuleCollectionDataType601 = new BitSet(new long[]{0x0000000000000000L});
-        public static final BitSet FOLLOW_EOF_in_entryRuleCollectionDataType608 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CollectionDataType__Group__0_in_ruleCollectionDataType634 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleCompositeDataType_in_entryRuleCompositeDataType661 = new BitSet(new long[]{0x0000000000000000L});
-        public static final BitSet FOLLOW_EOF_in_entryRuleCompositeDataType668 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeDataType__Group__0_in_ruleCompositeDataType694 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rulePrimitiveDataType_in_entryRulePrimitiveDataType721 = new BitSet(new long[]{0x0000000000000000L});
-        public static final BitSet FOLLOW_EOF_in_entryRulePrimitiveDataType728 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__PrimitiveDataType__Group__0_in_rulePrimitiveDataType754 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleInnerDeclaration_in_entryRuleInnerDeclaration781 = new BitSet(new long[]{0x0000000000000000L});
-        public static final BitSet FOLLOW_EOF_in_entryRuleInnerDeclaration788 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__InnerDeclaration__Group__0_in_ruleInnerDeclaration814 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleSignature_in_entryRuleSignature841 = new BitSet(new long[]{0x0000000000000000L});
-        public static final BitSet FOLLOW_EOF_in_entryRuleSignature848 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Signature__Group__0_in_ruleSignature874 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleParameter_in_entryRuleParameter901 = new BitSet(new long[]{0x0000000000000000L});
-        public static final BitSet FOLLOW_EOF_in_entryRuleParameter908 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Parameter__Group__0_in_ruleParameter934 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleProvidedRole_in_entryRuleProvidedRole961 = new BitSet(new long[]{0x0000000000000000L});
-        public static final BitSet FOLLOW_EOF_in_entryRuleProvidedRole968 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ProvidedRole__Group__0_in_ruleProvidedRole994 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleRequiredRole_in_entryRuleRequiredRole1021 = new BitSet(new long[]{0x0000000000000000L});
-        public static final BitSet FOLLOW_EOF_in_entryRuleRequiredRole1028 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RequiredRole__Group__0_in_ruleRequiredRole1054 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleBasicComponent_in_entryRuleBasicComponent1081 = new BitSet(new long[]{0x0000000000000000L});
-        public static final BitSet FOLLOW_EOF_in_entryRuleBasicComponent1088 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__BasicComponent__Group__0_in_ruleBasicComponent1114 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleCompositeComponent_in_entryRuleCompositeComponent1141 = new BitSet(new long[]{0x0000000000000000L});
-        public static final BitSet FOLLOW_EOF_in_entryRuleCompositeComponent1148 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeComponent__Group__0_in_ruleCompositeComponent1174 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleSubSystem_in_entryRuleSubSystem1201 = new BitSet(new long[]{0x0000000000000000L});
-        public static final BitSet FOLLOW_EOF_in_entryRuleSubSystem1208 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group__0_in_ruleSubSystem1234 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleComposedStructureAssembly_in_entryRuleComposedStructureAssembly1261 = new BitSet(new long[]{0x0000000000000000L});
-        public static final BitSet FOLLOW_EOF_in_entryRuleComposedStructureAssembly1268 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group__0_in_ruleComposedStructureAssembly1294 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleAssemblyContext_in_entryRuleAssemblyContext1321 = new BitSet(new long[]{0x0000000000000000L});
-        public static final BitSet FOLLOW_EOF_in_entryRuleAssemblyContext1328 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__AssemblyContext__Group__0_in_ruleAssemblyContext1354 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleAssemblyConnector_in_entryRuleAssemblyConnector1381 = new BitSet(new long[]{0x0000000000000000L});
-        public static final BitSet FOLLOW_EOF_in_entryRuleAssemblyConnector1388 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__AssemblyConnector__Group__0_in_ruleAssemblyConnector1414 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleProvidedDelegationConnector_in_entryRuleProvidedDelegationConnector1441 = new BitSet(new long[]{0x0000000000000000L});
-        public static final BitSet FOLLOW_EOF_in_entryRuleProvidedDelegationConnector1448 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ProvidedDelegationConnector__Group__0_in_ruleProvidedDelegationConnector1474 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleRequiredDelegationConnector_in_entryRuleRequiredDelegationConnector1501 = new BitSet(new long[]{0x0000000000000000L});
-        public static final BitSet FOLLOW_EOF_in_entryRuleRequiredDelegationConnector1508 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RequiredDelegationConnector__Group__0_in_ruleRequiredDelegationConnector1534 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__PrimitiveTypeEnum__Alternatives_in_rulePrimitiveTypeEnum1571 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleCollectionDataType_in_rule__DataType__Alternatives1606 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleCompositeDataType_in_rule__DataType__Alternatives1623 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rulePrimitiveDataType_in_rule__DataType__Alternatives1640 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleRepositoryComponent_Impl_in_rule__RepositoryComponent__Alternatives1672 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleBasicComponent_in_rule__RepositoryComponent__Alternatives1689 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleCompositeComponent_in_rule__RepositoryComponent__Alternatives1706 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleSubSystem_in_rule__RepositoryComponent__Alternatives1723 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_RULE_STRING_in_rule__EString__Alternatives1755 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_RULE_ID_in_rule__EString__Alternatives1772 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Signature__ReturnTypeAssignment_0_0_in_rule__Signature__Alternatives_01804 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_11_in_rule__Signature__Alternatives_01823 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_12_in_rule__PrimitiveTypeEnum__Alternatives1858 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_13_in_rule__PrimitiveTypeEnum__Alternatives1879 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_14_in_rule__PrimitiveTypeEnum__Alternatives1900 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_15_in_rule__PrimitiveTypeEnum__Alternatives1921 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_16_in_rule__PrimitiveTypeEnum__Alternatives1942 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_17_in_rule__PrimitiveTypeEnum__Alternatives1963 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_18_in_rule__PrimitiveTypeEnum__Alternatives1984 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Repository__Group__0__Impl_in_rule__Repository__Group__02017 = new BitSet(new long[]{0x0000000000000020L});
-        public static final BitSet FOLLOW_rule__Repository__Group__1_in_rule__Repository__Group__02020 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_19_in_rule__Repository__Group__0__Impl2048 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Repository__Group__1__Impl_in_rule__Repository__Group__12079 = new BitSet(new long[]{0x0000000000100000L});
-        public static final BitSet FOLLOW_rule__Repository__Group__2_in_rule__Repository__Group__12082 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Repository__NameAssignment_1_in_rule__Repository__Group__1__Impl2109 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Repository__Group__2__Impl_in_rule__Repository__Group__22139 = new BitSet(new long[]{0x000000000B600000L});
-        public static final BitSet FOLLOW_rule__Repository__Group__3_in_rule__Repository__Group__22142 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_20_in_rule__Repository__Group__2__Impl2170 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Repository__Group__3__Impl_in_rule__Repository__Group__32201 = new BitSet(new long[]{0x000000000B600000L});
-        public static final BitSet FOLLOW_rule__Repository__Group__4_in_rule__Repository__Group__32204 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Repository__Group_3__0_in_rule__Repository__Group__3__Impl2231 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Repository__Group__4__Impl_in_rule__Repository__Group__42262 = new BitSet(new long[]{0x000000000B600000L});
-        public static final BitSet FOLLOW_rule__Repository__Group__5_in_rule__Repository__Group__42265 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Repository__Group_4__0_in_rule__Repository__Group__4__Impl2292 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Repository__Group__5__Impl_in_rule__Repository__Group__52323 = new BitSet(new long[]{0x000000000B600000L});
-        public static final BitSet FOLLOW_rule__Repository__Group__6_in_rule__Repository__Group__52326 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Repository__Group_5__0_in_rule__Repository__Group__5__Impl2353 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Repository__Group__6__Impl_in_rule__Repository__Group__62384 = new BitSet(new long[]{0x000000000B600000L});
-        public static final BitSet FOLLOW_rule__Repository__Group__7_in_rule__Repository__Group__62387 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Repository__Group_6__0_in_rule__Repository__Group__6__Impl2414 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Repository__Group__7__Impl_in_rule__Repository__Group__72445 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_21_in_rule__Repository__Group__7__Impl2473 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Repository__Group_3__0__Impl_in_rule__Repository__Group_3__02520 = new BitSet(new long[]{0x0000000000100000L});
-        public static final BitSet FOLLOW_rule__Repository__Group_3__1_in_rule__Repository__Group_3__02523 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_22_in_rule__Repository__Group_3__0__Impl2551 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Repository__Group_3__1__Impl_in_rule__Repository__Group_3__12582 = new BitSet(new long[]{0x0000000010000000L});
-        public static final BitSet FOLLOW_rule__Repository__Group_3__2_in_rule__Repository__Group_3__12585 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_20_in_rule__Repository__Group_3__1__Impl2613 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Repository__Group_3__2__Impl_in_rule__Repository__Group_3__22644 = new BitSet(new long[]{0x0000000000A00000L});
-        public static final BitSet FOLLOW_rule__Repository__Group_3__3_in_rule__Repository__Group_3__22647 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Repository__ImportsAssignment_3_2_in_rule__Repository__Group_3__2__Impl2674 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Repository__Group_3__3__Impl_in_rule__Repository__Group_3__32704 = new BitSet(new long[]{0x0000000000A00000L});
-        public static final BitSet FOLLOW_rule__Repository__Group_3__4_in_rule__Repository__Group_3__32707 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Repository__Group_3_3__0_in_rule__Repository__Group_3__3__Impl2734 = new BitSet(new long[]{0x0000000000800002L});
-        public static final BitSet FOLLOW_rule__Repository__Group_3__4__Impl_in_rule__Repository__Group_3__42765 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_21_in_rule__Repository__Group_3__4__Impl2793 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Repository__Group_3_3__0__Impl_in_rule__Repository__Group_3_3__02834 = new BitSet(new long[]{0x0000000010000000L});
-        public static final BitSet FOLLOW_rule__Repository__Group_3_3__1_in_rule__Repository__Group_3_3__02837 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_23_in_rule__Repository__Group_3_3__0__Impl2865 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Repository__Group_3_3__1__Impl_in_rule__Repository__Group_3_3__12896 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Repository__ImportsAssignment_3_3_1_in_rule__Repository__Group_3_3__1__Impl2923 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Repository__Group_4__0__Impl_in_rule__Repository__Group_4__02957 = new BitSet(new long[]{0x0000000000100000L});
-        public static final BitSet FOLLOW_rule__Repository__Group_4__1_in_rule__Repository__Group_4__02960 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_24_in_rule__Repository__Group_4__0__Impl2988 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Repository__Group_4__1__Impl_in_rule__Repository__Group_4__13019 = new BitSet(new long[]{0x0000128000000000L});
-        public static final BitSet FOLLOW_rule__Repository__Group_4__2_in_rule__Repository__Group_4__13022 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_20_in_rule__Repository__Group_4__1__Impl3050 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Repository__Group_4__2__Impl_in_rule__Repository__Group_4__23081 = new BitSet(new long[]{0x0000000000A00000L});
-        public static final BitSet FOLLOW_rule__Repository__Group_4__3_in_rule__Repository__Group_4__23084 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Repository__DatatypesAssignment_4_2_in_rule__Repository__Group_4__2__Impl3111 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Repository__Group_4__3__Impl_in_rule__Repository__Group_4__33141 = new BitSet(new long[]{0x0000000000A00000L});
-        public static final BitSet FOLLOW_rule__Repository__Group_4__4_in_rule__Repository__Group_4__33144 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Repository__Group_4_3__0_in_rule__Repository__Group_4__3__Impl3171 = new BitSet(new long[]{0x0000000000800002L});
-        public static final BitSet FOLLOW_rule__Repository__Group_4__4__Impl_in_rule__Repository__Group_4__43202 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_21_in_rule__Repository__Group_4__4__Impl3230 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Repository__Group_4_3__0__Impl_in_rule__Repository__Group_4_3__03271 = new BitSet(new long[]{0x0000128000000000L});
-        public static final BitSet FOLLOW_rule__Repository__Group_4_3__1_in_rule__Repository__Group_4_3__03274 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_23_in_rule__Repository__Group_4_3__0__Impl3302 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Repository__Group_4_3__1__Impl_in_rule__Repository__Group_4_3__13333 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Repository__DatatypesAssignment_4_3_1_in_rule__Repository__Group_4_3__1__Impl3360 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Repository__Group_5__0__Impl_in_rule__Repository__Group_5__03394 = new BitSet(new long[]{0x0000000000100000L});
-        public static final BitSet FOLLOW_rule__Repository__Group_5__1_in_rule__Repository__Group_5__03397 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_25_in_rule__Repository__Group_5__0__Impl3425 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Repository__Group_5__1__Impl_in_rule__Repository__Group_5__13456 = new BitSet(new long[]{0x0058000800000000L});
-        public static final BitSet FOLLOW_rule__Repository__Group_5__2_in_rule__Repository__Group_5__13459 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_20_in_rule__Repository__Group_5__1__Impl3487 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Repository__Group_5__2__Impl_in_rule__Repository__Group_5__23518 = new BitSet(new long[]{0x0000000004200000L});
-        public static final BitSet FOLLOW_rule__Repository__Group_5__3_in_rule__Repository__Group_5__23521 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Repository__ComponentsAssignment_5_2_in_rule__Repository__Group_5__2__Impl3548 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Repository__Group_5__3__Impl_in_rule__Repository__Group_5__33578 = new BitSet(new long[]{0x0000000004200000L});
-        public static final BitSet FOLLOW_rule__Repository__Group_5__4_in_rule__Repository__Group_5__33581 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Repository__Group_5_3__0_in_rule__Repository__Group_5__3__Impl3608 = new BitSet(new long[]{0x0000000004000002L});
-        public static final BitSet FOLLOW_rule__Repository__Group_5__4__Impl_in_rule__Repository__Group_5__43639 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_21_in_rule__Repository__Group_5__4__Impl3667 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Repository__Group_5_3__0__Impl_in_rule__Repository__Group_5_3__03708 = new BitSet(new long[]{0x0058000800000000L});
-        public static final BitSet FOLLOW_rule__Repository__Group_5_3__1_in_rule__Repository__Group_5_3__03711 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_26_in_rule__Repository__Group_5_3__0__Impl3739 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Repository__Group_5_3__1__Impl_in_rule__Repository__Group_5_3__13770 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Repository__ComponentsAssignment_5_3_1_in_rule__Repository__Group_5_3__1__Impl3797 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Repository__Group_6__0__Impl_in_rule__Repository__Group_6__03831 = new BitSet(new long[]{0x0000000000100000L});
-        public static final BitSet FOLLOW_rule__Repository__Group_6__1_in_rule__Repository__Group_6__03834 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_27_in_rule__Repository__Group_6__0__Impl3862 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Repository__Group_6__1__Impl_in_rule__Repository__Group_6__13893 = new BitSet(new long[]{0x0000000080000000L});
-        public static final BitSet FOLLOW_rule__Repository__Group_6__2_in_rule__Repository__Group_6__13896 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_20_in_rule__Repository__Group_6__1__Impl3924 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Repository__Group_6__2__Impl_in_rule__Repository__Group_6__23955 = new BitSet(new long[]{0x0000000000A00000L});
-        public static final BitSet FOLLOW_rule__Repository__Group_6__3_in_rule__Repository__Group_6__23958 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Repository__InterfacesAssignment_6_2_in_rule__Repository__Group_6__2__Impl3985 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Repository__Group_6__3__Impl_in_rule__Repository__Group_6__34015 = new BitSet(new long[]{0x0000000000A00000L});
-        public static final BitSet FOLLOW_rule__Repository__Group_6__4_in_rule__Repository__Group_6__34018 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Repository__Group_6_3__0_in_rule__Repository__Group_6__3__Impl4045 = new BitSet(new long[]{0x0000000000800002L});
-        public static final BitSet FOLLOW_rule__Repository__Group_6__4__Impl_in_rule__Repository__Group_6__44076 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_21_in_rule__Repository__Group_6__4__Impl4104 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Repository__Group_6_3__0__Impl_in_rule__Repository__Group_6_3__04145 = new BitSet(new long[]{0x0000000080000000L});
-        public static final BitSet FOLLOW_rule__Repository__Group_6_3__1_in_rule__Repository__Group_6_3__04148 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_23_in_rule__Repository__Group_6_3__0__Impl4176 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Repository__Group_6_3__1__Impl_in_rule__Repository__Group_6_3__14207 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Repository__InterfacesAssignment_6_3_1_in_rule__Repository__Group_6_3__1__Impl4234 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Import__Group__0__Impl_in_rule__Import__Group__04268 = new BitSet(new long[]{0x0000000000000020L});
-        public static final BitSet FOLLOW_rule__Import__Group__1_in_rule__Import__Group__04271 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_28_in_rule__Import__Group__0__Impl4299 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Import__Group__1__Impl_in_rule__Import__Group__14330 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Import__ImportedNamespaceAssignment_1_in_rule__Import__Group__1__Impl4357 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__QualifiedNameWithWildCard__Group__0__Impl_in_rule__QualifiedNameWithWildCard__Group__04391 = new BitSet(new long[]{0x0000000020000000L});
-        public static final BitSet FOLLOW_rule__QualifiedNameWithWildCard__Group__1_in_rule__QualifiedNameWithWildCard__Group__04394 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleQualifiedName_in_rule__QualifiedNameWithWildCard__Group__0__Impl4421 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__QualifiedNameWithWildCard__Group__1__Impl_in_rule__QualifiedNameWithWildCard__Group__14450 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__QualifiedNameWithWildCard__Group_1__0_in_rule__QualifiedNameWithWildCard__Group__1__Impl4477 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__QualifiedNameWithWildCard__Group_1__0__Impl_in_rule__QualifiedNameWithWildCard__Group_1__04512 = new BitSet(new long[]{0x0000000040000000L});
-        public static final BitSet FOLLOW_rule__QualifiedNameWithWildCard__Group_1__1_in_rule__QualifiedNameWithWildCard__Group_1__04515 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_29_in_rule__QualifiedNameWithWildCard__Group_1__0__Impl4543 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__QualifiedNameWithWildCard__Group_1__1__Impl_in_rule__QualifiedNameWithWildCard__Group_1__14574 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_30_in_rule__QualifiedNameWithWildCard__Group_1__1__Impl4602 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__QualifiedName__Group__0__Impl_in_rule__QualifiedName__Group__04637 = new BitSet(new long[]{0x0000000020000000L});
-        public static final BitSet FOLLOW_rule__QualifiedName__Group__1_in_rule__QualifiedName__Group__04640 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_RULE_ID_in_rule__QualifiedName__Group__0__Impl4667 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__QualifiedName__Group__1__Impl_in_rule__QualifiedName__Group__14696 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__QualifiedName__Group_1__0_in_rule__QualifiedName__Group__1__Impl4723 = new BitSet(new long[]{0x0000000020000002L});
-        public static final BitSet FOLLOW_rule__QualifiedName__Group_1__0__Impl_in_rule__QualifiedName__Group_1__04758 = new BitSet(new long[]{0x0000000000000020L});
-        public static final BitSet FOLLOW_rule__QualifiedName__Group_1__1_in_rule__QualifiedName__Group_1__04761 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_29_in_rule__QualifiedName__Group_1__0__Impl4789 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__QualifiedName__Group_1__1__Impl_in_rule__QualifiedName__Group_1__14820 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_RULE_ID_in_rule__QualifiedName__Group_1__1__Impl4847 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Interface__Group__0__Impl_in_rule__Interface__Group__04880 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_rule__Interface__Group__1_in_rule__Interface__Group__04883 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_31_in_rule__Interface__Group__0__Impl4911 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Interface__Group__1__Impl_in_rule__Interface__Group__14942 = new BitSet(new long[]{0x0000000000100000L});
-        public static final BitSet FOLLOW_rule__Interface__Group__2_in_rule__Interface__Group__14945 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Interface__NameAssignment_1_in_rule__Interface__Group__1__Impl4972 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Interface__Group__2__Impl_in_rule__Interface__Group__25002 = new BitSet(new long[]{0x0000000100200830L});
-        public static final BitSet FOLLOW_rule__Interface__Group__3_in_rule__Interface__Group__25005 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_20_in_rule__Interface__Group__2__Impl5033 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Interface__Group__3__Impl_in_rule__Interface__Group__35064 = new BitSet(new long[]{0x0000000100200830L});
-        public static final BitSet FOLLOW_rule__Interface__Group__4_in_rule__Interface__Group__35067 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Interface__Group_3__0_in_rule__Interface__Group__3__Impl5094 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Interface__Group__4__Impl_in_rule__Interface__Group__45125 = new BitSet(new long[]{0x0000000100200830L});
-        public static final BitSet FOLLOW_rule__Interface__Group__5_in_rule__Interface__Group__45128 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Interface__Group_4__0_in_rule__Interface__Group__4__Impl5155 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Interface__Group__5__Impl_in_rule__Interface__Group__55186 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_21_in_rule__Interface__Group__5__Impl5214 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Interface__Group_3__0__Impl_in_rule__Interface__Group_3__05257 = new BitSet(new long[]{0x0000000200000000L});
-        public static final BitSet FOLLOW_rule__Interface__Group_3__1_in_rule__Interface__Group_3__05260 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_32_in_rule__Interface__Group_3__0__Impl5288 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Interface__Group_3__1__Impl_in_rule__Interface__Group_3__15319 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_rule__Interface__Group_3__2_in_rule__Interface__Group_3__15322 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_33_in_rule__Interface__Group_3__1__Impl5350 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Interface__Group_3__2__Impl_in_rule__Interface__Group_3__25381 = new BitSet(new long[]{0x0000000400800000L});
-        public static final BitSet FOLLOW_rule__Interface__Group_3__3_in_rule__Interface__Group_3__25384 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Interface__ParentInterfacesAssignment_3_2_in_rule__Interface__Group_3__2__Impl5411 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Interface__Group_3__3__Impl_in_rule__Interface__Group_3__35441 = new BitSet(new long[]{0x0000000400800000L});
-        public static final BitSet FOLLOW_rule__Interface__Group_3__4_in_rule__Interface__Group_3__35444 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Interface__Group_3_3__0_in_rule__Interface__Group_3__3__Impl5471 = new BitSet(new long[]{0x0000000000800002L});
-        public static final BitSet FOLLOW_rule__Interface__Group_3__4__Impl_in_rule__Interface__Group_3__45502 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_34_in_rule__Interface__Group_3__4__Impl5530 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Interface__Group_3_3__0__Impl_in_rule__Interface__Group_3_3__05571 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_rule__Interface__Group_3_3__1_in_rule__Interface__Group_3_3__05574 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_23_in_rule__Interface__Group_3_3__0__Impl5602 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Interface__Group_3_3__1__Impl_in_rule__Interface__Group_3_3__15633 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Interface__ParentInterfacesAssignment_3_3_1_in_rule__Interface__Group_3_3__1__Impl5660 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Interface__Group_4__0__Impl_in_rule__Interface__Group_4__05694 = new BitSet(new long[]{0x0000000000800000L});
-        public static final BitSet FOLLOW_rule__Interface__Group_4__1_in_rule__Interface__Group_4__05697 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Interface__SignaturesAssignment_4_0_in_rule__Interface__Group_4__0__Impl5724 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Interface__Group_4__1__Impl_in_rule__Interface__Group_4__15754 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Interface__Group_4_1__0_in_rule__Interface__Group_4__1__Impl5781 = new BitSet(new long[]{0x0000000000800002L});
-        public static final BitSet FOLLOW_rule__Interface__Group_4_1__0__Impl_in_rule__Interface__Group_4_1__05816 = new BitSet(new long[]{0x0000000000000830L});
-        public static final BitSet FOLLOW_rule__Interface__Group_4_1__1_in_rule__Interface__Group_4_1__05819 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_23_in_rule__Interface__Group_4_1__0__Impl5847 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Interface__Group_4_1__1__Impl_in_rule__Interface__Group_4_1__15878 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Interface__SignaturesAssignment_4_1_1_in_rule__Interface__Group_4_1__1__Impl5905 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group__0__Impl_in_rule__RepositoryComponent_Impl__Group__05939 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group__1_in_rule__RepositoryComponent_Impl__Group__05942 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_35_in_rule__RepositoryComponent_Impl__Group__0__Impl5970 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group__1__Impl_in_rule__RepositoryComponent_Impl__Group__16001 = new BitSet(new long[]{0x0000000000100000L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group__2_in_rule__RepositoryComponent_Impl__Group__16004 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__NameAssignment_1_in_rule__RepositoryComponent_Impl__Group__1__Impl6031 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group__2__Impl_in_rule__RepositoryComponent_Impl__Group__26061 = new BitSet(new long[]{0x0000007000200000L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group__3_in_rule__RepositoryComponent_Impl__Group__26064 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_20_in_rule__RepositoryComponent_Impl__Group__2__Impl6092 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group__3__Impl_in_rule__RepositoryComponent_Impl__Group__36123 = new BitSet(new long[]{0x0000007000200000L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group__4_in_rule__RepositoryComponent_Impl__Group__36126 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_3__0_in_rule__RepositoryComponent_Impl__Group__3__Impl6153 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group__4__Impl_in_rule__RepositoryComponent_Impl__Group__46184 = new BitSet(new long[]{0x0000007000200000L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group__5_in_rule__RepositoryComponent_Impl__Group__46187 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_4__0_in_rule__RepositoryComponent_Impl__Group__4__Impl6214 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group__5__Impl_in_rule__RepositoryComponent_Impl__Group__56245 = new BitSet(new long[]{0x0000007000200000L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group__6_in_rule__RepositoryComponent_Impl__Group__56248 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_5__0_in_rule__RepositoryComponent_Impl__Group__5__Impl6275 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group__6__Impl_in_rule__RepositoryComponent_Impl__Group__66306 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_21_in_rule__RepositoryComponent_Impl__Group__6__Impl6334 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_3__0__Impl_in_rule__RepositoryComponent_Impl__Group_3__06379 = new BitSet(new long[]{0x0000000200000000L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_3__1_in_rule__RepositoryComponent_Impl__Group_3__06382 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_36_in_rule__RepositoryComponent_Impl__Group_3__0__Impl6410 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_3__1__Impl_in_rule__RepositoryComponent_Impl__Group_3__16441 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_3__2_in_rule__RepositoryComponent_Impl__Group_3__16444 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_33_in_rule__RepositoryComponent_Impl__Group_3__1__Impl6472 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_3__2__Impl_in_rule__RepositoryComponent_Impl__Group_3__26503 = new BitSet(new long[]{0x0000000400800000L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_3__3_in_rule__RepositoryComponent_Impl__Group_3__26506 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__RelationshipAssignment_3_2_in_rule__RepositoryComponent_Impl__Group_3__2__Impl6533 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_3__3__Impl_in_rule__RepositoryComponent_Impl__Group_3__36563 = new BitSet(new long[]{0x0000000400800000L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_3__4_in_rule__RepositoryComponent_Impl__Group_3__36566 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_3_3__0_in_rule__RepositoryComponent_Impl__Group_3__3__Impl6593 = new BitSet(new long[]{0x0000000000800002L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_3__4__Impl_in_rule__RepositoryComponent_Impl__Group_3__46624 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_34_in_rule__RepositoryComponent_Impl__Group_3__4__Impl6652 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_3_3__0__Impl_in_rule__RepositoryComponent_Impl__Group_3_3__06693 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_3_3__1_in_rule__RepositoryComponent_Impl__Group_3_3__06696 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_23_in_rule__RepositoryComponent_Impl__Group_3_3__0__Impl6724 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_3_3__1__Impl_in_rule__RepositoryComponent_Impl__Group_3_3__16755 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__RelationshipAssignment_3_3_1_in_rule__RepositoryComponent_Impl__Group_3_3__1__Impl6782 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_4__0__Impl_in_rule__RepositoryComponent_Impl__Group_4__06816 = new BitSet(new long[]{0x0000000000100000L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_4__1_in_rule__RepositoryComponent_Impl__Group_4__06819 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_37_in_rule__RepositoryComponent_Impl__Group_4__0__Impl6847 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_4__1__Impl_in_rule__RepositoryComponent_Impl__Group_4__16878 = new BitSet(new long[]{0x0002000000000000L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_4__2_in_rule__RepositoryComponent_Impl__Group_4__16881 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_20_in_rule__RepositoryComponent_Impl__Group_4__1__Impl6909 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_4__2__Impl_in_rule__RepositoryComponent_Impl__Group_4__26940 = new BitSet(new long[]{0x0000000000A00000L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_4__3_in_rule__RepositoryComponent_Impl__Group_4__26943 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__ProvidedRolesAssignment_4_2_in_rule__RepositoryComponent_Impl__Group_4__2__Impl6970 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_4__3__Impl_in_rule__RepositoryComponent_Impl__Group_4__37000 = new BitSet(new long[]{0x0000000000A00000L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_4__4_in_rule__RepositoryComponent_Impl__Group_4__37003 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_4_3__0_in_rule__RepositoryComponent_Impl__Group_4__3__Impl7030 = new BitSet(new long[]{0x0000000000800002L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_4__4__Impl_in_rule__RepositoryComponent_Impl__Group_4__47061 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_21_in_rule__RepositoryComponent_Impl__Group_4__4__Impl7089 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_4_3__0__Impl_in_rule__RepositoryComponent_Impl__Group_4_3__07130 = new BitSet(new long[]{0x0002000000000000L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_4_3__1_in_rule__RepositoryComponent_Impl__Group_4_3__07133 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_23_in_rule__RepositoryComponent_Impl__Group_4_3__0__Impl7161 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_4_3__1__Impl_in_rule__RepositoryComponent_Impl__Group_4_3__17192 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__ProvidedRolesAssignment_4_3_1_in_rule__RepositoryComponent_Impl__Group_4_3__1__Impl7219 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_5__0__Impl_in_rule__RepositoryComponent_Impl__Group_5__07253 = new BitSet(new long[]{0x0000000000100000L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_5__1_in_rule__RepositoryComponent_Impl__Group_5__07256 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_38_in_rule__RepositoryComponent_Impl__Group_5__0__Impl7284 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_5__1__Impl_in_rule__RepositoryComponent_Impl__Group_5__17315 = new BitSet(new long[]{0x0004000000000000L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_5__2_in_rule__RepositoryComponent_Impl__Group_5__17318 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_20_in_rule__RepositoryComponent_Impl__Group_5__1__Impl7346 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_5__2__Impl_in_rule__RepositoryComponent_Impl__Group_5__27377 = new BitSet(new long[]{0x0000000000A00000L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_5__3_in_rule__RepositoryComponent_Impl__Group_5__27380 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__RequiredRolesAssignment_5_2_in_rule__RepositoryComponent_Impl__Group_5__2__Impl7407 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_5__3__Impl_in_rule__RepositoryComponent_Impl__Group_5__37437 = new BitSet(new long[]{0x0000000000A00000L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_5__4_in_rule__RepositoryComponent_Impl__Group_5__37440 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_5_3__0_in_rule__RepositoryComponent_Impl__Group_5__3__Impl7467 = new BitSet(new long[]{0x0000000000800002L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_5__4__Impl_in_rule__RepositoryComponent_Impl__Group_5__47498 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_21_in_rule__RepositoryComponent_Impl__Group_5__4__Impl7526 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_5_3__0__Impl_in_rule__RepositoryComponent_Impl__Group_5_3__07567 = new BitSet(new long[]{0x0004000000000000L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_5_3__1_in_rule__RepositoryComponent_Impl__Group_5_3__07570 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_23_in_rule__RepositoryComponent_Impl__Group_5_3__0__Impl7598 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_5_3__1__Impl_in_rule__RepositoryComponent_Impl__Group_5_3__17629 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__RequiredRolesAssignment_5_3_1_in_rule__RepositoryComponent_Impl__Group_5_3__1__Impl7656 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CollectionDataType__Group__0__Impl_in_rule__CollectionDataType__Group__07690 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_rule__CollectionDataType__Group__1_in_rule__CollectionDataType__Group__07693 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_39_in_rule__CollectionDataType__Group__0__Impl7721 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CollectionDataType__Group__1__Impl_in_rule__CollectionDataType__Group__17752 = new BitSet(new long[]{0x0000000000100000L});
-        public static final BitSet FOLLOW_rule__CollectionDataType__Group__2_in_rule__CollectionDataType__Group__17755 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CollectionDataType__NameAssignment_1_in_rule__CollectionDataType__Group__1__Impl7782 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CollectionDataType__Group__2__Impl_in_rule__CollectionDataType__Group__27812 = new BitSet(new long[]{0x0000010000000000L});
-        public static final BitSet FOLLOW_rule__CollectionDataType__Group__3_in_rule__CollectionDataType__Group__27815 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_20_in_rule__CollectionDataType__Group__2__Impl7843 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CollectionDataType__Group__3__Impl_in_rule__CollectionDataType__Group__37874 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_rule__CollectionDataType__Group__4_in_rule__CollectionDataType__Group__37877 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_40_in_rule__CollectionDataType__Group__3__Impl7905 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CollectionDataType__Group__4__Impl_in_rule__CollectionDataType__Group__47936 = new BitSet(new long[]{0x0000000000200000L});
-        public static final BitSet FOLLOW_rule__CollectionDataType__Group__5_in_rule__CollectionDataType__Group__47939 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CollectionDataType__InnerTypeAssignment_4_in_rule__CollectionDataType__Group__4__Impl7966 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CollectionDataType__Group__5__Impl_in_rule__CollectionDataType__Group__57996 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_21_in_rule__CollectionDataType__Group__5__Impl8024 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeDataType__Group__0__Impl_in_rule__CompositeDataType__Group__08067 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_rule__CompositeDataType__Group__1_in_rule__CompositeDataType__Group__08070 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_41_in_rule__CompositeDataType__Group__0__Impl8098 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeDataType__Group__1__Impl_in_rule__CompositeDataType__Group__18129 = new BitSet(new long[]{0x0000000000100000L});
-        public static final BitSet FOLLOW_rule__CompositeDataType__Group__2_in_rule__CompositeDataType__Group__18132 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeDataType__NameAssignment_1_in_rule__CompositeDataType__Group__1__Impl8159 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeDataType__Group__2__Impl_in_rule__CompositeDataType__Group__28189 = new BitSet(new long[]{0x00000C0000200000L});
-        public static final BitSet FOLLOW_rule__CompositeDataType__Group__3_in_rule__CompositeDataType__Group__28192 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_20_in_rule__CompositeDataType__Group__2__Impl8220 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeDataType__Group__3__Impl_in_rule__CompositeDataType__Group__38251 = new BitSet(new long[]{0x00000C0000200000L});
-        public static final BitSet FOLLOW_rule__CompositeDataType__Group__4_in_rule__CompositeDataType__Group__38254 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeDataType__Group_3__0_in_rule__CompositeDataType__Group__3__Impl8281 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeDataType__Group__4__Impl_in_rule__CompositeDataType__Group__48312 = new BitSet(new long[]{0x00000C0000200000L});
-        public static final BitSet FOLLOW_rule__CompositeDataType__Group__5_in_rule__CompositeDataType__Group__48315 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeDataType__Group_4__0_in_rule__CompositeDataType__Group__4__Impl8342 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeDataType__Group__5__Impl_in_rule__CompositeDataType__Group__58373 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_21_in_rule__CompositeDataType__Group__5__Impl8401 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeDataType__Group_3__0__Impl_in_rule__CompositeDataType__Group_3__08444 = new BitSet(new long[]{0x0000000200000000L});
-        public static final BitSet FOLLOW_rule__CompositeDataType__Group_3__1_in_rule__CompositeDataType__Group_3__08447 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_42_in_rule__CompositeDataType__Group_3__0__Impl8475 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeDataType__Group_3__1__Impl_in_rule__CompositeDataType__Group_3__18506 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_rule__CompositeDataType__Group_3__2_in_rule__CompositeDataType__Group_3__18509 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_33_in_rule__CompositeDataType__Group_3__1__Impl8537 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeDataType__Group_3__2__Impl_in_rule__CompositeDataType__Group_3__28568 = new BitSet(new long[]{0x0000000400800000L});
-        public static final BitSet FOLLOW_rule__CompositeDataType__Group_3__3_in_rule__CompositeDataType__Group_3__28571 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeDataType__ParentTypesAssignment_3_2_in_rule__CompositeDataType__Group_3__2__Impl8598 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeDataType__Group_3__3__Impl_in_rule__CompositeDataType__Group_3__38628 = new BitSet(new long[]{0x0000000400800000L});
-        public static final BitSet FOLLOW_rule__CompositeDataType__Group_3__4_in_rule__CompositeDataType__Group_3__38631 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeDataType__Group_3_3__0_in_rule__CompositeDataType__Group_3__3__Impl8658 = new BitSet(new long[]{0x0000000000800002L});
-        public static final BitSet FOLLOW_rule__CompositeDataType__Group_3__4__Impl_in_rule__CompositeDataType__Group_3__48689 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_34_in_rule__CompositeDataType__Group_3__4__Impl8717 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeDataType__Group_3_3__0__Impl_in_rule__CompositeDataType__Group_3_3__08758 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_rule__CompositeDataType__Group_3_3__1_in_rule__CompositeDataType__Group_3_3__08761 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_23_in_rule__CompositeDataType__Group_3_3__0__Impl8789 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeDataType__Group_3_3__1__Impl_in_rule__CompositeDataType__Group_3_3__18820 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeDataType__ParentTypesAssignment_3_3_1_in_rule__CompositeDataType__Group_3_3__1__Impl8847 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeDataType__Group_4__0__Impl_in_rule__CompositeDataType__Group_4__08881 = new BitSet(new long[]{0x0000000000100000L});
-        public static final BitSet FOLLOW_rule__CompositeDataType__Group_4__1_in_rule__CompositeDataType__Group_4__08884 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_43_in_rule__CompositeDataType__Group_4__0__Impl8912 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeDataType__Group_4__1__Impl_in_rule__CompositeDataType__Group_4__18943 = new BitSet(new long[]{0x0000800000000000L});
-        public static final BitSet FOLLOW_rule__CompositeDataType__Group_4__2_in_rule__CompositeDataType__Group_4__18946 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_20_in_rule__CompositeDataType__Group_4__1__Impl8974 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeDataType__Group_4__2__Impl_in_rule__CompositeDataType__Group_4__29005 = new BitSet(new long[]{0x0000000000A00000L});
-        public static final BitSet FOLLOW_rule__CompositeDataType__Group_4__3_in_rule__CompositeDataType__Group_4__29008 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeDataType__InnerDeclarationsAssignment_4_2_in_rule__CompositeDataType__Group_4__2__Impl9035 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeDataType__Group_4__3__Impl_in_rule__CompositeDataType__Group_4__39065 = new BitSet(new long[]{0x0000000000A00000L});
-        public static final BitSet FOLLOW_rule__CompositeDataType__Group_4__4_in_rule__CompositeDataType__Group_4__39068 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeDataType__Group_4_3__0_in_rule__CompositeDataType__Group_4__3__Impl9095 = new BitSet(new long[]{0x0000000000800002L});
-        public static final BitSet FOLLOW_rule__CompositeDataType__Group_4__4__Impl_in_rule__CompositeDataType__Group_4__49126 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_21_in_rule__CompositeDataType__Group_4__4__Impl9154 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeDataType__Group_4_3__0__Impl_in_rule__CompositeDataType__Group_4_3__09195 = new BitSet(new long[]{0x0000800000000000L});
-        public static final BitSet FOLLOW_rule__CompositeDataType__Group_4_3__1_in_rule__CompositeDataType__Group_4_3__09198 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_23_in_rule__CompositeDataType__Group_4_3__0__Impl9226 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeDataType__Group_4_3__1__Impl_in_rule__CompositeDataType__Group_4_3__19257 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeDataType__InnerDeclarationsAssignment_4_3_1_in_rule__CompositeDataType__Group_4_3__1__Impl9284 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__PrimitiveDataType__Group__0__Impl_in_rule__PrimitiveDataType__Group__09318 = new BitSet(new long[]{0x0000000000100000L});
-        public static final BitSet FOLLOW_rule__PrimitiveDataType__Group__1_in_rule__PrimitiveDataType__Group__09321 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_44_in_rule__PrimitiveDataType__Group__0__Impl9349 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__PrimitiveDataType__Group__1__Impl_in_rule__PrimitiveDataType__Group__19380 = new BitSet(new long[]{0x0000200000000000L});
-        public static final BitSet FOLLOW_rule__PrimitiveDataType__Group__2_in_rule__PrimitiveDataType__Group__19383 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_20_in_rule__PrimitiveDataType__Group__1__Impl9411 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__PrimitiveDataType__Group__2__Impl_in_rule__PrimitiveDataType__Group__29442 = new BitSet(new long[]{0x000000000007F000L});
-        public static final BitSet FOLLOW_rule__PrimitiveDataType__Group__3_in_rule__PrimitiveDataType__Group__29445 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_45_in_rule__PrimitiveDataType__Group__2__Impl9473 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__PrimitiveDataType__Group__3__Impl_in_rule__PrimitiveDataType__Group__39504 = new BitSet(new long[]{0x0000400000000000L});
-        public static final BitSet FOLLOW_rule__PrimitiveDataType__Group__4_in_rule__PrimitiveDataType__Group__39507 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__PrimitiveDataType__TypeAssignment_3_in_rule__PrimitiveDataType__Group__3__Impl9534 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__PrimitiveDataType__Group__4__Impl_in_rule__PrimitiveDataType__Group__49564 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_rule__PrimitiveDataType__Group__5_in_rule__PrimitiveDataType__Group__49567 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_46_in_rule__PrimitiveDataType__Group__4__Impl9595 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__PrimitiveDataType__Group__5__Impl_in_rule__PrimitiveDataType__Group__59626 = new BitSet(new long[]{0x0000000000200000L});
-        public static final BitSet FOLLOW_rule__PrimitiveDataType__Group__6_in_rule__PrimitiveDataType__Group__59629 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__PrimitiveDataType__NameAssignment_5_in_rule__PrimitiveDataType__Group__5__Impl9656 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__PrimitiveDataType__Group__6__Impl_in_rule__PrimitiveDataType__Group__69686 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_21_in_rule__PrimitiveDataType__Group__6__Impl9714 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__InnerDeclaration__Group__0__Impl_in_rule__InnerDeclaration__Group__09759 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_rule__InnerDeclaration__Group__1_in_rule__InnerDeclaration__Group__09762 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_47_in_rule__InnerDeclaration__Group__0__Impl9790 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__InnerDeclaration__Group__1__Impl_in_rule__InnerDeclaration__Group__19821 = new BitSet(new long[]{0x0000000000100000L});
-        public static final BitSet FOLLOW_rule__InnerDeclaration__Group__2_in_rule__InnerDeclaration__Group__19824 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__InnerDeclaration__NameAssignment_1_in_rule__InnerDeclaration__Group__1__Impl9851 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__InnerDeclaration__Group__2__Impl_in_rule__InnerDeclaration__Group__29881 = new BitSet(new long[]{0x0001000000000000L});
-        public static final BitSet FOLLOW_rule__InnerDeclaration__Group__3_in_rule__InnerDeclaration__Group__29884 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_20_in_rule__InnerDeclaration__Group__2__Impl9912 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__InnerDeclaration__Group__3__Impl_in_rule__InnerDeclaration__Group__39943 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_rule__InnerDeclaration__Group__4_in_rule__InnerDeclaration__Group__39946 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_48_in_rule__InnerDeclaration__Group__3__Impl9974 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__InnerDeclaration__Group__4__Impl_in_rule__InnerDeclaration__Group__410005 = new BitSet(new long[]{0x0000000000200000L});
-        public static final BitSet FOLLOW_rule__InnerDeclaration__Group__5_in_rule__InnerDeclaration__Group__410008 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__InnerDeclaration__DataTypeAssignment_4_in_rule__InnerDeclaration__Group__4__Impl10035 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__InnerDeclaration__Group__5__Impl_in_rule__InnerDeclaration__Group__510065 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_21_in_rule__InnerDeclaration__Group__5__Impl10093 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Signature__Group__0__Impl_in_rule__Signature__Group__010136 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_rule__Signature__Group__1_in_rule__Signature__Group__010139 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Signature__Alternatives_0_in_rule__Signature__Group__0__Impl10166 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Signature__Group__1__Impl_in_rule__Signature__Group__110196 = new BitSet(new long[]{0x0000000200000000L});
-        public static final BitSet FOLLOW_rule__Signature__Group__2_in_rule__Signature__Group__110199 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Signature__NameAssignment_1_in_rule__Signature__Group__1__Impl10226 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Signature__Group__2__Impl_in_rule__Signature__Group__210256 = new BitSet(new long[]{0x0000000400000030L});
-        public static final BitSet FOLLOW_rule__Signature__Group__3_in_rule__Signature__Group__210259 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_33_in_rule__Signature__Group__2__Impl10287 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Signature__Group__3__Impl_in_rule__Signature__Group__310318 = new BitSet(new long[]{0x0000000400000030L});
-        public static final BitSet FOLLOW_rule__Signature__Group__4_in_rule__Signature__Group__310321 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Signature__Group_3__0_in_rule__Signature__Group__3__Impl10348 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Signature__Group__4__Impl_in_rule__Signature__Group__410379 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_34_in_rule__Signature__Group__4__Impl10407 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Signature__Group_3__0__Impl_in_rule__Signature__Group_3__010448 = new BitSet(new long[]{0x0000000000800000L});
-        public static final BitSet FOLLOW_rule__Signature__Group_3__1_in_rule__Signature__Group_3__010451 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Signature__ParametersAssignment_3_0_in_rule__Signature__Group_3__0__Impl10478 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Signature__Group_3__1__Impl_in_rule__Signature__Group_3__110508 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Signature__Group_3_1__0_in_rule__Signature__Group_3__1__Impl10535 = new BitSet(new long[]{0x0000000000800002L});
-        public static final BitSet FOLLOW_rule__Signature__Group_3_1__0__Impl_in_rule__Signature__Group_3_1__010570 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_rule__Signature__Group_3_1__1_in_rule__Signature__Group_3_1__010573 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_23_in_rule__Signature__Group_3_1__0__Impl10601 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Signature__Group_3_1__1__Impl_in_rule__Signature__Group_3_1__110632 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Signature__ParametersAssignment_3_1_1_in_rule__Signature__Group_3_1__1__Impl10659 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Parameter__Group__0__Impl_in_rule__Parameter__Group__010693 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_rule__Parameter__Group__1_in_rule__Parameter__Group__010696 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Parameter__DataTypeAssignment_0_in_rule__Parameter__Group__0__Impl10723 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Parameter__Group__1__Impl_in_rule__Parameter__Group__110753 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Parameter__NameAssignment_1_in_rule__Parameter__Group__1__Impl10780 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ProvidedRole__Group__0__Impl_in_rule__ProvidedRole__Group__010814 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_rule__ProvidedRole__Group__1_in_rule__ProvidedRole__Group__010817 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_49_in_rule__ProvidedRole__Group__0__Impl10845 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ProvidedRole__Group__1__Impl_in_rule__ProvidedRole__Group__110876 = new BitSet(new long[]{0x0000000000800000L});
-        public static final BitSet FOLLOW_rule__ProvidedRole__Group__2_in_rule__ProvidedRole__Group__110879 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ProvidedRole__InterfaceAssignment_1_in_rule__ProvidedRole__Group__1__Impl10906 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ProvidedRole__Group__2__Impl_in_rule__ProvidedRole__Group__210936 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_23_in_rule__ProvidedRole__Group__2__Impl10965 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RequiredRole__Group__0__Impl_in_rule__RequiredRole__Group__011004 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_rule__RequiredRole__Group__1_in_rule__RequiredRole__Group__011007 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_50_in_rule__RequiredRole__Group__0__Impl11035 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RequiredRole__Group__1__Impl_in_rule__RequiredRole__Group__111066 = new BitSet(new long[]{0x0000000000800000L});
-        public static final BitSet FOLLOW_rule__RequiredRole__Group__2_in_rule__RequiredRole__Group__111069 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RequiredRole__InterfaceAssignment_1_in_rule__RequiredRole__Group__1__Impl11096 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RequiredRole__Group__2__Impl_in_rule__RequiredRole__Group__211126 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_23_in_rule__RequiredRole__Group__2__Impl11155 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__BasicComponent__Group__0__Impl_in_rule__BasicComponent__Group__011194 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_rule__BasicComponent__Group__1_in_rule__BasicComponent__Group__011197 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_51_in_rule__BasicComponent__Group__0__Impl11225 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__BasicComponent__Group__1__Impl_in_rule__BasicComponent__Group__111256 = new BitSet(new long[]{0x0006000000100000L});
-        public static final BitSet FOLLOW_rule__BasicComponent__Group__2_in_rule__BasicComponent__Group__111259 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__BasicComponent__NameAssignment_1_in_rule__BasicComponent__Group__1__Impl11286 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__BasicComponent__Group__2__Impl_in_rule__BasicComponent__Group__211316 = new BitSet(new long[]{0x0006000000100000L});
-        public static final BitSet FOLLOW_rule__BasicComponent__Group__3_in_rule__BasicComponent__Group__211319 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__BasicComponent__Group_2__0_in_rule__BasicComponent__Group__2__Impl11346 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__BasicComponent__Group__3__Impl_in_rule__BasicComponent__Group__311377 = new BitSet(new long[]{0x0006000000100000L});
-        public static final BitSet FOLLOW_rule__BasicComponent__Group__4_in_rule__BasicComponent__Group__311380 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__BasicComponent__Group_3__0_in_rule__BasicComponent__Group__3__Impl11407 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__BasicComponent__Group__4__Impl_in_rule__BasicComponent__Group__411438 = new BitSet(new long[]{0x0000001000200000L});
-        public static final BitSet FOLLOW_rule__BasicComponent__Group__5_in_rule__BasicComponent__Group__411441 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_20_in_rule__BasicComponent__Group__4__Impl11469 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__BasicComponent__Group__5__Impl_in_rule__BasicComponent__Group__511500 = new BitSet(new long[]{0x0000001000200000L});
-        public static final BitSet FOLLOW_rule__BasicComponent__Group__6_in_rule__BasicComponent__Group__511503 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__BasicComponent__Group_5__0_in_rule__BasicComponent__Group__5__Impl11530 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__BasicComponent__Group__6__Impl_in_rule__BasicComponent__Group__611561 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_21_in_rule__BasicComponent__Group__6__Impl11589 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__BasicComponent__Group_2__0__Impl_in_rule__BasicComponent__Group_2__011634 = new BitSet(new long[]{0x0000000000800000L});
-        public static final BitSet FOLLOW_rule__BasicComponent__Group_2__1_in_rule__BasicComponent__Group_2__011637 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__BasicComponent__ProvidedRolesAssignment_2_0_in_rule__BasicComponent__Group_2__0__Impl11664 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__BasicComponent__Group_2__1__Impl_in_rule__BasicComponent__Group_2__111694 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__BasicComponent__Group_2_1__0_in_rule__BasicComponent__Group_2__1__Impl11721 = new BitSet(new long[]{0x0000000000800002L});
-        public static final BitSet FOLLOW_rule__BasicComponent__Group_2_1__0__Impl_in_rule__BasicComponent__Group_2_1__011756 = new BitSet(new long[]{0x0002000000000000L});
-        public static final BitSet FOLLOW_rule__BasicComponent__Group_2_1__1_in_rule__BasicComponent__Group_2_1__011759 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_23_in_rule__BasicComponent__Group_2_1__0__Impl11787 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__BasicComponent__Group_2_1__1__Impl_in_rule__BasicComponent__Group_2_1__111818 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__BasicComponent__ProvidedRolesAssignment_2_1_1_in_rule__BasicComponent__Group_2_1__1__Impl11845 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__BasicComponent__Group_3__0__Impl_in_rule__BasicComponent__Group_3__011879 = new BitSet(new long[]{0x0000000000800000L});
-        public static final BitSet FOLLOW_rule__BasicComponent__Group_3__1_in_rule__BasicComponent__Group_3__011882 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__BasicComponent__RequiredRolesAssignment_3_0_in_rule__BasicComponent__Group_3__0__Impl11909 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__BasicComponent__Group_3__1__Impl_in_rule__BasicComponent__Group_3__111939 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__BasicComponent__Group_3_1__0_in_rule__BasicComponent__Group_3__1__Impl11966 = new BitSet(new long[]{0x0000000000800002L});
-        public static final BitSet FOLLOW_rule__BasicComponent__Group_3_1__0__Impl_in_rule__BasicComponent__Group_3_1__012001 = new BitSet(new long[]{0x0004000000000000L});
-        public static final BitSet FOLLOW_rule__BasicComponent__Group_3_1__1_in_rule__BasicComponent__Group_3_1__012004 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_23_in_rule__BasicComponent__Group_3_1__0__Impl12032 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__BasicComponent__Group_3_1__1__Impl_in_rule__BasicComponent__Group_3_1__112063 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__BasicComponent__RequiredRolesAssignment_3_1_1_in_rule__BasicComponent__Group_3_1__1__Impl12090 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__BasicComponent__Group_5__0__Impl_in_rule__BasicComponent__Group_5__012124 = new BitSet(new long[]{0x0000000200000000L});
-        public static final BitSet FOLLOW_rule__BasicComponent__Group_5__1_in_rule__BasicComponent__Group_5__012127 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_36_in_rule__BasicComponent__Group_5__0__Impl12155 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__BasicComponent__Group_5__1__Impl_in_rule__BasicComponent__Group_5__112186 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_rule__BasicComponent__Group_5__2_in_rule__BasicComponent__Group_5__112189 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_33_in_rule__BasicComponent__Group_5__1__Impl12217 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__BasicComponent__Group_5__2__Impl_in_rule__BasicComponent__Group_5__212248 = new BitSet(new long[]{0x0000000400800000L});
-        public static final BitSet FOLLOW_rule__BasicComponent__Group_5__3_in_rule__BasicComponent__Group_5__212251 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__BasicComponent__RelationshipAssignment_5_2_in_rule__BasicComponent__Group_5__2__Impl12278 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__BasicComponent__Group_5__3__Impl_in_rule__BasicComponent__Group_5__312308 = new BitSet(new long[]{0x0000000400800000L});
-        public static final BitSet FOLLOW_rule__BasicComponent__Group_5__4_in_rule__BasicComponent__Group_5__312311 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__BasicComponent__Group_5_3__0_in_rule__BasicComponent__Group_5__3__Impl12338 = new BitSet(new long[]{0x0000000000800002L});
-        public static final BitSet FOLLOW_rule__BasicComponent__Group_5__4__Impl_in_rule__BasicComponent__Group_5__412369 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_34_in_rule__BasicComponent__Group_5__4__Impl12397 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__BasicComponent__Group_5_3__0__Impl_in_rule__BasicComponent__Group_5_3__012438 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_rule__BasicComponent__Group_5_3__1_in_rule__BasicComponent__Group_5_3__012441 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_23_in_rule__BasicComponent__Group_5_3__0__Impl12469 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__BasicComponent__Group_5_3__1__Impl_in_rule__BasicComponent__Group_5_3__112500 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__BasicComponent__RelationshipAssignment_5_3_1_in_rule__BasicComponent__Group_5_3__1__Impl12527 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeComponent__Group__0__Impl_in_rule__CompositeComponent__Group__012561 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_rule__CompositeComponent__Group__1_in_rule__CompositeComponent__Group__012564 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_52_in_rule__CompositeComponent__Group__0__Impl12592 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeComponent__Group__1__Impl_in_rule__CompositeComponent__Group__112623 = new BitSet(new long[]{0x0006000000100000L});
-        public static final BitSet FOLLOW_rule__CompositeComponent__Group__2_in_rule__CompositeComponent__Group__112626 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeComponent__NameAssignment_1_in_rule__CompositeComponent__Group__1__Impl12653 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeComponent__Group__2__Impl_in_rule__CompositeComponent__Group__212683 = new BitSet(new long[]{0x0006000000100000L});
-        public static final BitSet FOLLOW_rule__CompositeComponent__Group__3_in_rule__CompositeComponent__Group__212686 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeComponent__Group_2__0_in_rule__CompositeComponent__Group__2__Impl12713 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeComponent__Group__3__Impl_in_rule__CompositeComponent__Group__312744 = new BitSet(new long[]{0x0006000000100000L});
-        public static final BitSet FOLLOW_rule__CompositeComponent__Group__4_in_rule__CompositeComponent__Group__312747 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeComponent__Group_3__0_in_rule__CompositeComponent__Group__3__Impl12774 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeComponent__Group__4__Impl_in_rule__CompositeComponent__Group__412805 = new BitSet(new long[]{0x0020001000200000L});
-        public static final BitSet FOLLOW_rule__CompositeComponent__Group__5_in_rule__CompositeComponent__Group__412808 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_20_in_rule__CompositeComponent__Group__4__Impl12836 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeComponent__Group__5__Impl_in_rule__CompositeComponent__Group__512867 = new BitSet(new long[]{0x0020001000200000L});
-        public static final BitSet FOLLOW_rule__CompositeComponent__Group__6_in_rule__CompositeComponent__Group__512870 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeComponent__Group_5__0_in_rule__CompositeComponent__Group__5__Impl12897 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeComponent__Group__6__Impl_in_rule__CompositeComponent__Group__612928 = new BitSet(new long[]{0x0020001000200000L});
-        public static final BitSet FOLLOW_rule__CompositeComponent__Group__7_in_rule__CompositeComponent__Group__612931 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeComponent__Group_6__0_in_rule__CompositeComponent__Group__6__Impl12958 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeComponent__Group__7__Impl_in_rule__CompositeComponent__Group__712989 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_21_in_rule__CompositeComponent__Group__7__Impl13017 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeComponent__Group_2__0__Impl_in_rule__CompositeComponent__Group_2__013064 = new BitSet(new long[]{0x0000000000800000L});
-        public static final BitSet FOLLOW_rule__CompositeComponent__Group_2__1_in_rule__CompositeComponent__Group_2__013067 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeComponent__ProvidedRolesAssignment_2_0_in_rule__CompositeComponent__Group_2__0__Impl13094 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeComponent__Group_2__1__Impl_in_rule__CompositeComponent__Group_2__113124 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeComponent__Group_2_1__0_in_rule__CompositeComponent__Group_2__1__Impl13151 = new BitSet(new long[]{0x0000000000800002L});
-        public static final BitSet FOLLOW_rule__CompositeComponent__Group_2_1__0__Impl_in_rule__CompositeComponent__Group_2_1__013186 = new BitSet(new long[]{0x0002000000000000L});
-        public static final BitSet FOLLOW_rule__CompositeComponent__Group_2_1__1_in_rule__CompositeComponent__Group_2_1__013189 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_23_in_rule__CompositeComponent__Group_2_1__0__Impl13217 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeComponent__Group_2_1__1__Impl_in_rule__CompositeComponent__Group_2_1__113248 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeComponent__ProvidedRolesAssignment_2_1_1_in_rule__CompositeComponent__Group_2_1__1__Impl13275 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeComponent__Group_3__0__Impl_in_rule__CompositeComponent__Group_3__013309 = new BitSet(new long[]{0x0000000000800000L});
-        public static final BitSet FOLLOW_rule__CompositeComponent__Group_3__1_in_rule__CompositeComponent__Group_3__013312 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeComponent__RequiredRolesAssignment_3_0_in_rule__CompositeComponent__Group_3__0__Impl13339 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeComponent__Group_3__1__Impl_in_rule__CompositeComponent__Group_3__113369 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeComponent__Group_3_1__0_in_rule__CompositeComponent__Group_3__1__Impl13396 = new BitSet(new long[]{0x0000000000800002L});
-        public static final BitSet FOLLOW_rule__CompositeComponent__Group_3_1__0__Impl_in_rule__CompositeComponent__Group_3_1__013431 = new BitSet(new long[]{0x0004000000000000L});
-        public static final BitSet FOLLOW_rule__CompositeComponent__Group_3_1__1_in_rule__CompositeComponent__Group_3_1__013434 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_23_in_rule__CompositeComponent__Group_3_1__0__Impl13462 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeComponent__Group_3_1__1__Impl_in_rule__CompositeComponent__Group_3_1__113493 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeComponent__RequiredRolesAssignment_3_1_1_in_rule__CompositeComponent__Group_3_1__1__Impl13520 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeComponent__Group_5__0__Impl_in_rule__CompositeComponent__Group_5__013554 = new BitSet(new long[]{0x0000000200000000L});
-        public static final BitSet FOLLOW_rule__CompositeComponent__Group_5__1_in_rule__CompositeComponent__Group_5__013557 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_36_in_rule__CompositeComponent__Group_5__0__Impl13585 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeComponent__Group_5__1__Impl_in_rule__CompositeComponent__Group_5__113616 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_rule__CompositeComponent__Group_5__2_in_rule__CompositeComponent__Group_5__113619 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_33_in_rule__CompositeComponent__Group_5__1__Impl13647 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeComponent__Group_5__2__Impl_in_rule__CompositeComponent__Group_5__213678 = new BitSet(new long[]{0x0000000400800000L});
-        public static final BitSet FOLLOW_rule__CompositeComponent__Group_5__3_in_rule__CompositeComponent__Group_5__213681 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeComponent__RelationshipAssignment_5_2_in_rule__CompositeComponent__Group_5__2__Impl13708 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeComponent__Group_5__3__Impl_in_rule__CompositeComponent__Group_5__313738 = new BitSet(new long[]{0x0000000400800000L});
-        public static final BitSet FOLLOW_rule__CompositeComponent__Group_5__4_in_rule__CompositeComponent__Group_5__313741 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeComponent__Group_5_3__0_in_rule__CompositeComponent__Group_5__3__Impl13768 = new BitSet(new long[]{0x0000000000800002L});
-        public static final BitSet FOLLOW_rule__CompositeComponent__Group_5__4__Impl_in_rule__CompositeComponent__Group_5__413799 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_34_in_rule__CompositeComponent__Group_5__4__Impl13827 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeComponent__Group_5_3__0__Impl_in_rule__CompositeComponent__Group_5_3__013868 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_rule__CompositeComponent__Group_5_3__1_in_rule__CompositeComponent__Group_5_3__013871 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_23_in_rule__CompositeComponent__Group_5_3__0__Impl13899 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeComponent__Group_5_3__1__Impl_in_rule__CompositeComponent__Group_5_3__113930 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeComponent__RelationshipAssignment_5_3_1_in_rule__CompositeComponent__Group_5_3__1__Impl13957 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeComponent__Group_6__0__Impl_in_rule__CompositeComponent__Group_6__013991 = new BitSet(new long[]{0x0080000000000000L});
-        public static final BitSet FOLLOW_rule__CompositeComponent__Group_6__1_in_rule__CompositeComponent__Group_6__013994 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_53_in_rule__CompositeComponent__Group_6__0__Impl14022 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeComponent__Group_6__1__Impl_in_rule__CompositeComponent__Group_6__114053 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeComponent__AssemblyAssignment_6_1_in_rule__CompositeComponent__Group_6__1__Impl14080 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group__0__Impl_in_rule__SubSystem__Group__014114 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group__1_in_rule__SubSystem__Group__014117 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_54_in_rule__SubSystem__Group__0__Impl14145 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group__1__Impl_in_rule__SubSystem__Group__114176 = new BitSet(new long[]{0x0000006000100000L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group__2_in_rule__SubSystem__Group__114179 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__SubSystem__NameAssignment_1_in_rule__SubSystem__Group__1__Impl14206 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group__2__Impl_in_rule__SubSystem__Group__214236 = new BitSet(new long[]{0x0000006000100000L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group__3_in_rule__SubSystem__Group__214239 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group_2__0_in_rule__SubSystem__Group__2__Impl14266 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group__3__Impl_in_rule__SubSystem__Group__314297 = new BitSet(new long[]{0x0000006000100000L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group__4_in_rule__SubSystem__Group__314300 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group_3__0_in_rule__SubSystem__Group__3__Impl14327 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group__4__Impl_in_rule__SubSystem__Group__414358 = new BitSet(new long[]{0x0020001000200000L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group__5_in_rule__SubSystem__Group__414361 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_20_in_rule__SubSystem__Group__4__Impl14389 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group__5__Impl_in_rule__SubSystem__Group__514420 = new BitSet(new long[]{0x0020001000200000L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group__6_in_rule__SubSystem__Group__514423 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group_5__0_in_rule__SubSystem__Group__5__Impl14450 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group__6__Impl_in_rule__SubSystem__Group__614481 = new BitSet(new long[]{0x0020001000200000L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group__7_in_rule__SubSystem__Group__614484 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group_6__0_in_rule__SubSystem__Group__6__Impl14511 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group__7__Impl_in_rule__SubSystem__Group__714542 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_21_in_rule__SubSystem__Group__7__Impl14570 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group_2__0__Impl_in_rule__SubSystem__Group_2__014617 = new BitSet(new long[]{0x0000000000100000L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group_2__1_in_rule__SubSystem__Group_2__014620 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_37_in_rule__SubSystem__Group_2__0__Impl14648 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group_2__1__Impl_in_rule__SubSystem__Group_2__114679 = new BitSet(new long[]{0x0002000000000000L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group_2__2_in_rule__SubSystem__Group_2__114682 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_20_in_rule__SubSystem__Group_2__1__Impl14710 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group_2__2__Impl_in_rule__SubSystem__Group_2__214741 = new BitSet(new long[]{0x0000000000A00000L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group_2__3_in_rule__SubSystem__Group_2__214744 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__SubSystem__ProvidedRolesAssignment_2_2_in_rule__SubSystem__Group_2__2__Impl14771 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group_2__3__Impl_in_rule__SubSystem__Group_2__314801 = new BitSet(new long[]{0x0000000000A00000L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group_2__4_in_rule__SubSystem__Group_2__314804 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group_2_3__0_in_rule__SubSystem__Group_2__3__Impl14831 = new BitSet(new long[]{0x0000000000800002L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group_2__4__Impl_in_rule__SubSystem__Group_2__414862 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_21_in_rule__SubSystem__Group_2__4__Impl14890 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group_2_3__0__Impl_in_rule__SubSystem__Group_2_3__014931 = new BitSet(new long[]{0x0002000000000000L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group_2_3__1_in_rule__SubSystem__Group_2_3__014934 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_23_in_rule__SubSystem__Group_2_3__0__Impl14962 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group_2_3__1__Impl_in_rule__SubSystem__Group_2_3__114993 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__SubSystem__ProvidedRolesAssignment_2_3_1_in_rule__SubSystem__Group_2_3__1__Impl15020 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group_3__0__Impl_in_rule__SubSystem__Group_3__015054 = new BitSet(new long[]{0x0000000000100000L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group_3__1_in_rule__SubSystem__Group_3__015057 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_38_in_rule__SubSystem__Group_3__0__Impl15085 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group_3__1__Impl_in_rule__SubSystem__Group_3__115116 = new BitSet(new long[]{0x0004000000000000L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group_3__2_in_rule__SubSystem__Group_3__115119 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_20_in_rule__SubSystem__Group_3__1__Impl15147 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group_3__2__Impl_in_rule__SubSystem__Group_3__215178 = new BitSet(new long[]{0x0000000000A00000L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group_3__3_in_rule__SubSystem__Group_3__215181 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__SubSystem__RequiredRolesAssignment_3_2_in_rule__SubSystem__Group_3__2__Impl15208 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group_3__3__Impl_in_rule__SubSystem__Group_3__315238 = new BitSet(new long[]{0x0000000000A00000L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group_3__4_in_rule__SubSystem__Group_3__315241 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group_3_3__0_in_rule__SubSystem__Group_3__3__Impl15268 = new BitSet(new long[]{0x0000000000800002L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group_3__4__Impl_in_rule__SubSystem__Group_3__415299 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_21_in_rule__SubSystem__Group_3__4__Impl15327 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group_3_3__0__Impl_in_rule__SubSystem__Group_3_3__015368 = new BitSet(new long[]{0x0004000000000000L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group_3_3__1_in_rule__SubSystem__Group_3_3__015371 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_23_in_rule__SubSystem__Group_3_3__0__Impl15399 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group_3_3__1__Impl_in_rule__SubSystem__Group_3_3__115430 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__SubSystem__RequiredRolesAssignment_3_3_1_in_rule__SubSystem__Group_3_3__1__Impl15457 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group_5__0__Impl_in_rule__SubSystem__Group_5__015491 = new BitSet(new long[]{0x0000000200000000L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group_5__1_in_rule__SubSystem__Group_5__015494 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_36_in_rule__SubSystem__Group_5__0__Impl15522 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group_5__1__Impl_in_rule__SubSystem__Group_5__115553 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group_5__2_in_rule__SubSystem__Group_5__115556 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_33_in_rule__SubSystem__Group_5__1__Impl15584 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group_5__2__Impl_in_rule__SubSystem__Group_5__215615 = new BitSet(new long[]{0x0000000400800000L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group_5__3_in_rule__SubSystem__Group_5__215618 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__SubSystem__RelationshipAssignment_5_2_in_rule__SubSystem__Group_5__2__Impl15645 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group_5__3__Impl_in_rule__SubSystem__Group_5__315675 = new BitSet(new long[]{0x0000000400800000L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group_5__4_in_rule__SubSystem__Group_5__315678 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group_5_3__0_in_rule__SubSystem__Group_5__3__Impl15705 = new BitSet(new long[]{0x0000000000800002L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group_5__4__Impl_in_rule__SubSystem__Group_5__415736 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_34_in_rule__SubSystem__Group_5__4__Impl15764 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group_5_3__0__Impl_in_rule__SubSystem__Group_5_3__015805 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group_5_3__1_in_rule__SubSystem__Group_5_3__015808 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_23_in_rule__SubSystem__Group_5_3__0__Impl15836 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group_5_3__1__Impl_in_rule__SubSystem__Group_5_3__115867 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__SubSystem__RelationshipAssignment_5_3_1_in_rule__SubSystem__Group_5_3__1__Impl15894 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group_6__0__Impl_in_rule__SubSystem__Group_6__015928 = new BitSet(new long[]{0x0080000000000000L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group_6__1_in_rule__SubSystem__Group_6__015931 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_53_in_rule__SubSystem__Group_6__0__Impl15959 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group_6__1__Impl_in_rule__SubSystem__Group_6__115990 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__SubSystem__AssemblyAssignment_6_1_in_rule__SubSystem__Group_6__1__Impl16017 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group__0__Impl_in_rule__ComposedStructureAssembly__Group__016051 = new BitSet(new long[]{0x0080000000000000L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group__1_in_rule__ComposedStructureAssembly__Group__016054 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group__1__Impl_in_rule__ComposedStructureAssembly__Group__116112 = new BitSet(new long[]{0x0000000000100000L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group__2_in_rule__ComposedStructureAssembly__Group__116115 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_55_in_rule__ComposedStructureAssembly__Group__1__Impl16143 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group__2__Impl_in_rule__ComposedStructureAssembly__Group__216174 = new BitSet(new long[]{0x0F00000000200000L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group__3_in_rule__ComposedStructureAssembly__Group__216177 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_20_in_rule__ComposedStructureAssembly__Group__2__Impl16205 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group__3__Impl_in_rule__ComposedStructureAssembly__Group__316236 = new BitSet(new long[]{0x0F00000000200000L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group__4_in_rule__ComposedStructureAssembly__Group__316239 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_3__0_in_rule__ComposedStructureAssembly__Group__3__Impl16266 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group__4__Impl_in_rule__ComposedStructureAssembly__Group__416297 = new BitSet(new long[]{0x0F00000000200000L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group__5_in_rule__ComposedStructureAssembly__Group__416300 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_4__0_in_rule__ComposedStructureAssembly__Group__4__Impl16327 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group__5__Impl_in_rule__ComposedStructureAssembly__Group__516358 = new BitSet(new long[]{0x0F00000000200000L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group__6_in_rule__ComposedStructureAssembly__Group__516361 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_5__0_in_rule__ComposedStructureAssembly__Group__5__Impl16388 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group__6__Impl_in_rule__ComposedStructureAssembly__Group__616419 = new BitSet(new long[]{0x0F00000000200000L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group__7_in_rule__ComposedStructureAssembly__Group__616422 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_6__0_in_rule__ComposedStructureAssembly__Group__6__Impl16449 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group__7__Impl_in_rule__ComposedStructureAssembly__Group__716480 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_21_in_rule__ComposedStructureAssembly__Group__7__Impl16508 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_3__0__Impl_in_rule__ComposedStructureAssembly__Group_3__016555 = new BitSet(new long[]{0x0000000000100000L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_3__1_in_rule__ComposedStructureAssembly__Group_3__016558 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_56_in_rule__ComposedStructureAssembly__Group_3__0__Impl16586 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_3__1__Impl_in_rule__ComposedStructureAssembly__Group_3__116617 = new BitSet(new long[]{0x1000000000000000L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_3__2_in_rule__ComposedStructureAssembly__Group_3__116620 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_20_in_rule__ComposedStructureAssembly__Group_3__1__Impl16648 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_3__2__Impl_in_rule__ComposedStructureAssembly__Group_3__216679 = new BitSet(new long[]{0x0000000000A00000L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_3__3_in_rule__ComposedStructureAssembly__Group_3__216682 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__AssemblyContextsAssignment_3_2_in_rule__ComposedStructureAssembly__Group_3__2__Impl16709 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_3__3__Impl_in_rule__ComposedStructureAssembly__Group_3__316739 = new BitSet(new long[]{0x0000000000A00000L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_3__4_in_rule__ComposedStructureAssembly__Group_3__316742 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_3_3__0_in_rule__ComposedStructureAssembly__Group_3__3__Impl16769 = new BitSet(new long[]{0x0000000000800002L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_3__4__Impl_in_rule__ComposedStructureAssembly__Group_3__416800 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_21_in_rule__ComposedStructureAssembly__Group_3__4__Impl16828 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_3_3__0__Impl_in_rule__ComposedStructureAssembly__Group_3_3__016869 = new BitSet(new long[]{0x1000000000000000L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_3_3__1_in_rule__ComposedStructureAssembly__Group_3_3__016872 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_23_in_rule__ComposedStructureAssembly__Group_3_3__0__Impl16900 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_3_3__1__Impl_in_rule__ComposedStructureAssembly__Group_3_3__116931 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__AssemblyContextsAssignment_3_3_1_in_rule__ComposedStructureAssembly__Group_3_3__1__Impl16958 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_4__0__Impl_in_rule__ComposedStructureAssembly__Group_4__016992 = new BitSet(new long[]{0x0000000000100000L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_4__1_in_rule__ComposedStructureAssembly__Group_4__016995 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_57_in_rule__ComposedStructureAssembly__Group_4__0__Impl17023 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_4__1__Impl_in_rule__ComposedStructureAssembly__Group_4__117054 = new BitSet(new long[]{0x4000000000000000L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_4__2_in_rule__ComposedStructureAssembly__Group_4__117057 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_20_in_rule__ComposedStructureAssembly__Group_4__1__Impl17085 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_4__2__Impl_in_rule__ComposedStructureAssembly__Group_4__217116 = new BitSet(new long[]{0x0000000000A00000L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_4__3_in_rule__ComposedStructureAssembly__Group_4__217119 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__AssemblyConnectorsAssignment_4_2_in_rule__ComposedStructureAssembly__Group_4__2__Impl17146 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_4__3__Impl_in_rule__ComposedStructureAssembly__Group_4__317176 = new BitSet(new long[]{0x0000000000A00000L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_4__4_in_rule__ComposedStructureAssembly__Group_4__317179 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_4_3__0_in_rule__ComposedStructureAssembly__Group_4__3__Impl17206 = new BitSet(new long[]{0x0000000000800002L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_4__4__Impl_in_rule__ComposedStructureAssembly__Group_4__417237 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_21_in_rule__ComposedStructureAssembly__Group_4__4__Impl17265 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_4_3__0__Impl_in_rule__ComposedStructureAssembly__Group_4_3__017306 = new BitSet(new long[]{0x4000000000000000L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_4_3__1_in_rule__ComposedStructureAssembly__Group_4_3__017309 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_23_in_rule__ComposedStructureAssembly__Group_4_3__0__Impl17337 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_4_3__1__Impl_in_rule__ComposedStructureAssembly__Group_4_3__117368 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__AssemblyConnectorsAssignment_4_3_1_in_rule__ComposedStructureAssembly__Group_4_3__1__Impl17395 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_5__0__Impl_in_rule__ComposedStructureAssembly__Group_5__017429 = new BitSet(new long[]{0x0000000000100000L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_5__1_in_rule__ComposedStructureAssembly__Group_5__017432 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_58_in_rule__ComposedStructureAssembly__Group_5__0__Impl17460 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_5__1__Impl_in_rule__ComposedStructureAssembly__Group_5__117491 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000008L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_5__2_in_rule__ComposedStructureAssembly__Group_5__117494 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_20_in_rule__ComposedStructureAssembly__Group_5__1__Impl17522 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_5__2__Impl_in_rule__ComposedStructureAssembly__Group_5__217553 = new BitSet(new long[]{0x0000000000A00000L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_5__3_in_rule__ComposedStructureAssembly__Group_5__217556 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__ProvidedDelegationConnectorsAssignment_5_2_in_rule__ComposedStructureAssembly__Group_5__2__Impl17583 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_5__3__Impl_in_rule__ComposedStructureAssembly__Group_5__317613 = new BitSet(new long[]{0x0000000000A00000L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_5__4_in_rule__ComposedStructureAssembly__Group_5__317616 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_5_3__0_in_rule__ComposedStructureAssembly__Group_5__3__Impl17643 = new BitSet(new long[]{0x0000000000800002L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_5__4__Impl_in_rule__ComposedStructureAssembly__Group_5__417674 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_21_in_rule__ComposedStructureAssembly__Group_5__4__Impl17702 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_5_3__0__Impl_in_rule__ComposedStructureAssembly__Group_5_3__017743 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000008L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_5_3__1_in_rule__ComposedStructureAssembly__Group_5_3__017746 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_23_in_rule__ComposedStructureAssembly__Group_5_3__0__Impl17774 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_5_3__1__Impl_in_rule__ComposedStructureAssembly__Group_5_3__117805 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__ProvidedDelegationConnectorsAssignment_5_3_1_in_rule__ComposedStructureAssembly__Group_5_3__1__Impl17832 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_6__0__Impl_in_rule__ComposedStructureAssembly__Group_6__017866 = new BitSet(new long[]{0x0000000000100000L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_6__1_in_rule__ComposedStructureAssembly__Group_6__017869 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_59_in_rule__ComposedStructureAssembly__Group_6__0__Impl17897 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_6__1__Impl_in_rule__ComposedStructureAssembly__Group_6__117928 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000080L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_6__2_in_rule__ComposedStructureAssembly__Group_6__117931 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_20_in_rule__ComposedStructureAssembly__Group_6__1__Impl17959 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_6__2__Impl_in_rule__ComposedStructureAssembly__Group_6__217990 = new BitSet(new long[]{0x0000000000A00000L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_6__3_in_rule__ComposedStructureAssembly__Group_6__217993 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__RequiredDelegationConnectorsAssignment_6_2_in_rule__ComposedStructureAssembly__Group_6__2__Impl18020 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_6__3__Impl_in_rule__ComposedStructureAssembly__Group_6__318050 = new BitSet(new long[]{0x0000000000A00000L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_6__4_in_rule__ComposedStructureAssembly__Group_6__318053 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_6_3__0_in_rule__ComposedStructureAssembly__Group_6__3__Impl18080 = new BitSet(new long[]{0x0000000000800002L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_6__4__Impl_in_rule__ComposedStructureAssembly__Group_6__418111 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_21_in_rule__ComposedStructureAssembly__Group_6__4__Impl18139 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_6_3__0__Impl_in_rule__ComposedStructureAssembly__Group_6_3__018180 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000080L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_6_3__1_in_rule__ComposedStructureAssembly__Group_6_3__018183 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_23_in_rule__ComposedStructureAssembly__Group_6_3__0__Impl18211 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_6_3__1__Impl_in_rule__ComposedStructureAssembly__Group_6_3__118242 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__RequiredDelegationConnectorsAssignment_6_3_1_in_rule__ComposedStructureAssembly__Group_6_3__1__Impl18269 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__AssemblyContext__Group__0__Impl_in_rule__AssemblyContext__Group__018303 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_rule__AssemblyContext__Group__1_in_rule__AssemblyContext__Group__018306 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_60_in_rule__AssemblyContext__Group__0__Impl18334 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__AssemblyContext__Group__1__Impl_in_rule__AssemblyContext__Group__118365 = new BitSet(new long[]{0x0000000000100000L});
-        public static final BitSet FOLLOW_rule__AssemblyContext__Group__2_in_rule__AssemblyContext__Group__118368 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__AssemblyContext__NameAssignment_1_in_rule__AssemblyContext__Group__1__Impl18395 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__AssemblyContext__Group__2__Impl_in_rule__AssemblyContext__Group__218425 = new BitSet(new long[]{0x2000000000000000L});
-        public static final BitSet FOLLOW_rule__AssemblyContext__Group__3_in_rule__AssemblyContext__Group__218428 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_20_in_rule__AssemblyContext__Group__2__Impl18456 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__AssemblyContext__Group__3__Impl_in_rule__AssemblyContext__Group__318487 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_rule__AssemblyContext__Group__4_in_rule__AssemblyContext__Group__318490 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_61_in_rule__AssemblyContext__Group__3__Impl18518 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__AssemblyContext__Group__4__Impl_in_rule__AssemblyContext__Group__418549 = new BitSet(new long[]{0x0000000000200000L});
-        public static final BitSet FOLLOW_rule__AssemblyContext__Group__5_in_rule__AssemblyContext__Group__418552 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__AssemblyContext__EncapsulatedComponentAssignment_4_in_rule__AssemblyContext__Group__4__Impl18579 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__AssemblyContext__Group__5__Impl_in_rule__AssemblyContext__Group__518609 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_21_in_rule__AssemblyContext__Group__5__Impl18637 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__AssemblyConnector__Group__0__Impl_in_rule__AssemblyConnector__Group__018680 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_rule__AssemblyConnector__Group__1_in_rule__AssemblyConnector__Group__018683 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_62_in_rule__AssemblyConnector__Group__0__Impl18711 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__AssemblyConnector__Group__1__Impl_in_rule__AssemblyConnector__Group__118742 = new BitSet(new long[]{0x0000000000100000L});
-        public static final BitSet FOLLOW_rule__AssemblyConnector__Group__2_in_rule__AssemblyConnector__Group__118745 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__AssemblyConnector__NameAssignment_1_in_rule__AssemblyConnector__Group__1__Impl18772 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__AssemblyConnector__Group__2__Impl_in_rule__AssemblyConnector__Group__218802 = new BitSet(new long[]{0x8000000000000000L});
-        public static final BitSet FOLLOW_rule__AssemblyConnector__Group__3_in_rule__AssemblyConnector__Group__218805 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_20_in_rule__AssemblyConnector__Group__2__Impl18833 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__AssemblyConnector__Group__3__Impl_in_rule__AssemblyConnector__Group__318864 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_rule__AssemblyConnector__Group__4_in_rule__AssemblyConnector__Group__318867 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_63_in_rule__AssemblyConnector__Group__3__Impl18895 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__AssemblyConnector__Group__4__Impl_in_rule__AssemblyConnector__Group__418926 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000001L});
-        public static final BitSet FOLLOW_rule__AssemblyConnector__Group__5_in_rule__AssemblyConnector__Group__418929 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__AssemblyConnector__RequiredRoleAssignment_4_in_rule__AssemblyConnector__Group__4__Impl18956 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__AssemblyConnector__Group__5__Impl_in_rule__AssemblyConnector__Group__518986 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_rule__AssemblyConnector__Group__6_in_rule__AssemblyConnector__Group__518989 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_64_in_rule__AssemblyConnector__Group__5__Impl19017 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__AssemblyConnector__Group__6__Impl_in_rule__AssemblyConnector__Group__619048 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__AssemblyConnector__Group__7_in_rule__AssemblyConnector__Group__619051 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__AssemblyConnector__ProvidedRoleAssignment_6_in_rule__AssemblyConnector__Group__6__Impl19078 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__AssemblyConnector__Group__7__Impl_in_rule__AssemblyConnector__Group__719108 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_rule__AssemblyConnector__Group__8_in_rule__AssemblyConnector__Group__719111 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_65_in_rule__AssemblyConnector__Group__7__Impl19139 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__AssemblyConnector__Group__8__Impl_in_rule__AssemblyConnector__Group__819170 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000004L});
-        public static final BitSet FOLLOW_rule__AssemblyConnector__Group__9_in_rule__AssemblyConnector__Group__819173 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__AssemblyConnector__ProvidingAssemblyContextAssignment_8_in_rule__AssemblyConnector__Group__8__Impl19200 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__AssemblyConnector__Group__9__Impl_in_rule__AssemblyConnector__Group__919230 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_rule__AssemblyConnector__Group__10_in_rule__AssemblyConnector__Group__919233 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_66_in_rule__AssemblyConnector__Group__9__Impl19261 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__AssemblyConnector__Group__10__Impl_in_rule__AssemblyConnector__Group__1019292 = new BitSet(new long[]{0x0000000000200000L});
-        public static final BitSet FOLLOW_rule__AssemblyConnector__Group__11_in_rule__AssemblyConnector__Group__1019295 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__AssemblyConnector__RequiringAssemblyContextAssignment_10_in_rule__AssemblyConnector__Group__10__Impl19322 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__AssemblyConnector__Group__11__Impl_in_rule__AssemblyConnector__Group__1119352 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_21_in_rule__AssemblyConnector__Group__11__Impl19380 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ProvidedDelegationConnector__Group__0__Impl_in_rule__ProvidedDelegationConnector__Group__019435 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_rule__ProvidedDelegationConnector__Group__1_in_rule__ProvidedDelegationConnector__Group__019438 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_67_in_rule__ProvidedDelegationConnector__Group__0__Impl19466 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ProvidedDelegationConnector__Group__1__Impl_in_rule__ProvidedDelegationConnector__Group__119497 = new BitSet(new long[]{0x0000000000100000L});
-        public static final BitSet FOLLOW_rule__ProvidedDelegationConnector__Group__2_in_rule__ProvidedDelegationConnector__Group__119500 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ProvidedDelegationConnector__NameAssignment_1_in_rule__ProvidedDelegationConnector__Group__1__Impl19527 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ProvidedDelegationConnector__Group__2__Impl_in_rule__ProvidedDelegationConnector__Group__219557 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000010L});
-        public static final BitSet FOLLOW_rule__ProvidedDelegationConnector__Group__3_in_rule__ProvidedDelegationConnector__Group__219560 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_20_in_rule__ProvidedDelegationConnector__Group__2__Impl19588 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ProvidedDelegationConnector__Group__3__Impl_in_rule__ProvidedDelegationConnector__Group__319619 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_rule__ProvidedDelegationConnector__Group__4_in_rule__ProvidedDelegationConnector__Group__319622 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_68_in_rule__ProvidedDelegationConnector__Group__3__Impl19650 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ProvidedDelegationConnector__Group__4__Impl_in_rule__ProvidedDelegationConnector__Group__419681 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000020L});
-        public static final BitSet FOLLOW_rule__ProvidedDelegationConnector__Group__5_in_rule__ProvidedDelegationConnector__Group__419684 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ProvidedDelegationConnector__AssemblyContextAssignment_4_in_rule__ProvidedDelegationConnector__Group__4__Impl19711 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ProvidedDelegationConnector__Group__5__Impl_in_rule__ProvidedDelegationConnector__Group__519741 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_rule__ProvidedDelegationConnector__Group__6_in_rule__ProvidedDelegationConnector__Group__519744 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_69_in_rule__ProvidedDelegationConnector__Group__5__Impl19772 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ProvidedDelegationConnector__Group__6__Impl_in_rule__ProvidedDelegationConnector__Group__619803 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000040L});
-        public static final BitSet FOLLOW_rule__ProvidedDelegationConnector__Group__7_in_rule__ProvidedDelegationConnector__Group__619806 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ProvidedDelegationConnector__InnerProvidedRoleAssignment_6_in_rule__ProvidedDelegationConnector__Group__6__Impl19833 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ProvidedDelegationConnector__Group__7__Impl_in_rule__ProvidedDelegationConnector__Group__719863 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_rule__ProvidedDelegationConnector__Group__8_in_rule__ProvidedDelegationConnector__Group__719866 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_70_in_rule__ProvidedDelegationConnector__Group__7__Impl19894 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ProvidedDelegationConnector__Group__8__Impl_in_rule__ProvidedDelegationConnector__Group__819925 = new BitSet(new long[]{0x0000000000200000L});
-        public static final BitSet FOLLOW_rule__ProvidedDelegationConnector__Group__9_in_rule__ProvidedDelegationConnector__Group__819928 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ProvidedDelegationConnector__OuterProvidedRoleAssignment_8_in_rule__ProvidedDelegationConnector__Group__8__Impl19955 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ProvidedDelegationConnector__Group__9__Impl_in_rule__ProvidedDelegationConnector__Group__919985 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_21_in_rule__ProvidedDelegationConnector__Group__9__Impl20013 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RequiredDelegationConnector__Group__0__Impl_in_rule__RequiredDelegationConnector__Group__020064 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_rule__RequiredDelegationConnector__Group__1_in_rule__RequiredDelegationConnector__Group__020067 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_71_in_rule__RequiredDelegationConnector__Group__0__Impl20095 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RequiredDelegationConnector__Group__1__Impl_in_rule__RequiredDelegationConnector__Group__120126 = new BitSet(new long[]{0x0000000000100000L});
-        public static final BitSet FOLLOW_rule__RequiredDelegationConnector__Group__2_in_rule__RequiredDelegationConnector__Group__120129 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RequiredDelegationConnector__NameAssignment_1_in_rule__RequiredDelegationConnector__Group__1__Impl20156 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RequiredDelegationConnector__Group__2__Impl_in_rule__RequiredDelegationConnector__Group__220186 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000010L});
-        public static final BitSet FOLLOW_rule__RequiredDelegationConnector__Group__3_in_rule__RequiredDelegationConnector__Group__220189 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_20_in_rule__RequiredDelegationConnector__Group__2__Impl20217 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RequiredDelegationConnector__Group__3__Impl_in_rule__RequiredDelegationConnector__Group__320248 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_rule__RequiredDelegationConnector__Group__4_in_rule__RequiredDelegationConnector__Group__320251 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_68_in_rule__RequiredDelegationConnector__Group__3__Impl20279 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RequiredDelegationConnector__Group__4__Impl_in_rule__RequiredDelegationConnector__Group__420310 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000100L});
-        public static final BitSet FOLLOW_rule__RequiredDelegationConnector__Group__5_in_rule__RequiredDelegationConnector__Group__420313 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RequiredDelegationConnector__AssemblyContextAssignment_4_in_rule__RequiredDelegationConnector__Group__4__Impl20340 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RequiredDelegationConnector__Group__5__Impl_in_rule__RequiredDelegationConnector__Group__520370 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_rule__RequiredDelegationConnector__Group__6_in_rule__RequiredDelegationConnector__Group__520373 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_72_in_rule__RequiredDelegationConnector__Group__5__Impl20401 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RequiredDelegationConnector__Group__6__Impl_in_rule__RequiredDelegationConnector__Group__620432 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000200L});
-        public static final BitSet FOLLOW_rule__RequiredDelegationConnector__Group__7_in_rule__RequiredDelegationConnector__Group__620435 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RequiredDelegationConnector__InnerRequiredRoleAssignment_6_in_rule__RequiredDelegationConnector__Group__6__Impl20462 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RequiredDelegationConnector__Group__7__Impl_in_rule__RequiredDelegationConnector__Group__720492 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_rule__RequiredDelegationConnector__Group__8_in_rule__RequiredDelegationConnector__Group__720495 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_73_in_rule__RequiredDelegationConnector__Group__7__Impl20523 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RequiredDelegationConnector__Group__8__Impl_in_rule__RequiredDelegationConnector__Group__820554 = new BitSet(new long[]{0x0000000000200000L});
-        public static final BitSet FOLLOW_rule__RequiredDelegationConnector__Group__9_in_rule__RequiredDelegationConnector__Group__820557 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RequiredDelegationConnector__OuterRequiredRoleAssignment_8_in_rule__RequiredDelegationConnector__Group__8__Impl20584 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RequiredDelegationConnector__Group__9__Impl_in_rule__RequiredDelegationConnector__Group__920614 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_21_in_rule__RequiredDelegationConnector__Group__9__Impl20642 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleQualifiedName_in_rule__Repository__NameAssignment_120698 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleImport_in_rule__Repository__ImportsAssignment_3_220729 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleImport_in_rule__Repository__ImportsAssignment_3_3_120760 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleDataType_in_rule__Repository__DatatypesAssignment_4_220791 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleDataType_in_rule__Repository__DatatypesAssignment_4_3_120822 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleRepositoryComponent_in_rule__Repository__ComponentsAssignment_5_220853 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleRepositoryComponent_in_rule__Repository__ComponentsAssignment_5_3_120884 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleInterface_in_rule__Repository__InterfacesAssignment_6_220915 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleInterface_in_rule__Repository__InterfacesAssignment_6_3_120946 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleQualifiedNameWithWildCard_in_rule__Import__ImportedNamespaceAssignment_120977 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleEString_in_rule__Interface__NameAssignment_121008 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleEString_in_rule__Interface__ParentInterfacesAssignment_3_221043 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleEString_in_rule__Interface__ParentInterfacesAssignment_3_3_121082 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleSignature_in_rule__Interface__SignaturesAssignment_4_021117 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleSignature_in_rule__Interface__SignaturesAssignment_4_1_121148 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleEString_in_rule__RepositoryComponent_Impl__NameAssignment_121179 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleEString_in_rule__RepositoryComponent_Impl__RelationshipAssignment_3_221214 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleEString_in_rule__RepositoryComponent_Impl__RelationshipAssignment_3_3_121253 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleProvidedRole_in_rule__RepositoryComponent_Impl__ProvidedRolesAssignment_4_221288 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleProvidedRole_in_rule__RepositoryComponent_Impl__ProvidedRolesAssignment_4_3_121319 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleRequiredRole_in_rule__RepositoryComponent_Impl__RequiredRolesAssignment_5_221350 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleRequiredRole_in_rule__RepositoryComponent_Impl__RequiredRolesAssignment_5_3_121381 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleEString_in_rule__CollectionDataType__NameAssignment_121412 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleEString_in_rule__CollectionDataType__InnerTypeAssignment_421447 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleEString_in_rule__CompositeDataType__NameAssignment_121482 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleEString_in_rule__CompositeDataType__ParentTypesAssignment_3_221517 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleEString_in_rule__CompositeDataType__ParentTypesAssignment_3_3_121556 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleInnerDeclaration_in_rule__CompositeDataType__InnerDeclarationsAssignment_4_221591 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleInnerDeclaration_in_rule__CompositeDataType__InnerDeclarationsAssignment_4_3_121622 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rulePrimitiveTypeEnum_in_rule__PrimitiveDataType__TypeAssignment_321653 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleEString_in_rule__PrimitiveDataType__NameAssignment_521684 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleEString_in_rule__InnerDeclaration__NameAssignment_121715 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleEString_in_rule__InnerDeclaration__DataTypeAssignment_421750 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleEString_in_rule__Signature__ReturnTypeAssignment_0_021789 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleEString_in_rule__Signature__NameAssignment_121824 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleParameter_in_rule__Signature__ParametersAssignment_3_021855 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleParameter_in_rule__Signature__ParametersAssignment_3_1_121886 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleEString_in_rule__Parameter__DataTypeAssignment_021921 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleEString_in_rule__Parameter__NameAssignment_121956 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleEString_in_rule__ProvidedRole__InterfaceAssignment_121991 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleEString_in_rule__RequiredRole__InterfaceAssignment_122030 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleEString_in_rule__BasicComponent__NameAssignment_122065 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleProvidedRole_in_rule__BasicComponent__ProvidedRolesAssignment_2_022096 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleProvidedRole_in_rule__BasicComponent__ProvidedRolesAssignment_2_1_122127 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleRequiredRole_in_rule__BasicComponent__RequiredRolesAssignment_3_022158 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleRequiredRole_in_rule__BasicComponent__RequiredRolesAssignment_3_1_122189 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleEString_in_rule__BasicComponent__RelationshipAssignment_5_222224 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleEString_in_rule__BasicComponent__RelationshipAssignment_5_3_122263 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleEString_in_rule__CompositeComponent__NameAssignment_122298 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleProvidedRole_in_rule__CompositeComponent__ProvidedRolesAssignment_2_022329 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleProvidedRole_in_rule__CompositeComponent__ProvidedRolesAssignment_2_1_122360 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleRequiredRole_in_rule__CompositeComponent__RequiredRolesAssignment_3_022391 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleRequiredRole_in_rule__CompositeComponent__RequiredRolesAssignment_3_1_122422 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleEString_in_rule__CompositeComponent__RelationshipAssignment_5_222457 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleEString_in_rule__CompositeComponent__RelationshipAssignment_5_3_122496 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleComposedStructureAssembly_in_rule__CompositeComponent__AssemblyAssignment_6_122531 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleEString_in_rule__SubSystem__NameAssignment_122562 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleProvidedRole_in_rule__SubSystem__ProvidedRolesAssignment_2_222593 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleProvidedRole_in_rule__SubSystem__ProvidedRolesAssignment_2_3_122624 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleRequiredRole_in_rule__SubSystem__RequiredRolesAssignment_3_222655 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleRequiredRole_in_rule__SubSystem__RequiredRolesAssignment_3_3_122686 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleEString_in_rule__SubSystem__RelationshipAssignment_5_222721 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleEString_in_rule__SubSystem__RelationshipAssignment_5_3_122760 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleComposedStructureAssembly_in_rule__SubSystem__AssemblyAssignment_6_122795 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleAssemblyContext_in_rule__ComposedStructureAssembly__AssemblyContextsAssignment_3_222826 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleAssemblyContext_in_rule__ComposedStructureAssembly__AssemblyContextsAssignment_3_3_122857 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleAssemblyConnector_in_rule__ComposedStructureAssembly__AssemblyConnectorsAssignment_4_222888 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleAssemblyConnector_in_rule__ComposedStructureAssembly__AssemblyConnectorsAssignment_4_3_122919 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleProvidedDelegationConnector_in_rule__ComposedStructureAssembly__ProvidedDelegationConnectorsAssignment_5_222950 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleProvidedDelegationConnector_in_rule__ComposedStructureAssembly__ProvidedDelegationConnectorsAssignment_5_3_122981 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleRequiredDelegationConnector_in_rule__ComposedStructureAssembly__RequiredDelegationConnectorsAssignment_6_223012 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleRequiredDelegationConnector_in_rule__ComposedStructureAssembly__RequiredDelegationConnectorsAssignment_6_3_123043 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleEString_in_rule__AssemblyContext__NameAssignment_123074 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleEString_in_rule__AssemblyContext__EncapsulatedComponentAssignment_423109 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleEString_in_rule__AssemblyConnector__NameAssignment_123144 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleEString_in_rule__AssemblyConnector__RequiredRoleAssignment_423179 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleEString_in_rule__AssemblyConnector__ProvidedRoleAssignment_623218 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleEString_in_rule__AssemblyConnector__ProvidingAssemblyContextAssignment_823257 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleEString_in_rule__AssemblyConnector__RequiringAssemblyContextAssignment_1023296 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleEString_in_rule__ProvidedDelegationConnector__NameAssignment_123331 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleEString_in_rule__ProvidedDelegationConnector__AssemblyContextAssignment_423366 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleEString_in_rule__ProvidedDelegationConnector__InnerProvidedRoleAssignment_623405 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleEString_in_rule__ProvidedDelegationConnector__OuterProvidedRoleAssignment_823444 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleEString_in_rule__RequiredDelegationConnector__NameAssignment_123479 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleEString_in_rule__RequiredDelegationConnector__AssemblyContextAssignment_423514 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleEString_in_rule__RequiredDelegationConnector__InnerRequiredRoleAssignment_623553 = new BitSet(new long[]{0x0000000000000002L});
-    }
-
-    private static class FollowSets001 {
-        public static final BitSet FOLLOW_ruleEString_in_rule__RequiredDelegationConnector__OuterRequiredRoleAssignment_823592 = new BitSet(new long[]{0x0000000000000002L});
-    }
-
-
-}
\ No newline at end of file
diff --git a/org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/internal/MyDslTestActivator.java b/org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/internal/MyDslTestActivator.java
deleted file mode 100644
index 690ff3e9..00000000
--- a/org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/internal/MyDslTestActivator.java
+++ /dev/null
@@ -1,95 +0,0 @@
-/*
- * generated by Xtext
- */
-package org.xtext.example.mydsl.ui.internal;
-
-import java.util.Collections;
-import java.util.Map;
-
-import org.apache.log4j.Logger;
-import org.eclipse.ui.plugin.AbstractUIPlugin;
-import org.eclipse.xtext.ui.shared.SharedStateModule;
-import org.eclipse.xtext.util.Modules2;
-import org.osgi.framework.BundleContext;
-
-import com.google.common.collect.Maps;
-import com.google.inject.Guice;
-import com.google.inject.Injector;
-import com.google.inject.Module;
-
-/**
- * This class was generated. Customizations should only happen in a newly
- * introduced subclass. 
- */
-public class MyDslTestActivator extends AbstractUIPlugin {
-	
-	public static final String ORG_XTEXT_EXAMPLE_MYDSL_MYDSLTEST = "org.xtext.example.mydsl.MyDslTest";
-	
-	private static final Logger logger = Logger.getLogger(MyDslTestActivator.class);
-	
-	private static MyDslTestActivator INSTANCE;
-	
-	private Map<String, Injector> injectors = Collections.synchronizedMap(Maps.<String, Injector> newHashMapWithExpectedSize(1));
-	
-	@Override
-	public void start(BundleContext context) throws Exception {
-		super.start(context);
-		INSTANCE = this;
-	}
-	
-	@Override
-	public void stop(BundleContext context) throws Exception {
-		injectors.clear();
-		INSTANCE = null;
-		super.stop(context);
-	}
-	
-	public static MyDslTestActivator getInstance() {
-		return INSTANCE;
-	}
-	
-	public Injector getInjector(String language) {
-		synchronized (injectors) {
-			Injector injector = injectors.get(language);
-			if (injector == null) {
-				injectors.put(language, injector = createInjector(language));
-			}
-			return injector;
-		}
-	}
-	
-	protected Injector createInjector(String language) {
-		try {
-			Module runtimeModule = getRuntimeModule(language);
-			Module sharedStateModule = getSharedStateModule();
-			Module uiModule = getUiModule(language);
-			Module mergedModule = Modules2.mixin(runtimeModule, sharedStateModule, uiModule);
-			return Guice.createInjector(mergedModule);
-		} catch (Exception e) {
-			logger.error("Failed to create injector for " + language);
-			logger.error(e.getMessage(), e);
-			throw new RuntimeException("Failed to create injector for " + language, e);
-		}
-	}
-
-	protected Module getRuntimeModule(String grammar) {
-		if (ORG_XTEXT_EXAMPLE_MYDSL_MYDSLTEST.equals(grammar)) {
-			return new org.xtext.example.mydsl.MyDslTestRuntimeModule();
-		}
-		
-		throw new IllegalArgumentException(grammar);
-	}
-	
-	protected Module getUiModule(String grammar) {
-		if (ORG_XTEXT_EXAMPLE_MYDSL_MYDSLTEST.equals(grammar)) {
-			return new org.xtext.example.mydsl.ui.MyDslTestUiModule(this);
-		}
-		
-		throw new IllegalArgumentException(grammar);
-	}
-	
-	protected Module getSharedStateModule() {
-		return new SharedStateModule();
-	}
-	
-}
diff --git a/org.xtext.example.mydslTest.ui/src/org/xtext/example/mydsl/ui/MyDslTestUiModule.java b/org.xtext.example.mydslTest.ui/src/org/xtext/example/mydsl/ui/MyDslTestUiModule.java
deleted file mode 100644
index 762308c1..00000000
--- a/org.xtext.example.mydslTest.ui/src/org/xtext/example/mydsl/ui/MyDslTestUiModule.java
+++ /dev/null
@@ -1,15 +0,0 @@
-/*
- * generated by Xtext
- */
-package org.xtext.example.mydsl.ui;
-
-import org.eclipse.ui.plugin.AbstractUIPlugin;
-
-/**
- * Use this class to register components to be used within the IDE.
- */
-public class MyDslTestUiModule extends org.xtext.example.mydsl.ui.AbstractMyDslTestUiModule {
-	public MyDslTestUiModule(AbstractUIPlugin plugin) {
-		super(plugin);
-	}
-}
diff --git a/org.xtext.example.mydslTest.ui/src/org/xtext/example/mydsl/ui/contentassist/MyDslTestProposalProvider.java b/org.xtext.example.mydslTest.ui/src/org/xtext/example/mydsl/ui/contentassist/MyDslTestProposalProvider.java
deleted file mode 100644
index 37415004..00000000
--- a/org.xtext.example.mydslTest.ui/src/org/xtext/example/mydsl/ui/contentassist/MyDslTestProposalProvider.java
+++ /dev/null
@@ -1,12 +0,0 @@
-/*
-* generated by Xtext
-*/
-package org.xtext.example.mydsl.ui.contentassist;
-
-import org.xtext.example.mydsl.ui.contentassist.AbstractMyDslTestProposalProvider;
-/**
- * see http://www.eclipse.org/Xtext/documentation/latest/xtext.html#contentAssist on how to customize content assistant
- */
-public class MyDslTestProposalProvider extends AbstractMyDslTestProposalProvider {
-
-}
diff --git a/org.xtext.example.mydslTest.ui/src/org/xtext/example/mydsl/ui/labeling/MyDslTestDescriptionLabelProvider.java b/org.xtext.example.mydslTest.ui/src/org/xtext/example/mydsl/ui/labeling/MyDslTestDescriptionLabelProvider.java
deleted file mode 100644
index b6963822..00000000
--- a/org.xtext.example.mydslTest.ui/src/org/xtext/example/mydsl/ui/labeling/MyDslTestDescriptionLabelProvider.java
+++ /dev/null
@@ -1,27 +0,0 @@
-/*
-* generated by Xtext
-*/
-package org.xtext.example.mydsl.ui.labeling;
-
-import org.eclipse.xtext.ui.label.DefaultDescriptionLabelProvider;
-
-/**
- * Provides labels for a IEObjectDescriptions and IResourceDescriptions.
- * 
- * see http://www.eclipse.org/Xtext/documentation/latest/xtext.html#labelProvider
- */
-public class MyDslTestDescriptionLabelProvider extends DefaultDescriptionLabelProvider {
-
-/*
-	//Labels and icons can be computed like this:
-	
-	String text(IEObjectDescription ele) {
-	  return "my "+ele.getName();
-	}
-	 
-    String image(IEObjectDescription ele) {
-      return ele.getEClass().getName() + ".gif";
-    }	 
-*/
-
-}
diff --git a/org.xtext.example.mydslTest.ui/src/org/xtext/example/mydsl/ui/labeling/MyDslTestLabelProvider.java b/org.xtext.example.mydslTest.ui/src/org/xtext/example/mydsl/ui/labeling/MyDslTestLabelProvider.java
deleted file mode 100644
index 4f7cf9d5..00000000
--- a/org.xtext.example.mydslTest.ui/src/org/xtext/example/mydsl/ui/labeling/MyDslTestLabelProvider.java
+++ /dev/null
@@ -1,34 +0,0 @@
-/*
-* generated by Xtext
-*/
-package org.xtext.example.mydsl.ui.labeling;
-
-import org.eclipse.emf.edit.ui.provider.AdapterFactoryLabelProvider;
-import org.eclipse.xtext.ui.label.DefaultEObjectLabelProvider;
-
-import com.google.inject.Inject;
-
-/**
- * Provides labels for a EObjects.
- * 
- * see http://www.eclipse.org/Xtext/documentation/latest/xtext.html#labelProvider
- */
-public class MyDslTestLabelProvider extends DefaultEObjectLabelProvider {
-
-	@Inject
-	public MyDslTestLabelProvider(AdapterFactoryLabelProvider delegate) {
-		super(delegate);
-	}
-
-/*
-	//Labels and icons can be computed like this:
-	
-	String text(MyModel ele) {
-	  return "my "+ele.getName();
-	}
-	 
-    String image(MyModel ele) {
-      return "MyModel.gif";
-    }
-*/
-}
diff --git a/org.xtext.example.mydslTest.ui/src/org/xtext/example/mydsl/ui/outline/MyDslTestOutlineTreeProvider.java b/org.xtext.example.mydslTest.ui/src/org/xtext/example/mydsl/ui/outline/MyDslTestOutlineTreeProvider.java
deleted file mode 100644
index 3d0898e4..00000000
--- a/org.xtext.example.mydslTest.ui/src/org/xtext/example/mydsl/ui/outline/MyDslTestOutlineTreeProvider.java
+++ /dev/null
@@ -1,14 +0,0 @@
-/*
-* generated by Xtext
-*/
-package org.xtext.example.mydsl.ui.outline;
-
-import org.eclipse.xtext.ui.editor.outline.impl.DefaultOutlineTreeProvider;
-
-/**
- * customization of the default outline structure
- * 
- */
-public class MyDslTestOutlineTreeProvider extends DefaultOutlineTreeProvider {
-	
-}
diff --git a/org.xtext.example.mydslTest.ui/src/org/xtext/example/mydsl/ui/quickfix/MyDslTestQuickfixProvider.java b/org.xtext.example.mydslTest.ui/src/org/xtext/example/mydsl/ui/quickfix/MyDslTestQuickfixProvider.java
deleted file mode 100644
index 8605e500..00000000
--- a/org.xtext.example.mydslTest.ui/src/org/xtext/example/mydsl/ui/quickfix/MyDslTestQuickfixProvider.java
+++ /dev/null
@@ -1,19 +0,0 @@
-
-package org.xtext.example.mydsl.ui.quickfix;
-
-import org.eclipse.xtext.ui.editor.quickfix.DefaultQuickfixProvider;
-
-public class MyDslTestQuickfixProvider extends DefaultQuickfixProvider {
-
-//	@Fix(MyJavaValidator.INVALID_NAME)
-//	public void capitalizeName(final Issue issue, IssueResolutionAcceptor acceptor) {
-//		acceptor.accept(issue, "Capitalize name", "Capitalize the name.", "upcase.png", new IModification() {
-//			public void apply(IModificationContext context) throws BadLocationException {
-//				IXtextDocument xtextDocument = context.getXtextDocument();
-//				String firstLetter = xtextDocument.get(issue.getOffset(), 1);
-//				xtextDocument.replace(issue.getOffset(), 1, firstLetter.toUpperCase());
-//			}
-//		});
-//	}
-
-}
diff --git a/org.xtext.example.mydslTest/.classpath b/org.xtext.example.mydslTest/.classpath
deleted file mode 100644
index 3f1be502..00000000
--- a/org.xtext.example.mydslTest/.classpath
+++ /dev/null
@@ -1,9 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
-	<classpathentry kind="src" path="src"/>
-	<classpathentry kind="src" path="src-gen"/>
-	<classpathentry kind="src" path="xtend-gen"/>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/>
-	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
-	<classpathentry kind="output" path="bin"/>
-</classpath>
diff --git a/org.xtext.example.mydslTest/.project b/org.xtext.example.mydslTest/.project
deleted file mode 100644
index 18f9543b..00000000
--- a/org.xtext.example.mydslTest/.project
+++ /dev/null
@@ -1,34 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
-	<name>org.xtext.example.mydslTest</name>
-	<comment></comment>
-	<projects>
-	</projects>
-	<buildSpec>
-		<buildCommand>
-			<name>org.eclipse.jdt.core.javabuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-		<buildCommand>
-			<name>org.eclipse.pde.ManifestBuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-		<buildCommand>
-			<name>org.eclipse.pde.SchemaBuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-		<buildCommand>
-			<name>org.eclipse.xtext.ui.shared.xtextBuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-	</buildSpec>
-	<natures>
-		<nature>org.eclipse.jdt.core.javanature</nature>
-		<nature>org.eclipse.pde.PluginNature</nature>
-		<nature>org.eclipse.xtext.ui.shared.xtextNature</nature>
-	</natures>
-</projectDescription>
diff --git a/org.xtext.example.mydslTest/META-INF/MANIFEST.MF b/org.xtext.example.mydslTest/META-INF/MANIFEST.MF
deleted file mode 100644
index 4072b055..00000000
--- a/org.xtext.example.mydslTest/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,29 +0,0 @@
-Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: org.xtext.example.mydslTest
-Bundle-Vendor: My Company
-Bundle-Version: 1.0.0
-Bundle-SymbolicName: org.xtext.example.mydslTest; singleton:=true
-Bundle-ActivationPolicy: lazy
-Require-Bundle: org.eclipse.xtext;bundle-version="2.1.0";visibility:=reexport,
- org.eclipse.xtext.xbase;bundle-version="2.1.0";resolution:=optional;visibility:=reexport,
- org.apache.log4j;bundle-version="1.2.15";visibility:=reexport,
- org.apache.commons.logging;bundle-version="1.0.4";resolution:=optional;visibility:=reexport,
- org.eclipse.xtext.generator;resolution:=optional,
- org.eclipse.emf.codegen.ecore;resolution:=optional,
- org.eclipse.emf.mwe.utils;resolution:=optional,
- org.eclipse.emf.mwe2.launch;resolution:=optional,
- edu.kit.ipd.descartes.mm,
- org.eclipse.xtext.util,
- org.antlr.runtime
-Import-Package: org.apache.log4j,
- org.apache.commons.logging
-Bundle-RequiredExecutionEnvironment: J2SE-1.5
-Export-Package: org.xtext.example.mydsl,
- org.xtext.example.mydsl.services,
- org.xtext.example.mydsl.parseTreeConstruction,
- org.xtext.example.mydsl.parser.antlr,
- org.xtext.example.mydsl.parser.antlr.internal,
- org.xtext.example.mydsl.validation,
- org.xtext.example.mydsl.scoping,
- org.xtext.example.mydsl.formatting
diff --git a/org.xtext.example.mydslTest/build.properties b/org.xtext.example.mydslTest/build.properties
deleted file mode 100644
index 31255ed0..00000000
--- a/org.xtext.example.mydslTest/build.properties
+++ /dev/null
@@ -1,6 +0,0 @@
-source.. = src/,\
-          src-gen/,\
-          xtend-gen/
-bin.includes = META-INF/,\
-               .,\
-               plugin.xml
\ No newline at end of file
diff --git a/org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/AbstractMyDslTestRuntimeModule.java b/org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/AbstractMyDslTestRuntimeModule.java
deleted file mode 100644
index 5d959cd2..00000000
--- a/org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/AbstractMyDslTestRuntimeModule.java
+++ /dev/null
@@ -1,147 +0,0 @@
-/*
- * generated by Xtext
- */
-package org.xtext.example.mydsl;
-
-import java.util.Properties;
-
-import org.eclipse.xtext.Constants;
-import org.eclipse.xtext.service.DefaultRuntimeModule;
-
-import com.google.inject.Binder;
-import com.google.inject.name.Names;
-
-/**
- * Manual modifications go to {org.xtext.example.mydsl.MyDslTestRuntimeModule}
- */
- @SuppressWarnings("all")
-public abstract class AbstractMyDslTestRuntimeModule extends DefaultRuntimeModule {
-
-	protected Properties properties = null;
-
-	@Override
-	public void configure(Binder binder) {
-		properties = tryBindProperties(binder, "org/xtext/example/mydsl/MyDslTest.properties");
-		super.configure(binder);
-	}
-	
-	public void configureLanguageName(Binder binder) {
-		binder.bind(String.class).annotatedWith(Names.named(Constants.LANGUAGE_NAME)).toInstance("org.xtext.example.mydsl.MyDslTest");
-	}
-	
-	public void configureFileExtensions(Binder binder) {
-		if (properties == null || properties.getProperty(Constants.FILE_EXTENSIONS) == null)
-			binder.bind(String.class).annotatedWith(Names.named(Constants.FILE_EXTENSIONS)).toInstance("mydslTest");
-	}
-	
-	// contributed by org.eclipse.xtext.generator.grammarAccess.GrammarAccessFragment
-	public java.lang.ClassLoader bindClassLoaderToInstance() {
-		return getClass().getClassLoader();
-	}
-
-	// contributed by org.eclipse.xtext.generator.grammarAccess.GrammarAccessFragment
-	public Class<? extends org.eclipse.xtext.IGrammarAccess> bindIGrammarAccess() {
-		return org.xtext.example.mydsl.services.MyDslTestGrammarAccess.class;
-	}
-
-	// contributed by org.eclipse.xtext.generator.parseTreeConstructor.ParseTreeConstructorFragment
-	public Class<? extends org.eclipse.xtext.parsetree.reconstr.IParseTreeConstructor> bindIParseTreeConstructor() {
-		return org.xtext.example.mydsl.parseTreeConstruction.MyDslTestParsetreeConstructor.class;
-	}
-
-	// contributed by org.eclipse.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment
-	public Class<? extends org.eclipse.xtext.parser.IParser> bindIParser() {
-		return org.xtext.example.mydsl.parser.antlr.MyDslTestParser.class;
-	}
-
-	// contributed by org.eclipse.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment
-	public Class<? extends org.eclipse.xtext.parser.ITokenToStringConverter> bindITokenToStringConverter() {
-		return org.eclipse.xtext.parser.antlr.AntlrTokenToStringConverter.class;
-	}
-
-	// contributed by org.eclipse.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment
-	public Class<? extends org.eclipse.xtext.parser.antlr.IAntlrTokenFileProvider> bindIAntlrTokenFileProvider() {
-		return org.xtext.example.mydsl.parser.antlr.MyDslTestAntlrTokenFileProvider.class;
-	}
-
-	// contributed by org.eclipse.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment
-	public Class<? extends org.eclipse.xtext.parser.antlr.Lexer> bindLexer() {
-		return org.xtext.example.mydsl.parser.antlr.internal.InternalMyDslTestLexer.class;
-	}
-
-	// contributed by org.eclipse.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment
-	public com.google.inject.Provider<org.xtext.example.mydsl.parser.antlr.internal.InternalMyDslTestLexer> provideInternalMyDslTestLexer() {
-		return org.eclipse.xtext.parser.antlr.LexerProvider.create(org.xtext.example.mydsl.parser.antlr.internal.InternalMyDslTestLexer.class);
-	}
-
-	// contributed by org.eclipse.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment
-	public void configureRuntimeLexer(com.google.inject.Binder binder) {
-		binder.bind(org.eclipse.xtext.parser.antlr.Lexer.class).annotatedWith(com.google.inject.name.Names.named(org.eclipse.xtext.parser.antlr.LexerBindings.RUNTIME)).to(org.xtext.example.mydsl.parser.antlr.internal.InternalMyDslTestLexer.class);
-	}
-
-	// contributed by org.eclipse.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment
-	public Class<? extends org.eclipse.xtext.parser.antlr.ITokenDefProvider> bindITokenDefProvider() {
-		return org.eclipse.xtext.parser.antlr.AntlrTokenDefProvider.class;
-	}
-
-	// contributed by org.eclipse.xtext.generator.ecore2xtext.Ecore2XtextValueConverterServiceFragment
-	public Class<? extends org.eclipse.xtext.conversion.IValueConverterService> bindIValueConverterService() {
-		return org.eclipse.xtext.common.services.Ecore2XtextTerminalConverters.class;
-	}
-
-	// contributed by org.eclipse.xtext.generator.validation.JavaValidatorFragment
-	@org.eclipse.xtext.service.SingletonBinding(eager=true)	public Class<? extends org.xtext.example.mydsl.validation.MyDslTestJavaValidator> bindMyDslTestJavaValidator() {
-		return org.xtext.example.mydsl.validation.MyDslTestJavaValidator.class;
-	}
-
-	// contributed by org.eclipse.xtext.generator.scoping.AbstractScopingFragment
-	public Class<? extends org.eclipse.xtext.scoping.IScopeProvider> bindIScopeProvider() {
-		return org.xtext.example.mydsl.scoping.MyDslTestScopeProvider.class;
-	}
-
-	// contributed by org.eclipse.xtext.generator.scoping.AbstractScopingFragment
-	public void configureIScopeProviderDelegate(com.google.inject.Binder binder) {
-		binder.bind(org.eclipse.xtext.scoping.IScopeProvider.class).annotatedWith(com.google.inject.name.Names.named(org.eclipse.xtext.scoping.impl.AbstractDeclarativeScopeProvider.NAMED_DELEGATE)).to(org.eclipse.xtext.scoping.impl.ImportedNamespaceAwareLocalScopeProvider.class);
-	}
-
-	// contributed by org.eclipse.xtext.generator.scoping.AbstractScopingFragment
-	public Class<? extends org.eclipse.xtext.scoping.IGlobalScopeProvider> bindIGlobalScopeProvider() {
-		return org.eclipse.xtext.scoping.impl.DefaultGlobalScopeProvider.class;
-	}
-
-	// contributed by org.eclipse.xtext.generator.scoping.AbstractScopingFragment
-	public void configureIgnoreCaseLinking(com.google.inject.Binder binder) {
-		binder.bindConstant().annotatedWith(org.eclipse.xtext.scoping.IgnoreCaseLinking.class).to(false);
-	}
-
-	// contributed by org.eclipse.xtext.generator.exporting.QualifiedNamesFragment
-	public Class<? extends org.eclipse.xtext.naming.IQualifiedNameProvider> bindIQualifiedNameProvider() {
-		return org.eclipse.xtext.naming.DefaultDeclarativeQualifiedNameProvider.class;
-	}
-
-	// contributed by org.eclipse.xtext.generator.formatting.FormatterFragment
-	public Class<? extends org.eclipse.xtext.formatting.IFormatter> bindIFormatter() {
-		return org.xtext.example.mydsl.formatting.MyDslTestFormatter.class;
-	}
-
-	// contributed by org.eclipse.xtext.generator.builder.BuilderIntegrationFragment
-	public Class<? extends org.eclipse.xtext.resource.IContainer.Manager> bindIContainer$Manager() {
-		return org.eclipse.xtext.resource.containers.StateBasedContainerManager.class;
-	}
-
-	// contributed by org.eclipse.xtext.generator.builder.BuilderIntegrationFragment
-	public Class<? extends org.eclipse.xtext.resource.containers.IAllContainersState.Provider> bindIAllContainersState$Provider() {
-		return org.eclipse.xtext.resource.containers.ResourceSetBasedAllContainersStateProvider.class;
-	}
-
-	// contributed by org.eclipse.xtext.generator.builder.BuilderIntegrationFragment
-	public void configureIResourceDescriptions(com.google.inject.Binder binder) {
-		binder.bind(org.eclipse.xtext.resource.IResourceDescriptions.class).to(org.eclipse.xtext.resource.impl.ResourceSetBasedResourceDescriptions.class);
-	}
-
-	// contributed by org.eclipse.xtext.generator.builder.BuilderIntegrationFragment
-	public void configureIResourceDescriptionsBuilderScope(com.google.inject.Binder binder) {
-		binder.bind(org.eclipse.xtext.resource.IResourceDescriptions.class).annotatedWith(com.google.inject.name.Names.named(org.eclipse.xtext.resource.impl.ResourceDescriptionsProvider.NAMED_BUILDER_SCOPE)).to(org.eclipse.xtext.resource.impl.ResourceSetBasedResourceDescriptions.class);
-	}
-
-}
diff --git a/org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/MyDslTest.xmi b/org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/MyDslTest.xmi
deleted file mode 100644
index 6a22cf6e..00000000
--- a/org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/MyDslTest.xmi
+++ /dev/null
@@ -1,1083 +0,0 @@
-<?xml version="1.0" encoding="ASCII"?>
-<xmi:XMI xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:xtext="http://www.eclipse.org/2008/Xtext">
-  <xtext:Grammar name="org.xtext.example.mydsl.MyDslTest" usedGrammars="/1">
-    <metamodelDeclarations xsi:type="xtext:ReferencedMetamodel">
-      <ePackage href="http://www.descartes-research.net/metamodel/parameterdependencies/0.1#/"/>
-    </metamodelDeclarations>
-    <metamodelDeclarations xsi:type="xtext:ReferencedMetamodel" alias="servicebehavior">
-      <ePackage href="http://www.descartes-research.net/metamodel/servicebehavior/0.1#/"/>
-    </metamodelDeclarations>
-    <metamodelDeclarations xsi:type="xtext:ReferencedMetamodel" alias="ecore">
-      <ePackage href="http://www.eclipse.org/emf/2002/Ecore#/"/>
-    </metamodelDeclarations>
-    <metamodelDeclarations xsi:type="xtext:ReferencedMetamodel" alias="repository">
-      <ePackage href="http://www.descartes-research.net/metamodel/repository/0.1#/"/>
-    </metamodelDeclarations>
-    <metamodelDeclarations xsi:type="xtext:ReferencedMetamodel" alias="repository_composites">
-      <ePackage href="http://www.descartes-research.net/metamodel/repository_composites/0.1#/"/>
-    </metamodelDeclarations>
-    <metamodelDeclarations xsi:type="xtext:ReferencedMetamodel" alias="functions">
-      <ePackage href="http://www.descartes-research.net/metamodel/functions/0.1#/"/>
-    </metamodelDeclarations>
-    <metamodelDeclarations xsi:type="xtext:ReferencedMetamodel" alias="system">
-      <ePackage href="http://www.descartes-research.net/metamodel/system/0.1#/"/>
-    </metamodelDeclarations>
-    <metamodelDeclarations xsi:type="xtext:ReferencedMetamodel" alias="resourceconfiguration">
-      <ePackage href="http://www.descartes-research.net/metamodel/resourceconfiguration/0.1#/"/>
-    </metamodelDeclarations>
-    <metamodelDeclarations xsi:type="xtext:ReferencedMetamodel" alias="resourcetype">
-      <ePackage href="http://www.descartes-research.net/metamodel/resourcetype/0.1#/"/>
-    </metamodelDeclarations>
-    <rules xsi:type="xtext:ParserRule" name="Repository">
-      <type metamodel="/0/@metamodelDeclarations.3">
-        <classifier xsi:type="ecore:EClass" href="http://www.descartes-research.net/metamodel/repository/0.1#//Repository"/>
-      </type>
-      <alternatives xsi:type="xtext:Group">
-        <elements xsi:type="xtext:Keyword" value="Repository"/>
-        <elements xsi:type="xtext:Assignment" feature="name" operator="=">
-          <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.3"/>
-        </elements>
-        <elements xsi:type="xtext:Keyword" value="{"/>
-        <elements xsi:type="xtext:Group" cardinality="?">
-          <elements xsi:type="xtext:Keyword" value="imports"/>
-          <elements xsi:type="xtext:Keyword" value="{"/>
-          <elements xsi:type="xtext:Assignment" feature="imports" operator="+=">
-            <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.1"/>
-          </elements>
-          <elements xsi:type="xtext:Group" cardinality="*">
-            <elements xsi:type="xtext:Keyword" value=","/>
-            <elements xsi:type="xtext:Assignment" feature="imports" operator="+=">
-              <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.1"/>
-            </elements>
-          </elements>
-          <elements xsi:type="xtext:Keyword" value="}"/>
-        </elements>
-        <elements xsi:type="xtext:Group" cardinality="?">
-          <elements xsi:type="xtext:Keyword" value="datatypes"/>
-          <elements xsi:type="xtext:Keyword" value="{"/>
-          <elements xsi:type="xtext:Assignment" feature="datatypes" operator="+=">
-            <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.4"/>
-          </elements>
-          <elements xsi:type="xtext:Group" cardinality="*">
-            <elements xsi:type="xtext:Keyword" value=","/>
-            <elements xsi:type="xtext:Assignment" feature="datatypes" operator="+=">
-              <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.4"/>
-            </elements>
-          </elements>
-          <elements xsi:type="xtext:Keyword" value="}"/>
-        </elements>
-        <elements xsi:type="xtext:Group" cardinality="?">
-          <elements xsi:type="xtext:Keyword" value="components"/>
-          <elements xsi:type="xtext:Keyword" value="{"/>
-          <elements xsi:type="xtext:Assignment" feature="components" operator="+=">
-            <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.5"/>
-          </elements>
-          <elements xsi:type="xtext:Group" cardinality="*">
-            <elements xsi:type="xtext:Keyword" value=";"/>
-            <elements xsi:type="xtext:Assignment" feature="components" operator="+=">
-              <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.5"/>
-            </elements>
-          </elements>
-          <elements xsi:type="xtext:Keyword" value="}"/>
-        </elements>
-        <elements xsi:type="xtext:Group" cardinality="?">
-          <elements xsi:type="xtext:Keyword" value="interfaces"/>
-          <elements xsi:type="xtext:Keyword" value="{"/>
-          <elements xsi:type="xtext:Assignment" feature="interfaces" operator="+=">
-            <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.7"/>
-          </elements>
-          <elements xsi:type="xtext:Group" cardinality="*">
-            <elements xsi:type="xtext:Keyword" value=","/>
-            <elements xsi:type="xtext:Assignment" feature="interfaces" operator="+=">
-              <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.7"/>
-            </elements>
-          </elements>
-          <elements xsi:type="xtext:Keyword" value="}"/>
-        </elements>
-        <elements xsi:type="xtext:Keyword" value="}"/>
-      </alternatives>
-    </rules>
-    <rules xsi:type="xtext:ParserRule" name="Import">
-      <type metamodel="/0/@metamodelDeclarations.3">
-        <classifier xsi:type="ecore:EClass" href="http://www.descartes-research.net/metamodel/repository/0.1#//Import"/>
-      </type>
-      <alternatives xsi:type="xtext:Group">
-        <elements xsi:type="xtext:Keyword" value="import"/>
-        <elements xsi:type="xtext:Assignment" feature="importedNamespace" operator="=">
-          <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.2"/>
-        </elements>
-      </alternatives>
-    </rules>
-    <rules xsi:type="xtext:ParserRule" name="QualifiedNameWithWildCard">
-      <type metamodel="/0/@metamodelDeclarations.2">
-        <classifier xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-      </type>
-      <alternatives xsi:type="xtext:Group">
-        <elements xsi:type="xtext:RuleCall" rule="/0/@rules.3"/>
-        <elements xsi:type="xtext:Group" cardinality="?">
-          <elements xsi:type="xtext:Keyword" value="."/>
-          <elements xsi:type="xtext:Keyword" value="*"/>
-        </elements>
-      </alternatives>
-    </rules>
-    <rules xsi:type="xtext:ParserRule" name="QualifiedName">
-      <type metamodel="/0/@metamodelDeclarations.2">
-        <classifier xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-      </type>
-      <alternatives xsi:type="xtext:Group">
-        <elements xsi:type="xtext:RuleCall" rule="/1/@rules.0"/>
-        <elements xsi:type="xtext:Group" cardinality="*">
-          <elements xsi:type="xtext:Keyword" value="."/>
-          <elements xsi:type="xtext:RuleCall" rule="/1/@rules.0"/>
-        </elements>
-      </alternatives>
-    </rules>
-    <rules xsi:type="xtext:ParserRule" name="DataType">
-      <type metamodel="/0/@metamodelDeclarations.3">
-        <classifier xsi:type="ecore:EClass" href="http://www.descartes-research.net/metamodel/repository/0.1#//DataType"/>
-      </type>
-      <alternatives xsi:type="xtext:Alternatives">
-        <elements xsi:type="xtext:RuleCall" rule="/0/@rules.9"/>
-        <elements xsi:type="xtext:RuleCall" rule="/0/@rules.10"/>
-        <elements xsi:type="xtext:RuleCall" rule="/0/@rules.11"/>
-      </alternatives>
-    </rules>
-    <rules xsi:type="xtext:ParserRule" name="RepositoryComponent">
-      <type metamodel="/0/@metamodelDeclarations.3">
-        <classifier xsi:type="ecore:EClass" href="http://www.descartes-research.net/metamodel/repository/0.1#//RepositoryComponent"/>
-      </type>
-      <alternatives xsi:type="xtext:Alternatives">
-        <elements xsi:type="xtext:RuleCall" rule="/0/@rules.8"/>
-        <elements xsi:type="xtext:RuleCall" rule="/0/@rules.18"/>
-        <elements xsi:type="xtext:RuleCall" rule="/0/@rules.19"/>
-        <elements xsi:type="xtext:RuleCall" rule="/0/@rules.20"/>
-      </alternatives>
-    </rules>
-    <rules xsi:type="xtext:ParserRule" name="EString">
-      <type metamodel="/0/@metamodelDeclarations.2">
-        <classifier xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-      </type>
-      <alternatives xsi:type="xtext:Alternatives">
-        <elements xsi:type="xtext:RuleCall" rule="/1/@rules.2"/>
-        <elements xsi:type="xtext:RuleCall" rule="/1/@rules.0"/>
-      </alternatives>
-    </rules>
-    <rules xsi:type="xtext:ParserRule" name="Interface">
-      <type metamodel="/0/@metamodelDeclarations.3">
-        <classifier xsi:type="ecore:EClass" href="http://www.descartes-research.net/metamodel/repository/0.1#//Interface"/>
-      </type>
-      <alternatives xsi:type="xtext:Group">
-        <elements xsi:type="xtext:Keyword" value="Interface"/>
-        <elements xsi:type="xtext:Assignment" feature="name" operator="=">
-          <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.6"/>
-        </elements>
-        <elements xsi:type="xtext:Keyword" value="{"/>
-        <elements xsi:type="xtext:Group" cardinality="?">
-          <elements xsi:type="xtext:Keyword" value="parentInterfaces"/>
-          <elements xsi:type="xtext:Keyword" value="("/>
-          <elements xsi:type="xtext:Assignment" feature="parentInterfaces" operator="+=">
-            <terminal xsi:type="xtext:CrossReference">
-              <type metamodel="/0/@metamodelDeclarations.3">
-                <classifier xsi:type="ecore:EClass" href="http://www.descartes-research.net/metamodel/repository/0.1#//Interface"/>
-              </type>
-              <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.6"/>
-            </terminal>
-          </elements>
-          <elements xsi:type="xtext:Group" cardinality="*">
-            <elements xsi:type="xtext:Keyword" value=","/>
-            <elements xsi:type="xtext:Assignment" feature="parentInterfaces" operator="+=">
-              <terminal xsi:type="xtext:CrossReference">
-                <type metamodel="/0/@metamodelDeclarations.3">
-                  <classifier xsi:type="ecore:EClass" href="http://www.descartes-research.net/metamodel/repository/0.1#//Interface"/>
-                </type>
-                <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.6"/>
-              </terminal>
-            </elements>
-          </elements>
-          <elements xsi:type="xtext:Keyword" value=")"/>
-        </elements>
-        <elements xsi:type="xtext:Group" cardinality="?">
-          <elements xsi:type="xtext:Assignment" feature="signatures" operator="+=">
-            <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.14"/>
-          </elements>
-          <elements xsi:type="xtext:Group" cardinality="*">
-            <elements xsi:type="xtext:Keyword" value=","/>
-            <elements xsi:type="xtext:Assignment" feature="signatures" operator="+=">
-              <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.14"/>
-            </elements>
-          </elements>
-        </elements>
-        <elements xsi:type="xtext:Keyword" value="}"/>
-      </alternatives>
-    </rules>
-    <rules xsi:type="xtext:ParserRule" name="RepositoryComponent_Impl">
-      <type metamodel="/0/@metamodelDeclarations.3">
-        <classifier xsi:type="ecore:EClass" href="http://www.descartes-research.net/metamodel/repository/0.1#//RepositoryComponent"/>
-      </type>
-      <alternatives xsi:type="xtext:Group">
-        <elements xsi:type="xtext:Keyword" value="RepositoryComponent"/>
-        <elements xsi:type="xtext:Assignment" feature="name" operator="=">
-          <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.6"/>
-        </elements>
-        <elements xsi:type="xtext:Keyword" value="{"/>
-        <elements xsi:type="xtext:Group" cardinality="?">
-          <elements xsi:type="xtext:Keyword" value="relationship"/>
-          <elements xsi:type="xtext:Keyword" value="("/>
-          <elements xsi:type="xtext:Assignment" feature="relationship" operator="+=">
-            <terminal xsi:type="xtext:CrossReference">
-              <type metamodel="/0/@metamodelDeclarations.0">
-                <classifier xsi:type="ecore:EClass" href="http://www.descartes-research.net/metamodel/parameterdependencies/0.1#//Relationship"/>
-              </type>
-              <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.6"/>
-            </terminal>
-          </elements>
-          <elements xsi:type="xtext:Group" cardinality="*">
-            <elements xsi:type="xtext:Keyword" value=","/>
-            <elements xsi:type="xtext:Assignment" feature="relationship" operator="+=">
-              <terminal xsi:type="xtext:CrossReference">
-                <type metamodel="/0/@metamodelDeclarations.0">
-                  <classifier xsi:type="ecore:EClass" href="http://www.descartes-research.net/metamodel/parameterdependencies/0.1#//Relationship"/>
-                </type>
-                <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.6"/>
-              </terminal>
-            </elements>
-          </elements>
-          <elements xsi:type="xtext:Keyword" value=")"/>
-        </elements>
-        <elements xsi:type="xtext:Group" cardinality="?">
-          <elements xsi:type="xtext:Keyword" value="providedRoles"/>
-          <elements xsi:type="xtext:Keyword" value="{"/>
-          <elements xsi:type="xtext:Assignment" feature="providedRoles" operator="+=">
-            <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.16"/>
-          </elements>
-          <elements xsi:type="xtext:Group" cardinality="*">
-            <elements xsi:type="xtext:Keyword" value=","/>
-            <elements xsi:type="xtext:Assignment" feature="providedRoles" operator="+=">
-              <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.16"/>
-            </elements>
-          </elements>
-          <elements xsi:type="xtext:Keyword" value="}"/>
-        </elements>
-        <elements xsi:type="xtext:Group" cardinality="?">
-          <elements xsi:type="xtext:Keyword" value="requiredRoles"/>
-          <elements xsi:type="xtext:Keyword" value="{"/>
-          <elements xsi:type="xtext:Assignment" feature="requiredRoles" operator="+=">
-            <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.17"/>
-          </elements>
-          <elements xsi:type="xtext:Group" cardinality="*">
-            <elements xsi:type="xtext:Keyword" value=","/>
-            <elements xsi:type="xtext:Assignment" feature="requiredRoles" operator="+=">
-              <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.17"/>
-            </elements>
-          </elements>
-          <elements xsi:type="xtext:Keyword" value="}"/>
-        </elements>
-        <elements xsi:type="xtext:Keyword" value="}"/>
-      </alternatives>
-    </rules>
-    <rules xsi:type="xtext:ParserRule" name="CollectionDataType">
-      <type metamodel="/0/@metamodelDeclarations.3">
-        <classifier xsi:type="ecore:EClass" href="http://www.descartes-research.net/metamodel/repository/0.1#//CollectionDataType"/>
-      </type>
-      <alternatives xsi:type="xtext:Group">
-        <elements xsi:type="xtext:Keyword" value="CollectionDataType"/>
-        <elements xsi:type="xtext:Assignment" feature="name" operator="=">
-          <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.6"/>
-        </elements>
-        <elements xsi:type="xtext:Keyword" value="{"/>
-        <elements xsi:type="xtext:Keyword" value="innerType"/>
-        <elements xsi:type="xtext:Assignment" feature="innerType" operator="=">
-          <terminal xsi:type="xtext:CrossReference">
-            <type metamodel="/0/@metamodelDeclarations.3">
-              <classifier xsi:type="ecore:EClass" href="http://www.descartes-research.net/metamodel/repository/0.1#//DataType"/>
-            </type>
-            <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.6"/>
-          </terminal>
-        </elements>
-        <elements xsi:type="xtext:Keyword" value="}"/>
-      </alternatives>
-    </rules>
-    <rules xsi:type="xtext:ParserRule" name="CompositeDataType">
-      <type metamodel="/0/@metamodelDeclarations.3">
-        <classifier xsi:type="ecore:EClass" href="http://www.descartes-research.net/metamodel/repository/0.1#//CompositeDataType"/>
-      </type>
-      <alternatives xsi:type="xtext:Group">
-        <elements xsi:type="xtext:Keyword" value="CompositeDataType"/>
-        <elements xsi:type="xtext:Assignment" feature="name" operator="=">
-          <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.6"/>
-        </elements>
-        <elements xsi:type="xtext:Keyword" value="{"/>
-        <elements xsi:type="xtext:Group" cardinality="?">
-          <elements xsi:type="xtext:Keyword" value="parentTypes"/>
-          <elements xsi:type="xtext:Keyword" value="("/>
-          <elements xsi:type="xtext:Assignment" feature="parentTypes" operator="+=">
-            <terminal xsi:type="xtext:CrossReference">
-              <type metamodel="/0/@metamodelDeclarations.3">
-                <classifier xsi:type="ecore:EClass" href="http://www.descartes-research.net/metamodel/repository/0.1#//CompositeDataType"/>
-              </type>
-              <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.6"/>
-            </terminal>
-          </elements>
-          <elements xsi:type="xtext:Group" cardinality="*">
-            <elements xsi:type="xtext:Keyword" value=","/>
-            <elements xsi:type="xtext:Assignment" feature="parentTypes" operator="+=">
-              <terminal xsi:type="xtext:CrossReference">
-                <type metamodel="/0/@metamodelDeclarations.3">
-                  <classifier xsi:type="ecore:EClass" href="http://www.descartes-research.net/metamodel/repository/0.1#//CompositeDataType"/>
-                </type>
-                <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.6"/>
-              </terminal>
-            </elements>
-          </elements>
-          <elements xsi:type="xtext:Keyword" value=")"/>
-        </elements>
-        <elements xsi:type="xtext:Group" cardinality="?">
-          <elements xsi:type="xtext:Keyword" value="innerDeclarations"/>
-          <elements xsi:type="xtext:Keyword" value="{"/>
-          <elements xsi:type="xtext:Assignment" feature="innerDeclarations" operator="+=">
-            <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.12"/>
-          </elements>
-          <elements xsi:type="xtext:Group" cardinality="*">
-            <elements xsi:type="xtext:Keyword" value=","/>
-            <elements xsi:type="xtext:Assignment" feature="innerDeclarations" operator="+=">
-              <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.12"/>
-            </elements>
-          </elements>
-          <elements xsi:type="xtext:Keyword" value="}"/>
-        </elements>
-        <elements xsi:type="xtext:Keyword" value="}"/>
-      </alternatives>
-    </rules>
-    <rules xsi:type="xtext:ParserRule" name="PrimitiveDataType">
-      <type metamodel="/0/@metamodelDeclarations.3">
-        <classifier xsi:type="ecore:EClass" href="http://www.descartes-research.net/metamodel/repository/0.1#//PrimitiveDataType"/>
-      </type>
-      <alternatives xsi:type="xtext:Group">
-        <elements xsi:type="xtext:Keyword" value="PrimitiveDataType"/>
-        <elements xsi:type="xtext:Keyword" value="{"/>
-        <elements xsi:type="xtext:Keyword" value="type"/>
-        <elements xsi:type="xtext:Assignment" feature="type" operator="=">
-          <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.13"/>
-        </elements>
-        <elements xsi:type="xtext:Keyword" value="ref"/>
-        <elements xsi:type="xtext:Assignment" feature="name" operator="=">
-          <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.6"/>
-        </elements>
-        <elements xsi:type="xtext:Keyword" value="}"/>
-      </alternatives>
-    </rules>
-    <rules xsi:type="xtext:ParserRule" name="InnerDeclaration">
-      <type metamodel="/0/@metamodelDeclarations.3">
-        <classifier xsi:type="ecore:EClass" href="http://www.descartes-research.net/metamodel/repository/0.1#//InnerDeclaration"/>
-      </type>
-      <alternatives xsi:type="xtext:Group">
-        <elements xsi:type="xtext:Keyword" value="InnerDeclaration"/>
-        <elements xsi:type="xtext:Assignment" feature="name" operator="=">
-          <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.6"/>
-        </elements>
-        <elements xsi:type="xtext:Keyword" value="{"/>
-        <elements xsi:type="xtext:Keyword" value="dataType"/>
-        <elements xsi:type="xtext:Assignment" feature="dataType" operator="=">
-          <terminal xsi:type="xtext:CrossReference">
-            <type metamodel="/0/@metamodelDeclarations.3">
-              <classifier xsi:type="ecore:EClass" href="http://www.descartes-research.net/metamodel/repository/0.1#//DataType"/>
-            </type>
-            <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.6"/>
-          </terminal>
-        </elements>
-        <elements xsi:type="xtext:Keyword" value="}"/>
-      </alternatives>
-    </rules>
-    <rules xsi:type="xtext:EnumRule" name="PrimitiveTypeEnum">
-      <type metamodel="/0/@metamodelDeclarations.3">
-        <classifier xsi:type="ecore:EEnum" href="http://www.descartes-research.net/metamodel/repository/0.1#//PrimitiveTypeEnum"/>
-      </type>
-      <alternatives xsi:type="xtext:Alternatives">
-        <elements xsi:type="xtext:EnumLiteralDeclaration">
-          <enumLiteral href="http://www.descartes-research.net/metamodel/repository/0.1#//PrimitiveTypeEnum/INT"/>
-          <literal value="INT"/>
-        </elements>
-        <elements xsi:type="xtext:EnumLiteralDeclaration">
-          <enumLiteral href="http://www.descartes-research.net/metamodel/repository/0.1#//PrimitiveTypeEnum/STRING"/>
-          <literal value="STRING"/>
-        </elements>
-        <elements xsi:type="xtext:EnumLiteralDeclaration">
-          <enumLiteral href="http://www.descartes-research.net/metamodel/repository/0.1#//PrimitiveTypeEnum/BOOL"/>
-          <literal value="BOOL"/>
-        </elements>
-        <elements xsi:type="xtext:EnumLiteralDeclaration">
-          <enumLiteral href="http://www.descartes-research.net/metamodel/repository/0.1#//PrimitiveTypeEnum/DOUBLE"/>
-          <literal value="DOUBLE"/>
-        </elements>
-        <elements xsi:type="xtext:EnumLiteralDeclaration">
-          <enumLiteral href="http://www.descartes-research.net/metamodel/repository/0.1#//PrimitiveTypeEnum/CHAR"/>
-          <literal value="CHAR"/>
-        </elements>
-        <elements xsi:type="xtext:EnumLiteralDeclaration">
-          <enumLiteral href="http://www.descartes-research.net/metamodel/repository/0.1#//PrimitiveTypeEnum/BYTE"/>
-          <literal value="BYTE"/>
-        </elements>
-        <elements xsi:type="xtext:EnumLiteralDeclaration">
-          <enumLiteral href="http://www.descartes-research.net/metamodel/repository/0.1#//PrimitiveTypeEnum/LONG"/>
-          <literal value="LONG"/>
-        </elements>
-      </alternatives>
-    </rules>
-    <rules xsi:type="xtext:ParserRule" name="Signature">
-      <type metamodel="/0/@metamodelDeclarations.3">
-        <classifier xsi:type="ecore:EClass" href="http://www.descartes-research.net/metamodel/repository/0.1#//Signature"/>
-      </type>
-      <alternatives xsi:type="xtext:Group">
-        <elements xsi:type="xtext:Alternatives">
-          <elements xsi:type="xtext:Assignment" feature="returnType" operator="=">
-            <terminal xsi:type="xtext:CrossReference">
-              <type metamodel="/0/@metamodelDeclarations.3">
-                <classifier xsi:type="ecore:EClass" href="http://www.descartes-research.net/metamodel/repository/0.1#//DataType"/>
-              </type>
-              <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.6"/>
-            </terminal>
-          </elements>
-          <elements xsi:type="xtext:Keyword" value="void"/>
-        </elements>
-        <elements xsi:type="xtext:Assignment" feature="name" operator="=">
-          <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.6"/>
-        </elements>
-        <elements xsi:type="xtext:Keyword" value="("/>
-        <elements xsi:type="xtext:Group" cardinality="?">
-          <elements xsi:type="xtext:Assignment" feature="parameters" operator="+=">
-            <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.15"/>
-          </elements>
-          <elements xsi:type="xtext:Group" cardinality="*">
-            <elements xsi:type="xtext:Keyword" value=","/>
-            <elements xsi:type="xtext:Assignment" feature="parameters" operator="+=">
-              <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.15"/>
-            </elements>
-          </elements>
-        </elements>
-        <elements xsi:type="xtext:Keyword" value=")"/>
-      </alternatives>
-    </rules>
-    <rules xsi:type="xtext:ParserRule" name="Parameter">
-      <type metamodel="/0/@metamodelDeclarations.3">
-        <classifier xsi:type="ecore:EClass" href="http://www.descartes-research.net/metamodel/repository/0.1#//Parameter"/>
-      </type>
-      <alternatives xsi:type="xtext:Group">
-        <elements xsi:type="xtext:Assignment" feature="dataType" operator="=">
-          <terminal xsi:type="xtext:CrossReference">
-            <type metamodel="/0/@metamodelDeclarations.3">
-              <classifier xsi:type="ecore:EClass" href="http://www.descartes-research.net/metamodel/repository/0.1#//DataType"/>
-            </type>
-            <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.6"/>
-          </terminal>
-        </elements>
-        <elements xsi:type="xtext:Assignment" feature="name" operator="=">
-          <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.6"/>
-        </elements>
-      </alternatives>
-    </rules>
-    <rules xsi:type="xtext:ParserRule" name="ProvidedRole">
-      <type metamodel="/0/@metamodelDeclarations.3">
-        <classifier xsi:type="ecore:EClass" href="http://www.descartes-research.net/metamodel/repository/0.1#//ProvidedRole"/>
-      </type>
-      <alternatives xsi:type="xtext:Group">
-        <elements xsi:type="xtext:Keyword" value="ProvidedRole"/>
-        <elements xsi:type="xtext:Assignment" feature="interface" operator="=">
-          <terminal xsi:type="xtext:CrossReference">
-            <type metamodel="/0/@metamodelDeclarations.3">
-              <classifier xsi:type="ecore:EClass" href="http://www.descartes-research.net/metamodel/repository/0.1#//Interface"/>
-            </type>
-            <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.6"/>
-          </terminal>
-        </elements>
-        <elements xsi:type="xtext:Keyword" cardinality="?" value=","/>
-      </alternatives>
-    </rules>
-    <rules xsi:type="xtext:ParserRule" name="RequiredRole">
-      <type metamodel="/0/@metamodelDeclarations.3">
-        <classifier xsi:type="ecore:EClass" href="http://www.descartes-research.net/metamodel/repository/0.1#//RequiredRole"/>
-      </type>
-      <alternatives xsi:type="xtext:Group">
-        <elements xsi:type="xtext:Keyword" value="RequiredRole"/>
-        <elements xsi:type="xtext:Assignment" feature="interface" operator="=">
-          <terminal xsi:type="xtext:CrossReference">
-            <type metamodel="/0/@metamodelDeclarations.3">
-              <classifier xsi:type="ecore:EClass" href="http://www.descartes-research.net/metamodel/repository/0.1#//Interface"/>
-            </type>
-            <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.6"/>
-          </terminal>
-        </elements>
-        <elements xsi:type="xtext:Keyword" cardinality="?" value=","/>
-      </alternatives>
-    </rules>
-    <rules xsi:type="xtext:ParserRule" name="BasicComponent">
-      <type metamodel="/0/@metamodelDeclarations.3">
-        <classifier xsi:type="ecore:EClass" href="http://www.descartes-research.net/metamodel/repository/0.1#//BasicComponent"/>
-      </type>
-      <alternatives xsi:type="xtext:Group">
-        <elements xsi:type="xtext:Keyword" value="BasicComponent"/>
-        <elements xsi:type="xtext:Assignment" feature="name" operator="=">
-          <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.6"/>
-        </elements>
-        <elements xsi:type="xtext:Group" cardinality="?">
-          <elements xsi:type="xtext:Assignment" feature="providedRoles" operator="+=">
-            <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.16"/>
-          </elements>
-          <elements xsi:type="xtext:Group" cardinality="*">
-            <elements xsi:type="xtext:Keyword" value=","/>
-            <elements xsi:type="xtext:Assignment" feature="providedRoles" operator="+=">
-              <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.16"/>
-            </elements>
-          </elements>
-        </elements>
-        <elements xsi:type="xtext:Group" cardinality="?">
-          <elements xsi:type="xtext:Assignment" feature="requiredRoles" operator="+=">
-            <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.17"/>
-          </elements>
-          <elements xsi:type="xtext:Group" cardinality="*">
-            <elements xsi:type="xtext:Keyword" value=","/>
-            <elements xsi:type="xtext:Assignment" feature="requiredRoles" operator="+=">
-              <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.17"/>
-            </elements>
-          </elements>
-        </elements>
-        <elements xsi:type="xtext:Keyword" value="{"/>
-        <elements xsi:type="xtext:Group" cardinality="?">
-          <elements xsi:type="xtext:Keyword" value="relationship"/>
-          <elements xsi:type="xtext:Keyword" value="("/>
-          <elements xsi:type="xtext:Assignment" feature="relationship" operator="+=">
-            <terminal xsi:type="xtext:CrossReference">
-              <type metamodel="/0/@metamodelDeclarations.0">
-                <classifier xsi:type="ecore:EClass" href="http://www.descartes-research.net/metamodel/parameterdependencies/0.1#//Relationship"/>
-              </type>
-              <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.6"/>
-            </terminal>
-          </elements>
-          <elements xsi:type="xtext:Group" cardinality="*">
-            <elements xsi:type="xtext:Keyword" value=","/>
-            <elements xsi:type="xtext:Assignment" feature="relationship" operator="+=">
-              <terminal xsi:type="xtext:CrossReference">
-                <type metamodel="/0/@metamodelDeclarations.0">
-                  <classifier xsi:type="ecore:EClass" href="http://www.descartes-research.net/metamodel/parameterdependencies/0.1#//Relationship"/>
-                </type>
-                <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.6"/>
-              </terminal>
-            </elements>
-          </elements>
-          <elements xsi:type="xtext:Keyword" value=")"/>
-        </elements>
-        <elements xsi:type="xtext:Keyword" value="}"/>
-      </alternatives>
-    </rules>
-    <rules xsi:type="xtext:ParserRule" name="CompositeComponent">
-      <type metamodel="/0/@metamodelDeclarations.3">
-        <classifier xsi:type="ecore:EClass" href="http://www.descartes-research.net/metamodel/repository/0.1#//CompositeComponent"/>
-      </type>
-      <alternatives xsi:type="xtext:Group">
-        <elements xsi:type="xtext:Keyword" value="CompositeComponent"/>
-        <elements xsi:type="xtext:Assignment" feature="name" operator="=">
-          <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.6"/>
-        </elements>
-        <elements xsi:type="xtext:Group" cardinality="?">
-          <elements xsi:type="xtext:Assignment" feature="providedRoles" operator="+=">
-            <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.16"/>
-          </elements>
-          <elements xsi:type="xtext:Group" cardinality="*">
-            <elements xsi:type="xtext:Keyword" value=","/>
-            <elements xsi:type="xtext:Assignment" feature="providedRoles" operator="+=">
-              <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.16"/>
-            </elements>
-          </elements>
-        </elements>
-        <elements xsi:type="xtext:Group" cardinality="?">
-          <elements xsi:type="xtext:Assignment" feature="requiredRoles" operator="+=">
-            <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.17"/>
-          </elements>
-          <elements xsi:type="xtext:Group" cardinality="*">
-            <elements xsi:type="xtext:Keyword" value=","/>
-            <elements xsi:type="xtext:Assignment" feature="requiredRoles" operator="+=">
-              <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.17"/>
-            </elements>
-          </elements>
-        </elements>
-        <elements xsi:type="xtext:Keyword" value="{"/>
-        <elements xsi:type="xtext:Group" cardinality="?">
-          <elements xsi:type="xtext:Keyword" value="relationship"/>
-          <elements xsi:type="xtext:Keyword" value="("/>
-          <elements xsi:type="xtext:Assignment" feature="relationship" operator="+=">
-            <terminal xsi:type="xtext:CrossReference">
-              <type metamodel="/0/@metamodelDeclarations.0">
-                <classifier xsi:type="ecore:EClass" href="http://www.descartes-research.net/metamodel/parameterdependencies/0.1#//Relationship"/>
-              </type>
-              <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.6"/>
-            </terminal>
-          </elements>
-          <elements xsi:type="xtext:Group" cardinality="*">
-            <elements xsi:type="xtext:Keyword" value=","/>
-            <elements xsi:type="xtext:Assignment" feature="relationship" operator="+=">
-              <terminal xsi:type="xtext:CrossReference">
-                <type metamodel="/0/@metamodelDeclarations.0">
-                  <classifier xsi:type="ecore:EClass" href="http://www.descartes-research.net/metamodel/parameterdependencies/0.1#//Relationship"/>
-                </type>
-                <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.6"/>
-              </terminal>
-            </elements>
-          </elements>
-          <elements xsi:type="xtext:Keyword" value=")"/>
-        </elements>
-        <elements xsi:type="xtext:Group" cardinality="?">
-          <elements xsi:type="xtext:Keyword" value="assembly"/>
-          <elements xsi:type="xtext:Assignment" feature="assembly" operator="=">
-            <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.21"/>
-          </elements>
-        </elements>
-        <elements xsi:type="xtext:Keyword" value="}"/>
-      </alternatives>
-    </rules>
-    <rules xsi:type="xtext:ParserRule" name="SubSystem">
-      <type metamodel="/0/@metamodelDeclarations.3">
-        <classifier xsi:type="ecore:EClass" href="http://www.descartes-research.net/metamodel/repository/0.1#//SubSystem"/>
-      </type>
-      <alternatives xsi:type="xtext:Group">
-        <elements xsi:type="xtext:Keyword" value="SubSystem"/>
-        <elements xsi:type="xtext:Assignment" feature="name" operator="=">
-          <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.6"/>
-        </elements>
-        <elements xsi:type="xtext:Group" cardinality="?">
-          <elements xsi:type="xtext:Keyword" value="providedRoles"/>
-          <elements xsi:type="xtext:Keyword" value="{"/>
-          <elements xsi:type="xtext:Assignment" feature="providedRoles" operator="+=">
-            <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.16"/>
-          </elements>
-          <elements xsi:type="xtext:Group" cardinality="*">
-            <elements xsi:type="xtext:Keyword" value=","/>
-            <elements xsi:type="xtext:Assignment" feature="providedRoles" operator="+=">
-              <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.16"/>
-            </elements>
-          </elements>
-          <elements xsi:type="xtext:Keyword" value="}"/>
-        </elements>
-        <elements xsi:type="xtext:Group" cardinality="?">
-          <elements xsi:type="xtext:Keyword" value="requiredRoles"/>
-          <elements xsi:type="xtext:Keyword" value="{"/>
-          <elements xsi:type="xtext:Assignment" feature="requiredRoles" operator="+=">
-            <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.17"/>
-          </elements>
-          <elements xsi:type="xtext:Group" cardinality="*">
-            <elements xsi:type="xtext:Keyword" value=","/>
-            <elements xsi:type="xtext:Assignment" feature="requiredRoles" operator="+=">
-              <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.17"/>
-            </elements>
-          </elements>
-          <elements xsi:type="xtext:Keyword" value="}"/>
-        </elements>
-        <elements xsi:type="xtext:Keyword" value="{"/>
-        <elements xsi:type="xtext:Group" cardinality="?">
-          <elements xsi:type="xtext:Keyword" value="relationship"/>
-          <elements xsi:type="xtext:Keyword" value="("/>
-          <elements xsi:type="xtext:Assignment" feature="relationship" operator="+=">
-            <terminal xsi:type="xtext:CrossReference">
-              <type metamodel="/0/@metamodelDeclarations.0">
-                <classifier xsi:type="ecore:EClass" href="http://www.descartes-research.net/metamodel/parameterdependencies/0.1#//Relationship"/>
-              </type>
-              <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.6"/>
-            </terminal>
-          </elements>
-          <elements xsi:type="xtext:Group" cardinality="*">
-            <elements xsi:type="xtext:Keyword" value=","/>
-            <elements xsi:type="xtext:Assignment" feature="relationship" operator="+=">
-              <terminal xsi:type="xtext:CrossReference">
-                <type metamodel="/0/@metamodelDeclarations.0">
-                  <classifier xsi:type="ecore:EClass" href="http://www.descartes-research.net/metamodel/parameterdependencies/0.1#//Relationship"/>
-                </type>
-                <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.6"/>
-              </terminal>
-            </elements>
-          </elements>
-          <elements xsi:type="xtext:Keyword" value=")"/>
-        </elements>
-        <elements xsi:type="xtext:Group" cardinality="?">
-          <elements xsi:type="xtext:Keyword" value="assembly"/>
-          <elements xsi:type="xtext:Assignment" feature="assembly" operator="=">
-            <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.21"/>
-          </elements>
-        </elements>
-        <elements xsi:type="xtext:Keyword" value="}"/>
-      </alternatives>
-    </rules>
-    <rules xsi:type="xtext:ParserRule" name="ComposedStructureAssembly">
-      <type metamodel="/0/@metamodelDeclarations.4">
-        <classifier xsi:type="ecore:EClass" href="http://www.descartes-research.net/metamodel/repository_composites/0.1#//ComposedStructureAssembly"/>
-      </type>
-      <alternatives xsi:type="xtext:Group">
-        <elements xsi:type="xtext:Action">
-          <type metamodel="/0/@metamodelDeclarations.4">
-            <classifier xsi:type="ecore:EClass" href="http://www.descartes-research.net/metamodel/repository_composites/0.1#//ComposedStructureAssembly"/>
-          </type>
-        </elements>
-        <elements xsi:type="xtext:Keyword" value="ComposedStructureAssembly"/>
-        <elements xsi:type="xtext:Keyword" value="{"/>
-        <elements xsi:type="xtext:Group" cardinality="?">
-          <elements xsi:type="xtext:Keyword" value="assemblyContexts"/>
-          <elements xsi:type="xtext:Keyword" value="{"/>
-          <elements xsi:type="xtext:Assignment" feature="assemblyContexts" operator="+=">
-            <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.22"/>
-          </elements>
-          <elements xsi:type="xtext:Group" cardinality="*">
-            <elements xsi:type="xtext:Keyword" value=","/>
-            <elements xsi:type="xtext:Assignment" feature="assemblyContexts" operator="+=">
-              <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.22"/>
-            </elements>
-          </elements>
-          <elements xsi:type="xtext:Keyword" value="}"/>
-        </elements>
-        <elements xsi:type="xtext:Group" cardinality="?">
-          <elements xsi:type="xtext:Keyword" value="assemblyConnectors"/>
-          <elements xsi:type="xtext:Keyword" value="{"/>
-          <elements xsi:type="xtext:Assignment" feature="assemblyConnectors" operator="+=">
-            <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.23"/>
-          </elements>
-          <elements xsi:type="xtext:Group" cardinality="*">
-            <elements xsi:type="xtext:Keyword" value=","/>
-            <elements xsi:type="xtext:Assignment" feature="assemblyConnectors" operator="+=">
-              <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.23"/>
-            </elements>
-          </elements>
-          <elements xsi:type="xtext:Keyword" value="}"/>
-        </elements>
-        <elements xsi:type="xtext:Group" cardinality="?">
-          <elements xsi:type="xtext:Keyword" value="providedDelegationConnectors"/>
-          <elements xsi:type="xtext:Keyword" value="{"/>
-          <elements xsi:type="xtext:Assignment" feature="providedDelegationConnectors" operator="+=">
-            <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.24"/>
-          </elements>
-          <elements xsi:type="xtext:Group" cardinality="*">
-            <elements xsi:type="xtext:Keyword" value=","/>
-            <elements xsi:type="xtext:Assignment" feature="providedDelegationConnectors" operator="+=">
-              <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.24"/>
-            </elements>
-          </elements>
-          <elements xsi:type="xtext:Keyword" value="}"/>
-        </elements>
-        <elements xsi:type="xtext:Group" cardinality="?">
-          <elements xsi:type="xtext:Keyword" value="requiredDelegationConnectors"/>
-          <elements xsi:type="xtext:Keyword" value="{"/>
-          <elements xsi:type="xtext:Assignment" feature="requiredDelegationConnectors" operator="+=">
-            <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.25"/>
-          </elements>
-          <elements xsi:type="xtext:Group" cardinality="*">
-            <elements xsi:type="xtext:Keyword" value=","/>
-            <elements xsi:type="xtext:Assignment" feature="requiredDelegationConnectors" operator="+=">
-              <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.25"/>
-            </elements>
-          </elements>
-          <elements xsi:type="xtext:Keyword" value="}"/>
-        </elements>
-        <elements xsi:type="xtext:Keyword" value="}"/>
-      </alternatives>
-    </rules>
-    <rules xsi:type="xtext:ParserRule" name="AssemblyContext">
-      <type metamodel="/0/@metamodelDeclarations.4">
-        <classifier xsi:type="ecore:EClass" href="http://www.descartes-research.net/metamodel/repository_composites/0.1#//AssemblyContext"/>
-      </type>
-      <alternatives xsi:type="xtext:Group">
-        <elements xsi:type="xtext:Keyword" value="AssemblyContext"/>
-        <elements xsi:type="xtext:Assignment" feature="name" operator="=">
-          <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.6"/>
-        </elements>
-        <elements xsi:type="xtext:Keyword" value="{"/>
-        <elements xsi:type="xtext:Keyword" value="encapsulatedComponent"/>
-        <elements xsi:type="xtext:Assignment" feature="encapsulatedComponent" operator="=">
-          <terminal xsi:type="xtext:CrossReference">
-            <type metamodel="/0/@metamodelDeclarations.3">
-              <classifier xsi:type="ecore:EClass" href="http://www.descartes-research.net/metamodel/repository/0.1#//RepositoryComponent"/>
-            </type>
-            <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.6"/>
-          </terminal>
-        </elements>
-        <elements xsi:type="xtext:Keyword" value="}"/>
-      </alternatives>
-    </rules>
-    <rules xsi:type="xtext:ParserRule" name="AssemblyConnector">
-      <type metamodel="/0/@metamodelDeclarations.4">
-        <classifier xsi:type="ecore:EClass" href="http://www.descartes-research.net/metamodel/repository_composites/0.1#//AssemblyConnector"/>
-      </type>
-      <alternatives xsi:type="xtext:Group">
-        <elements xsi:type="xtext:Keyword" value="AssemblyConnector"/>
-        <elements xsi:type="xtext:Assignment" feature="name" operator="=">
-          <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.6"/>
-        </elements>
-        <elements xsi:type="xtext:Keyword" value="{"/>
-        <elements xsi:type="xtext:Keyword" value="requiredRole"/>
-        <elements xsi:type="xtext:Assignment" feature="requiredRole" operator="=">
-          <terminal xsi:type="xtext:CrossReference">
-            <type metamodel="/0/@metamodelDeclarations.3">
-              <classifier xsi:type="ecore:EClass" href="http://www.descartes-research.net/metamodel/repository/0.1#//RequiredRole"/>
-            </type>
-            <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.6"/>
-          </terminal>
-        </elements>
-        <elements xsi:type="xtext:Keyword" value="providedRole"/>
-        <elements xsi:type="xtext:Assignment" feature="providedRole" operator="=">
-          <terminal xsi:type="xtext:CrossReference">
-            <type metamodel="/0/@metamodelDeclarations.3">
-              <classifier xsi:type="ecore:EClass" href="http://www.descartes-research.net/metamodel/repository/0.1#//ProvidedRole"/>
-            </type>
-            <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.6"/>
-          </terminal>
-        </elements>
-        <elements xsi:type="xtext:Keyword" value="providingAssemblyContext"/>
-        <elements xsi:type="xtext:Assignment" feature="providingAssemblyContext" operator="=">
-          <terminal xsi:type="xtext:CrossReference">
-            <type metamodel="/0/@metamodelDeclarations.4">
-              <classifier xsi:type="ecore:EClass" href="http://www.descartes-research.net/metamodel/repository_composites/0.1#//AssemblyContext"/>
-            </type>
-            <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.6"/>
-          </terminal>
-        </elements>
-        <elements xsi:type="xtext:Keyword" value="requiringAssemblyContext"/>
-        <elements xsi:type="xtext:Assignment" feature="requiringAssemblyContext" operator="=">
-          <terminal xsi:type="xtext:CrossReference">
-            <type metamodel="/0/@metamodelDeclarations.4">
-              <classifier xsi:type="ecore:EClass" href="http://www.descartes-research.net/metamodel/repository_composites/0.1#//AssemblyContext"/>
-            </type>
-            <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.6"/>
-          </terminal>
-        </elements>
-        <elements xsi:type="xtext:Keyword" value="}"/>
-      </alternatives>
-    </rules>
-    <rules xsi:type="xtext:ParserRule" name="ProvidedDelegationConnector">
-      <type metamodel="/0/@metamodelDeclarations.4">
-        <classifier xsi:type="ecore:EClass" href="http://www.descartes-research.net/metamodel/repository_composites/0.1#//ProvidedDelegationConnector"/>
-      </type>
-      <alternatives xsi:type="xtext:Group">
-        <elements xsi:type="xtext:Keyword" value="ProvidedDelegationConnector"/>
-        <elements xsi:type="xtext:Assignment" feature="name" operator="=">
-          <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.6"/>
-        </elements>
-        <elements xsi:type="xtext:Keyword" value="{"/>
-        <elements xsi:type="xtext:Keyword" value="assemblyContext"/>
-        <elements xsi:type="xtext:Assignment" feature="assemblyContext" operator="=">
-          <terminal xsi:type="xtext:CrossReference">
-            <type metamodel="/0/@metamodelDeclarations.4">
-              <classifier xsi:type="ecore:EClass" href="http://www.descartes-research.net/metamodel/repository_composites/0.1#//AssemblyContext"/>
-            </type>
-            <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.6"/>
-          </terminal>
-        </elements>
-        <elements xsi:type="xtext:Keyword" value="innerProvidedRole"/>
-        <elements xsi:type="xtext:Assignment" feature="innerProvidedRole" operator="=">
-          <terminal xsi:type="xtext:CrossReference">
-            <type metamodel="/0/@metamodelDeclarations.3">
-              <classifier xsi:type="ecore:EClass" href="http://www.descartes-research.net/metamodel/repository/0.1#//ProvidedRole"/>
-            </type>
-            <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.6"/>
-          </terminal>
-        </elements>
-        <elements xsi:type="xtext:Keyword" value="outerProvidedRole"/>
-        <elements xsi:type="xtext:Assignment" feature="outerProvidedRole" operator="=">
-          <terminal xsi:type="xtext:CrossReference">
-            <type metamodel="/0/@metamodelDeclarations.3">
-              <classifier xsi:type="ecore:EClass" href="http://www.descartes-research.net/metamodel/repository/0.1#//ProvidedRole"/>
-            </type>
-            <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.6"/>
-          </terminal>
-        </elements>
-        <elements xsi:type="xtext:Keyword" value="}"/>
-      </alternatives>
-    </rules>
-    <rules xsi:type="xtext:ParserRule" name="RequiredDelegationConnector">
-      <type metamodel="/0/@metamodelDeclarations.4">
-        <classifier xsi:type="ecore:EClass" href="http://www.descartes-research.net/metamodel/repository_composites/0.1#//RequiredDelegationConnector"/>
-      </type>
-      <alternatives xsi:type="xtext:Group">
-        <elements xsi:type="xtext:Keyword" value="RequiredDelegationConnector"/>
-        <elements xsi:type="xtext:Assignment" feature="name" operator="=">
-          <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.6"/>
-        </elements>
-        <elements xsi:type="xtext:Keyword" value="{"/>
-        <elements xsi:type="xtext:Keyword" value="assemblyContext"/>
-        <elements xsi:type="xtext:Assignment" feature="assemblyContext" operator="=">
-          <terminal xsi:type="xtext:CrossReference">
-            <type metamodel="/0/@metamodelDeclarations.4">
-              <classifier xsi:type="ecore:EClass" href="http://www.descartes-research.net/metamodel/repository_composites/0.1#//AssemblyContext"/>
-            </type>
-            <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.6"/>
-          </terminal>
-        </elements>
-        <elements xsi:type="xtext:Keyword" value="innerRequiredRole"/>
-        <elements xsi:type="xtext:Assignment" feature="innerRequiredRole" operator="=">
-          <terminal xsi:type="xtext:CrossReference">
-            <type metamodel="/0/@metamodelDeclarations.3">
-              <classifier xsi:type="ecore:EClass" href="http://www.descartes-research.net/metamodel/repository/0.1#//RequiredRole"/>
-            </type>
-            <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.6"/>
-          </terminal>
-        </elements>
-        <elements xsi:type="xtext:Keyword" value="outerRequiredRole"/>
-        <elements xsi:type="xtext:Assignment" feature="outerRequiredRole" operator="=">
-          <terminal xsi:type="xtext:CrossReference">
-            <type metamodel="/0/@metamodelDeclarations.3">
-              <classifier xsi:type="ecore:EClass" href="http://www.descartes-research.net/metamodel/repository/0.1#//RequiredRole"/>
-            </type>
-            <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.6"/>
-          </terminal>
-        </elements>
-        <elements xsi:type="xtext:Keyword" value="}"/>
-      </alternatives>
-    </rules>
-  </xtext:Grammar>
-  <xtext:Grammar name="org.eclipse.xtext.common.Terminals" definesHiddenTokens="true" hiddenTokens="/1/@rules.5 /1/@rules.3 /1/@rules.4">
-    <metamodelDeclarations xsi:type="xtext:ReferencedMetamodel" alias="ecore">
-      <ePackage href="http://www.eclipse.org/emf/2002/Ecore#/"/>
-    </metamodelDeclarations>
-    <rules xsi:type="xtext:TerminalRule" name="ID">
-      <type metamodel="/1/@metamodelDeclarations.0">
-        <classifier xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-      </type>
-      <alternatives xsi:type="xtext:Group">
-        <elements xsi:type="xtext:Keyword" cardinality="?" value="^"/>
-        <elements xsi:type="xtext:Alternatives">
-          <elements xsi:type="xtext:CharacterRange">
-            <left value="a"/>
-            <right value="z"/>
-          </elements>
-          <elements xsi:type="xtext:CharacterRange">
-            <left value="A"/>
-            <right value="Z"/>
-          </elements>
-          <elements xsi:type="xtext:Keyword" value="_"/>
-        </elements>
-        <elements xsi:type="xtext:Alternatives" cardinality="*">
-          <elements xsi:type="xtext:CharacterRange">
-            <left value="a"/>
-            <right value="z"/>
-          </elements>
-          <elements xsi:type="xtext:CharacterRange">
-            <left value="A"/>
-            <right value="Z"/>
-          </elements>
-          <elements xsi:type="xtext:Keyword" value="_"/>
-          <elements xsi:type="xtext:CharacterRange">
-            <left value="0"/>
-            <right value="9"/>
-          </elements>
-        </elements>
-      </alternatives>
-    </rules>
-    <rules xsi:type="xtext:TerminalRule" name="INT">
-      <type metamodel="/1/@metamodelDeclarations.0">
-        <classifier xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EInt"/>
-      </type>
-      <alternatives xsi:type="xtext:CharacterRange" cardinality="+">
-        <left value="0"/>
-        <right value="9"/>
-      </alternatives>
-    </rules>
-    <rules xsi:type="xtext:TerminalRule" name="STRING">
-      <type metamodel="/1/@metamodelDeclarations.0">
-        <classifier xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-      </type>
-      <alternatives xsi:type="xtext:Alternatives">
-        <elements xsi:type="xtext:Group">
-          <elements xsi:type="xtext:Keyword" value="&quot;"/>
-          <elements xsi:type="xtext:Alternatives" cardinality="*">
-            <elements xsi:type="xtext:Group">
-              <elements xsi:type="xtext:Keyword" value="\"/>
-              <elements xsi:type="xtext:Alternatives">
-                <elements xsi:type="xtext:Keyword" value="b"/>
-                <elements xsi:type="xtext:Keyword" value="t"/>
-                <elements xsi:type="xtext:Keyword" value="n"/>
-                <elements xsi:type="xtext:Keyword" value="f"/>
-                <elements xsi:type="xtext:Keyword" value="r"/>
-                <elements xsi:type="xtext:Keyword" value="u"/>
-                <elements xsi:type="xtext:Keyword" value="&quot;"/>
-                <elements xsi:type="xtext:Keyword" value="'"/>
-                <elements xsi:type="xtext:Keyword" value="\"/>
-              </elements>
-            </elements>
-            <elements xsi:type="xtext:NegatedToken">
-              <terminal xsi:type="xtext:Alternatives">
-                <elements xsi:type="xtext:Keyword" value="\"/>
-                <elements xsi:type="xtext:Keyword" value="&quot;"/>
-              </terminal>
-            </elements>
-          </elements>
-          <elements xsi:type="xtext:Keyword" value="&quot;"/>
-        </elements>
-        <elements xsi:type="xtext:Group">
-          <elements xsi:type="xtext:Keyword" value="'"/>
-          <elements xsi:type="xtext:Alternatives" cardinality="*">
-            <elements xsi:type="xtext:Group">
-              <elements xsi:type="xtext:Keyword" value="\"/>
-              <elements xsi:type="xtext:Alternatives">
-                <elements xsi:type="xtext:Keyword" value="b"/>
-                <elements xsi:type="xtext:Keyword" value="t"/>
-                <elements xsi:type="xtext:Keyword" value="n"/>
-                <elements xsi:type="xtext:Keyword" value="f"/>
-                <elements xsi:type="xtext:Keyword" value="r"/>
-                <elements xsi:type="xtext:Keyword" value="u"/>
-                <elements xsi:type="xtext:Keyword" value="&quot;"/>
-                <elements xsi:type="xtext:Keyword" value="'"/>
-                <elements xsi:type="xtext:Keyword" value="\"/>
-              </elements>
-            </elements>
-            <elements xsi:type="xtext:NegatedToken">
-              <terminal xsi:type="xtext:Alternatives">
-                <elements xsi:type="xtext:Keyword" value="\"/>
-                <elements xsi:type="xtext:Keyword" value="'"/>
-              </terminal>
-            </elements>
-          </elements>
-          <elements xsi:type="xtext:Keyword" value="'"/>
-        </elements>
-      </alternatives>
-    </rules>
-    <rules xsi:type="xtext:TerminalRule" name="ML_COMMENT">
-      <type metamodel="/1/@metamodelDeclarations.0">
-        <classifier xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-      </type>
-      <alternatives xsi:type="xtext:Group">
-        <elements xsi:type="xtext:Keyword" value="/*"/>
-        <elements xsi:type="xtext:UntilToken">
-          <terminal xsi:type="xtext:Keyword" value="*/"/>
-        </elements>
-      </alternatives>
-    </rules>
-    <rules xsi:type="xtext:TerminalRule" name="SL_COMMENT">
-      <type metamodel="/1/@metamodelDeclarations.0">
-        <classifier xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-      </type>
-      <alternatives xsi:type="xtext:Group">
-        <elements xsi:type="xtext:Keyword" value="//"/>
-        <elements xsi:type="xtext:NegatedToken" cardinality="*">
-          <terminal xsi:type="xtext:Alternatives">
-            <elements xsi:type="xtext:Keyword" value="&#xA;"/>
-            <elements xsi:type="xtext:Keyword" value="&#xD;"/>
-          </terminal>
-        </elements>
-        <elements xsi:type="xtext:Group" cardinality="?">
-          <elements xsi:type="xtext:Keyword" cardinality="?" value="&#xD;"/>
-          <elements xsi:type="xtext:Keyword" value="&#xA;"/>
-        </elements>
-      </alternatives>
-    </rules>
-    <rules xsi:type="xtext:TerminalRule" name="WS">
-      <type metamodel="/1/@metamodelDeclarations.0">
-        <classifier xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-      </type>
-      <alternatives xsi:type="xtext:Alternatives" cardinality="+">
-        <elements xsi:type="xtext:Keyword" value=" "/>
-        <elements xsi:type="xtext:Keyword" value="&#x9;"/>
-        <elements xsi:type="xtext:Keyword" value="&#xD;"/>
-        <elements xsi:type="xtext:Keyword" value="&#xA;"/>
-      </alternatives>
-    </rules>
-    <rules xsi:type="xtext:TerminalRule" name="ANY_OTHER">
-      <type metamodel="/1/@metamodelDeclarations.0">
-        <classifier xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-      </type>
-      <alternatives xsi:type="xtext:Wildcard"/>
-    </rules>
-  </xtext:Grammar>
-</xmi:XMI>
diff --git a/org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/MyDslTestStandaloneSetupGenerated.java b/org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/MyDslTestStandaloneSetupGenerated.java
deleted file mode 100644
index aa3acd63..00000000
--- a/org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/MyDslTestStandaloneSetupGenerated.java
+++ /dev/null
@@ -1,40 +0,0 @@
-
-package org.xtext.example.mydsl;
-
-import org.eclipse.emf.ecore.EPackage;
-import org.eclipse.xtext.ISetup;
-import org.eclipse.emf.ecore.resource.Resource;
-
-import com.google.inject.Guice;
-import com.google.inject.Injector;
-
-/**
- * Generated from StandaloneSetup.xpt!
- */
-@SuppressWarnings("all")
-public class MyDslTestStandaloneSetupGenerated implements ISetup {
-
-	public Injector createInjectorAndDoEMFRegistration() {
-		org.eclipse.xtext.common.TerminalsStandaloneSetup.doSetup();
-
-		Injector injector = createInjector();
-		register(injector);
-		return injector;
-	}
-	
-	public Injector createInjector() {
-		return Guice.createInjector(new org.xtext.example.mydsl.MyDslTestRuntimeModule());
-	}
-	
-	public void register(Injector injector) {
-
-		org.eclipse.xtext.resource.IResourceFactory resourceFactory = injector.getInstance(org.eclipse.xtext.resource.IResourceFactory.class);
-		org.eclipse.xtext.resource.IResourceServiceProvider serviceProvider = injector.getInstance(org.eclipse.xtext.resource.IResourceServiceProvider.class);
-		Resource.Factory.Registry.INSTANCE.getExtensionToFactoryMap().put("mydslTest", resourceFactory);
-		org.eclipse.xtext.resource.IResourceServiceProvider.Registry.INSTANCE.getExtensionToFactoryMap().put("mydslTest", serviceProvider);
-		
-
-
-
-	}
-}
diff --git a/org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parseTreeConstruction/MyDslTestParsetreeConstructor.java b/org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parseTreeConstruction/MyDslTestParsetreeConstructor.java
deleted file mode 100644
index c5f256be..00000000
--- a/org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parseTreeConstruction/MyDslTestParsetreeConstructor.java
+++ /dev/null
@@ -1,9535 +0,0 @@
-/*
-* generated by Xtext
-*/
-package org.xtext.example.mydsl.parseTreeConstruction;
-
-import org.eclipse.emf.ecore.*;
-import org.eclipse.xtext.*;
-import org.eclipse.xtext.parsetree.reconstr.IEObjectConsumer;
-import org.eclipse.xtext.parsetree.reconstr.impl.AbstractParseTreeConstructor;
-
-import org.xtext.example.mydsl.services.MyDslTestGrammarAccess;
-
-import com.google.inject.Inject;
-
-@SuppressWarnings("all")
-public class MyDslTestParsetreeConstructor extends AbstractParseTreeConstructor {
-		
-	@Inject
-	private MyDslTestGrammarAccess grammarAccess;
-	
-	@Override
-	protected AbstractToken getRootToken(IEObjectConsumer inst) {
-		return new ThisRootNode(inst);	
-	}
-	
-protected class ThisRootNode extends RootToken {
-	public ThisRootNode(IEObjectConsumer inst) {
-		super(inst);
-	}
-	
-	@Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new Repository_Group(this, this, 0, inst);
-			case 1: return new Import_Group(this, this, 1, inst);
-			case 2: return new DataType_Alternatives(this, this, 2, inst);
-			case 3: return new RepositoryComponent_Alternatives(this, this, 3, inst);
-			case 4: return new Interface_Group(this, this, 4, inst);
-			case 5: return new RepositoryComponent_Impl_Group(this, this, 5, inst);
-			case 6: return new CollectionDataType_Group(this, this, 6, inst);
-			case 7: return new CompositeDataType_Group(this, this, 7, inst);
-			case 8: return new PrimitiveDataType_Group(this, this, 8, inst);
-			case 9: return new InnerDeclaration_Group(this, this, 9, inst);
-			case 10: return new Signature_Group(this, this, 10, inst);
-			case 11: return new Parameter_Group(this, this, 11, inst);
-			case 12: return new ProvidedRole_Group(this, this, 12, inst);
-			case 13: return new RequiredRole_Group(this, this, 13, inst);
-			case 14: return new BasicComponent_Group(this, this, 14, inst);
-			case 15: return new CompositeComponent_Group(this, this, 15, inst);
-			case 16: return new SubSystem_Group(this, this, 16, inst);
-			case 17: return new ComposedStructureAssembly_Group(this, this, 17, inst);
-			case 18: return new AssemblyContext_Group(this, this, 18, inst);
-			case 19: return new AssemblyConnector_Group(this, this, 19, inst);
-			case 20: return new ProvidedDelegationConnector_Group(this, this, 20, inst);
-			case 21: return new RequiredDelegationConnector_Group(this, this, 21, inst);
-			default: return null;
-		}	
-	}	
-}
-	
-
-/************ begin Rule Repository ****************
- *
- * / *Repository returns repository::Repository:
- * 	'Repository'
- * 	name=QualifiedName
- * 	'{' 
- * (
- * 		( datatypes+=DataType ) | 
- * 		(interfaces+=Interface) |
- * 		(components+=RepositoryComponent )|
- * 		(imports+=Import)
- * 		
- * )*
- *     '}';
- *     
- *   * /
- * 
- * Repository returns repository::Repository:
- * 
- * 	"Repository" name=QualifiedName "{" ("imports" "{" imports+=Import ("," imports+=Import)* "}")? ("datatypes" "{"
- * 
- * 	datatypes+=DataType ("," datatypes+=DataType)* "}")? ("components" "{" components+=RepositoryComponent (";"
- * 
- * 	components+=RepositoryComponent)* "}")? ("interfaces" "{" interfaces+=Interface ("," interfaces+=Interface)* "}")?
- * 
- * 	"}";
- *
- **/
-
-// "Repository" name=QualifiedName "{" ("imports" "{" imports+=Import ("," imports+=Import)* "}")? ("datatypes" "{"
-// 
-// datatypes+=DataType ("," datatypes+=DataType)* "}")? ("components" "{" components+=RepositoryComponent (";"
-// 
-// components+=RepositoryComponent)* "}")? ("interfaces" "{" interfaces+=Interface ("," interfaces+=Interface)* "}")? "}"
-protected class Repository_Group extends GroupToken {
-	
-	public Repository_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Group getGrammarElement() {
-		return grammarAccess.getRepositoryAccess().getGroup();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new Repository_RightCurlyBracketKeyword_7(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override
-	public IEObjectConsumer tryConsume() {
-		if(getEObject().eClass() != grammarAccess.getRepositoryRule().getType().getClassifier())
-			return null;
-		return eObjectConsumer;
-	}
-
-}
-
-// "Repository"
-protected class Repository_RepositoryKeyword_0 extends KeywordToken  {
-	
-	public Repository_RepositoryKeyword_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getRepositoryAccess().getRepositoryKeyword_0();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			default: return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst);
-		}	
-	}
-
-}
-
-// name=QualifiedName
-protected class Repository_NameAssignment_1 extends AssignmentToken  {
-	
-	public Repository_NameAssignment_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Assignment getGrammarElement() {
-		return grammarAccess.getRepositoryAccess().getNameAssignment_1();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new Repository_RepositoryKeyword_0(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override	
-	public IEObjectConsumer tryConsume() {
-		if((value = eObjectConsumer.getConsumable("name",true)) == null) return null;
-		IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("name");
-		if(valueSerializer.isValid(obj.getEObject(), grammarAccess.getRepositoryAccess().getNameQualifiedNameParserRuleCall_1_0(), value, null)) {
-			type = AssignmentType.DATATYPE_RULE_CALL;
-			element = grammarAccess.getRepositoryAccess().getNameQualifiedNameParserRuleCall_1_0();
-			return obj;
-		}
-		return null;
-	}
-
-}
-
-// "{"
-protected class Repository_LeftCurlyBracketKeyword_2 extends KeywordToken  {
-	
-	public Repository_LeftCurlyBracketKeyword_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getRepositoryAccess().getLeftCurlyBracketKeyword_2();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new Repository_NameAssignment_1(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// ("imports" "{" imports+=Import ("," imports+=Import)* "}")?
-protected class Repository_Group_3 extends GroupToken {
-	
-	public Repository_Group_3(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Group getGrammarElement() {
-		return grammarAccess.getRepositoryAccess().getGroup_3();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new Repository_RightCurlyBracketKeyword_3_4(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// "imports"
-protected class Repository_ImportsKeyword_3_0 extends KeywordToken  {
-	
-	public Repository_ImportsKeyword_3_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getRepositoryAccess().getImportsKeyword_3_0();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new Repository_LeftCurlyBracketKeyword_2(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// "{"
-protected class Repository_LeftCurlyBracketKeyword_3_1 extends KeywordToken  {
-	
-	public Repository_LeftCurlyBracketKeyword_3_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getRepositoryAccess().getLeftCurlyBracketKeyword_3_1();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new Repository_ImportsKeyword_3_0(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// imports+=Import
-protected class Repository_ImportsAssignment_3_2 extends AssignmentToken  {
-	
-	public Repository_ImportsAssignment_3_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Assignment getGrammarElement() {
-		return grammarAccess.getRepositoryAccess().getImportsAssignment_3_2();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new Import_Group(this, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override	
-	public IEObjectConsumer tryConsume() {
-		if((value = eObjectConsumer.getConsumable("imports",true)) == null) return null;
-		IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("imports");
-		if(value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl
-			IEObjectConsumer param = createEObjectConsumer((EObject)value);
-			if(param.isInstanceOf(grammarAccess.getImportRule().getType().getClassifier())) {
-				type = AssignmentType.PARSER_RULE_CALL;
-				element = grammarAccess.getRepositoryAccess().getImportsImportParserRuleCall_3_2_0(); 
-				consumed = obj;
-				return param;
-			}
-		}
-		return null;
-	}
-
-    @Override
-	public AbstractToken createFollowerAfterReturn(AbstractToken next,	int actIndex, int index, IEObjectConsumer inst) {
-		if(value == inst.getEObject() && !inst.isConsumed()) return null;
-		switch(index) {
-			case 0: return new Repository_LeftCurlyBracketKeyword_3_1(lastRuleCallOrigin, next, actIndex, consumed);
-			default: return null;
-		}	
-	}	
-}
-
-// ("," imports+=Import)*
-protected class Repository_Group_3_3 extends GroupToken {
-	
-	public Repository_Group_3_3(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Group getGrammarElement() {
-		return grammarAccess.getRepositoryAccess().getGroup_3_3();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new Repository_ImportsAssignment_3_3_1(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// ","
-protected class Repository_CommaKeyword_3_3_0 extends KeywordToken  {
-	
-	public Repository_CommaKeyword_3_3_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getRepositoryAccess().getCommaKeyword_3_3_0();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new Repository_Group_3_3(lastRuleCallOrigin, this, 0, inst);
-			case 1: return new Repository_ImportsAssignment_3_2(lastRuleCallOrigin, this, 1, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// imports+=Import
-protected class Repository_ImportsAssignment_3_3_1 extends AssignmentToken  {
-	
-	public Repository_ImportsAssignment_3_3_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Assignment getGrammarElement() {
-		return grammarAccess.getRepositoryAccess().getImportsAssignment_3_3_1();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new Import_Group(this, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override	
-	public IEObjectConsumer tryConsume() {
-		if((value = eObjectConsumer.getConsumable("imports",false)) == null) return null;
-		IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("imports");
-		if(value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl
-			IEObjectConsumer param = createEObjectConsumer((EObject)value);
-			if(param.isInstanceOf(grammarAccess.getImportRule().getType().getClassifier())) {
-				type = AssignmentType.PARSER_RULE_CALL;
-				element = grammarAccess.getRepositoryAccess().getImportsImportParserRuleCall_3_3_1_0(); 
-				consumed = obj;
-				return param;
-			}
-		}
-		return null;
-	}
-
-    @Override
-	public AbstractToken createFollowerAfterReturn(AbstractToken next,	int actIndex, int index, IEObjectConsumer inst) {
-		if(value == inst.getEObject() && !inst.isConsumed()) return null;
-		switch(index) {
-			case 0: return new Repository_CommaKeyword_3_3_0(lastRuleCallOrigin, next, actIndex, consumed);
-			default: return null;
-		}	
-	}	
-}
-
-
-// "}"
-protected class Repository_RightCurlyBracketKeyword_3_4 extends KeywordToken  {
-	
-	public Repository_RightCurlyBracketKeyword_3_4(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getRepositoryAccess().getRightCurlyBracketKeyword_3_4();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new Repository_Group_3_3(lastRuleCallOrigin, this, 0, inst);
-			case 1: return new Repository_ImportsAssignment_3_2(lastRuleCallOrigin, this, 1, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-
-// ("datatypes" "{" datatypes+=DataType ("," datatypes+=DataType)* "}")?
-protected class Repository_Group_4 extends GroupToken {
-	
-	public Repository_Group_4(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Group getGrammarElement() {
-		return grammarAccess.getRepositoryAccess().getGroup_4();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new Repository_RightCurlyBracketKeyword_4_4(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// "datatypes"
-protected class Repository_DatatypesKeyword_4_0 extends KeywordToken  {
-	
-	public Repository_DatatypesKeyword_4_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getRepositoryAccess().getDatatypesKeyword_4_0();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new Repository_Group_3(lastRuleCallOrigin, this, 0, inst);
-			case 1: return new Repository_LeftCurlyBracketKeyword_2(lastRuleCallOrigin, this, 1, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// "{"
-protected class Repository_LeftCurlyBracketKeyword_4_1 extends KeywordToken  {
-	
-	public Repository_LeftCurlyBracketKeyword_4_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getRepositoryAccess().getLeftCurlyBracketKeyword_4_1();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new Repository_DatatypesKeyword_4_0(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// datatypes+=DataType
-protected class Repository_DatatypesAssignment_4_2 extends AssignmentToken  {
-	
-	public Repository_DatatypesAssignment_4_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Assignment getGrammarElement() {
-		return grammarAccess.getRepositoryAccess().getDatatypesAssignment_4_2();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new DataType_Alternatives(this, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override	
-	public IEObjectConsumer tryConsume() {
-		if((value = eObjectConsumer.getConsumable("datatypes",true)) == null) return null;
-		IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("datatypes");
-		if(value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl
-			IEObjectConsumer param = createEObjectConsumer((EObject)value);
-			if(param.isInstanceOf(grammarAccess.getDataTypeRule().getType().getClassifier())) {
-				type = AssignmentType.PARSER_RULE_CALL;
-				element = grammarAccess.getRepositoryAccess().getDatatypesDataTypeParserRuleCall_4_2_0(); 
-				consumed = obj;
-				return param;
-			}
-		}
-		return null;
-	}
-
-    @Override
-	public AbstractToken createFollowerAfterReturn(AbstractToken next,	int actIndex, int index, IEObjectConsumer inst) {
-		if(value == inst.getEObject() && !inst.isConsumed()) return null;
-		switch(index) {
-			case 0: return new Repository_LeftCurlyBracketKeyword_4_1(lastRuleCallOrigin, next, actIndex, consumed);
-			default: return null;
-		}	
-	}	
-}
-
-// ("," datatypes+=DataType)*
-protected class Repository_Group_4_3 extends GroupToken {
-	
-	public Repository_Group_4_3(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Group getGrammarElement() {
-		return grammarAccess.getRepositoryAccess().getGroup_4_3();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new Repository_DatatypesAssignment_4_3_1(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// ","
-protected class Repository_CommaKeyword_4_3_0 extends KeywordToken  {
-	
-	public Repository_CommaKeyword_4_3_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getRepositoryAccess().getCommaKeyword_4_3_0();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new Repository_Group_4_3(lastRuleCallOrigin, this, 0, inst);
-			case 1: return new Repository_DatatypesAssignment_4_2(lastRuleCallOrigin, this, 1, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// datatypes+=DataType
-protected class Repository_DatatypesAssignment_4_3_1 extends AssignmentToken  {
-	
-	public Repository_DatatypesAssignment_4_3_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Assignment getGrammarElement() {
-		return grammarAccess.getRepositoryAccess().getDatatypesAssignment_4_3_1();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new DataType_Alternatives(this, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override	
-	public IEObjectConsumer tryConsume() {
-		if((value = eObjectConsumer.getConsumable("datatypes",false)) == null) return null;
-		IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("datatypes");
-		if(value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl
-			IEObjectConsumer param = createEObjectConsumer((EObject)value);
-			if(param.isInstanceOf(grammarAccess.getDataTypeRule().getType().getClassifier())) {
-				type = AssignmentType.PARSER_RULE_CALL;
-				element = grammarAccess.getRepositoryAccess().getDatatypesDataTypeParserRuleCall_4_3_1_0(); 
-				consumed = obj;
-				return param;
-			}
-		}
-		return null;
-	}
-
-    @Override
-	public AbstractToken createFollowerAfterReturn(AbstractToken next,	int actIndex, int index, IEObjectConsumer inst) {
-		if(value == inst.getEObject() && !inst.isConsumed()) return null;
-		switch(index) {
-			case 0: return new Repository_CommaKeyword_4_3_0(lastRuleCallOrigin, next, actIndex, consumed);
-			default: return null;
-		}	
-	}	
-}
-
-
-// "}"
-protected class Repository_RightCurlyBracketKeyword_4_4 extends KeywordToken  {
-	
-	public Repository_RightCurlyBracketKeyword_4_4(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getRepositoryAccess().getRightCurlyBracketKeyword_4_4();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new Repository_Group_4_3(lastRuleCallOrigin, this, 0, inst);
-			case 1: return new Repository_DatatypesAssignment_4_2(lastRuleCallOrigin, this, 1, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-
-// ("components" "{" components+=RepositoryComponent (";" components+=RepositoryComponent)* "}")?
-protected class Repository_Group_5 extends GroupToken {
-	
-	public Repository_Group_5(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Group getGrammarElement() {
-		return grammarAccess.getRepositoryAccess().getGroup_5();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new Repository_RightCurlyBracketKeyword_5_4(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// "components"
-protected class Repository_ComponentsKeyword_5_0 extends KeywordToken  {
-	
-	public Repository_ComponentsKeyword_5_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getRepositoryAccess().getComponentsKeyword_5_0();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new Repository_Group_4(lastRuleCallOrigin, this, 0, inst);
-			case 1: return new Repository_Group_3(lastRuleCallOrigin, this, 1, inst);
-			case 2: return new Repository_LeftCurlyBracketKeyword_2(lastRuleCallOrigin, this, 2, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// "{"
-protected class Repository_LeftCurlyBracketKeyword_5_1 extends KeywordToken  {
-	
-	public Repository_LeftCurlyBracketKeyword_5_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getRepositoryAccess().getLeftCurlyBracketKeyword_5_1();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new Repository_ComponentsKeyword_5_0(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// components+=RepositoryComponent
-protected class Repository_ComponentsAssignment_5_2 extends AssignmentToken  {
-	
-	public Repository_ComponentsAssignment_5_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Assignment getGrammarElement() {
-		return grammarAccess.getRepositoryAccess().getComponentsAssignment_5_2();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new RepositoryComponent_Alternatives(this, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override	
-	public IEObjectConsumer tryConsume() {
-		if((value = eObjectConsumer.getConsumable("components",true)) == null) return null;
-		IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("components");
-		if(value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl
-			IEObjectConsumer param = createEObjectConsumer((EObject)value);
-			if(param.isInstanceOf(grammarAccess.getRepositoryComponentRule().getType().getClassifier())) {
-				type = AssignmentType.PARSER_RULE_CALL;
-				element = grammarAccess.getRepositoryAccess().getComponentsRepositoryComponentParserRuleCall_5_2_0(); 
-				consumed = obj;
-				return param;
-			}
-		}
-		return null;
-	}
-
-    @Override
-	public AbstractToken createFollowerAfterReturn(AbstractToken next,	int actIndex, int index, IEObjectConsumer inst) {
-		if(value == inst.getEObject() && !inst.isConsumed()) return null;
-		switch(index) {
-			case 0: return new Repository_LeftCurlyBracketKeyword_5_1(lastRuleCallOrigin, next, actIndex, consumed);
-			default: return null;
-		}	
-	}	
-}
-
-// (";" components+=RepositoryComponent)*
-protected class Repository_Group_5_3 extends GroupToken {
-	
-	public Repository_Group_5_3(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Group getGrammarElement() {
-		return grammarAccess.getRepositoryAccess().getGroup_5_3();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new Repository_ComponentsAssignment_5_3_1(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// ";"
-protected class Repository_SemicolonKeyword_5_3_0 extends KeywordToken  {
-	
-	public Repository_SemicolonKeyword_5_3_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getRepositoryAccess().getSemicolonKeyword_5_3_0();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new Repository_Group_5_3(lastRuleCallOrigin, this, 0, inst);
-			case 1: return new Repository_ComponentsAssignment_5_2(lastRuleCallOrigin, this, 1, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// components+=RepositoryComponent
-protected class Repository_ComponentsAssignment_5_3_1 extends AssignmentToken  {
-	
-	public Repository_ComponentsAssignment_5_3_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Assignment getGrammarElement() {
-		return grammarAccess.getRepositoryAccess().getComponentsAssignment_5_3_1();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new RepositoryComponent_Alternatives(this, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override	
-	public IEObjectConsumer tryConsume() {
-		if((value = eObjectConsumer.getConsumable("components",false)) == null) return null;
-		IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("components");
-		if(value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl
-			IEObjectConsumer param = createEObjectConsumer((EObject)value);
-			if(param.isInstanceOf(grammarAccess.getRepositoryComponentRule().getType().getClassifier())) {
-				type = AssignmentType.PARSER_RULE_CALL;
-				element = grammarAccess.getRepositoryAccess().getComponentsRepositoryComponentParserRuleCall_5_3_1_0(); 
-				consumed = obj;
-				return param;
-			}
-		}
-		return null;
-	}
-
-    @Override
-	public AbstractToken createFollowerAfterReturn(AbstractToken next,	int actIndex, int index, IEObjectConsumer inst) {
-		if(value == inst.getEObject() && !inst.isConsumed()) return null;
-		switch(index) {
-			case 0: return new Repository_SemicolonKeyword_5_3_0(lastRuleCallOrigin, next, actIndex, consumed);
-			default: return null;
-		}	
-	}	
-}
-
-
-// "}"
-protected class Repository_RightCurlyBracketKeyword_5_4 extends KeywordToken  {
-	
-	public Repository_RightCurlyBracketKeyword_5_4(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getRepositoryAccess().getRightCurlyBracketKeyword_5_4();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new Repository_Group_5_3(lastRuleCallOrigin, this, 0, inst);
-			case 1: return new Repository_ComponentsAssignment_5_2(lastRuleCallOrigin, this, 1, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-
-// ("interfaces" "{" interfaces+=Interface ("," interfaces+=Interface)* "}")?
-protected class Repository_Group_6 extends GroupToken {
-	
-	public Repository_Group_6(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Group getGrammarElement() {
-		return grammarAccess.getRepositoryAccess().getGroup_6();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new Repository_RightCurlyBracketKeyword_6_4(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// "interfaces"
-protected class Repository_InterfacesKeyword_6_0 extends KeywordToken  {
-	
-	public Repository_InterfacesKeyword_6_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getRepositoryAccess().getInterfacesKeyword_6_0();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new Repository_Group_5(lastRuleCallOrigin, this, 0, inst);
-			case 1: return new Repository_Group_4(lastRuleCallOrigin, this, 1, inst);
-			case 2: return new Repository_Group_3(lastRuleCallOrigin, this, 2, inst);
-			case 3: return new Repository_LeftCurlyBracketKeyword_2(lastRuleCallOrigin, this, 3, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// "{"
-protected class Repository_LeftCurlyBracketKeyword_6_1 extends KeywordToken  {
-	
-	public Repository_LeftCurlyBracketKeyword_6_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getRepositoryAccess().getLeftCurlyBracketKeyword_6_1();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new Repository_InterfacesKeyword_6_0(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// interfaces+=Interface
-protected class Repository_InterfacesAssignment_6_2 extends AssignmentToken  {
-	
-	public Repository_InterfacesAssignment_6_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Assignment getGrammarElement() {
-		return grammarAccess.getRepositoryAccess().getInterfacesAssignment_6_2();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new Interface_Group(this, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override	
-	public IEObjectConsumer tryConsume() {
-		if((value = eObjectConsumer.getConsumable("interfaces",true)) == null) return null;
-		IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("interfaces");
-		if(value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl
-			IEObjectConsumer param = createEObjectConsumer((EObject)value);
-			if(param.isInstanceOf(grammarAccess.getInterfaceRule().getType().getClassifier())) {
-				type = AssignmentType.PARSER_RULE_CALL;
-				element = grammarAccess.getRepositoryAccess().getInterfacesInterfaceParserRuleCall_6_2_0(); 
-				consumed = obj;
-				return param;
-			}
-		}
-		return null;
-	}
-
-    @Override
-	public AbstractToken createFollowerAfterReturn(AbstractToken next,	int actIndex, int index, IEObjectConsumer inst) {
-		if(value == inst.getEObject() && !inst.isConsumed()) return null;
-		switch(index) {
-			case 0: return new Repository_LeftCurlyBracketKeyword_6_1(lastRuleCallOrigin, next, actIndex, consumed);
-			default: return null;
-		}	
-	}	
-}
-
-// ("," interfaces+=Interface)*
-protected class Repository_Group_6_3 extends GroupToken {
-	
-	public Repository_Group_6_3(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Group getGrammarElement() {
-		return grammarAccess.getRepositoryAccess().getGroup_6_3();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new Repository_InterfacesAssignment_6_3_1(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// ","
-protected class Repository_CommaKeyword_6_3_0 extends KeywordToken  {
-	
-	public Repository_CommaKeyword_6_3_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getRepositoryAccess().getCommaKeyword_6_3_0();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new Repository_Group_6_3(lastRuleCallOrigin, this, 0, inst);
-			case 1: return new Repository_InterfacesAssignment_6_2(lastRuleCallOrigin, this, 1, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// interfaces+=Interface
-protected class Repository_InterfacesAssignment_6_3_1 extends AssignmentToken  {
-	
-	public Repository_InterfacesAssignment_6_3_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Assignment getGrammarElement() {
-		return grammarAccess.getRepositoryAccess().getInterfacesAssignment_6_3_1();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new Interface_Group(this, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override	
-	public IEObjectConsumer tryConsume() {
-		if((value = eObjectConsumer.getConsumable("interfaces",false)) == null) return null;
-		IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("interfaces");
-		if(value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl
-			IEObjectConsumer param = createEObjectConsumer((EObject)value);
-			if(param.isInstanceOf(grammarAccess.getInterfaceRule().getType().getClassifier())) {
-				type = AssignmentType.PARSER_RULE_CALL;
-				element = grammarAccess.getRepositoryAccess().getInterfacesInterfaceParserRuleCall_6_3_1_0(); 
-				consumed = obj;
-				return param;
-			}
-		}
-		return null;
-	}
-
-    @Override
-	public AbstractToken createFollowerAfterReturn(AbstractToken next,	int actIndex, int index, IEObjectConsumer inst) {
-		if(value == inst.getEObject() && !inst.isConsumed()) return null;
-		switch(index) {
-			case 0: return new Repository_CommaKeyword_6_3_0(lastRuleCallOrigin, next, actIndex, consumed);
-			default: return null;
-		}	
-	}	
-}
-
-
-// "}"
-protected class Repository_RightCurlyBracketKeyword_6_4 extends KeywordToken  {
-	
-	public Repository_RightCurlyBracketKeyword_6_4(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getRepositoryAccess().getRightCurlyBracketKeyword_6_4();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new Repository_Group_6_3(lastRuleCallOrigin, this, 0, inst);
-			case 1: return new Repository_InterfacesAssignment_6_2(lastRuleCallOrigin, this, 1, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-
-// "}"
-protected class Repository_RightCurlyBracketKeyword_7 extends KeywordToken  {
-	
-	public Repository_RightCurlyBracketKeyword_7(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getRepositoryAccess().getRightCurlyBracketKeyword_7();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new Repository_Group_6(lastRuleCallOrigin, this, 0, inst);
-			case 1: return new Repository_Group_5(lastRuleCallOrigin, this, 1, inst);
-			case 2: return new Repository_Group_4(lastRuleCallOrigin, this, 2, inst);
-			case 3: return new Repository_Group_3(lastRuleCallOrigin, this, 3, inst);
-			case 4: return new Repository_LeftCurlyBracketKeyword_2(lastRuleCallOrigin, this, 4, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-
-/************ end Rule Repository ****************/
-
-
-/************ begin Rule Import ****************
- *
- * Import returns repository::Import:
- * 
- * 	"import" importedNamespace=QualifiedNameWithWildCard;
- *
- **/
-
-// "import" importedNamespace=QualifiedNameWithWildCard
-protected class Import_Group extends GroupToken {
-	
-	public Import_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Group getGrammarElement() {
-		return grammarAccess.getImportAccess().getGroup();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new Import_ImportedNamespaceAssignment_1(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override
-	public IEObjectConsumer tryConsume() {
-		if(getEObject().eClass() != grammarAccess.getImportRule().getType().getClassifier())
-			return null;
-		return eObjectConsumer;
-	}
-
-}
-
-// "import"
-protected class Import_ImportKeyword_0 extends KeywordToken  {
-	
-	public Import_ImportKeyword_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getImportAccess().getImportKeyword_0();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			default: return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst);
-		}	
-	}
-
-}
-
-// importedNamespace=QualifiedNameWithWildCard
-protected class Import_ImportedNamespaceAssignment_1 extends AssignmentToken  {
-	
-	public Import_ImportedNamespaceAssignment_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Assignment getGrammarElement() {
-		return grammarAccess.getImportAccess().getImportedNamespaceAssignment_1();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new Import_ImportKeyword_0(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override	
-	public IEObjectConsumer tryConsume() {
-		if((value = eObjectConsumer.getConsumable("importedNamespace",true)) == null) return null;
-		IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("importedNamespace");
-		if(valueSerializer.isValid(obj.getEObject(), grammarAccess.getImportAccess().getImportedNamespaceQualifiedNameWithWildCardParserRuleCall_1_0(), value, null)) {
-			type = AssignmentType.DATATYPE_RULE_CALL;
-			element = grammarAccess.getImportAccess().getImportedNamespaceQualifiedNameWithWildCardParserRuleCall_1_0();
-			return obj;
-		}
-		return null;
-	}
-
-}
-
-
-/************ end Rule Import ****************/
-
-
-
-
-/************ begin Rule DataType ****************
- *
- * DataType returns repository::DataType:
- * 
- * 	CollectionDataType | CompositeDataType | PrimitiveDataType;
- *
- **/
-
-// CollectionDataType | CompositeDataType | PrimitiveDataType
-protected class DataType_Alternatives extends AlternativesToken {
-
-	public DataType_Alternatives(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Alternatives getGrammarElement() {
-		return grammarAccess.getDataTypeAccess().getAlternatives();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new DataType_CollectionDataTypeParserRuleCall_0(lastRuleCallOrigin, this, 0, inst);
-			case 1: return new DataType_CompositeDataTypeParserRuleCall_1(lastRuleCallOrigin, this, 1, inst);
-			case 2: return new DataType_PrimitiveDataTypeParserRuleCall_2(lastRuleCallOrigin, this, 2, inst);
-			default: return null;
-		}	
-	}
-
-    @Override
-	public IEObjectConsumer tryConsume() {
-		if(getEObject().eClass() != grammarAccess.getCollectionDataTypeRule().getType().getClassifier() && 
-		   getEObject().eClass() != grammarAccess.getCompositeDataTypeRule().getType().getClassifier() && 
-		   getEObject().eClass() != grammarAccess.getPrimitiveDataTypeRule().getType().getClassifier())
-			return null;
-		return eObjectConsumer;
-	}
-
-}
-
-// CollectionDataType
-protected class DataType_CollectionDataTypeParserRuleCall_0 extends RuleCallToken {
-	
-	public DataType_CollectionDataTypeParserRuleCall_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public RuleCall getGrammarElement() {
-		return grammarAccess.getDataTypeAccess().getCollectionDataTypeParserRuleCall_0();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new CollectionDataType_Group(this, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override
-	public IEObjectConsumer tryConsume() {
-		if(getEObject().eClass() != grammarAccess.getCollectionDataTypeRule().getType().getClassifier())
-			return null;
-		if(checkForRecursion(CollectionDataType_Group.class, eObjectConsumer)) return null;
-		return eObjectConsumer;
-	}
-	
-    @Override
-	public AbstractToken createFollowerAfterReturn(AbstractToken next,	int actIndex, int index, IEObjectConsumer inst) {
-		switch(index) {
-			default: return lastRuleCallOrigin.createFollowerAfterReturn(next, actIndex , index, inst);
-		}	
-	}	
-}
-
-// CompositeDataType
-protected class DataType_CompositeDataTypeParserRuleCall_1 extends RuleCallToken {
-	
-	public DataType_CompositeDataTypeParserRuleCall_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public RuleCall getGrammarElement() {
-		return grammarAccess.getDataTypeAccess().getCompositeDataTypeParserRuleCall_1();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new CompositeDataType_Group(this, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override
-	public IEObjectConsumer tryConsume() {
-		if(getEObject().eClass() != grammarAccess.getCompositeDataTypeRule().getType().getClassifier())
-			return null;
-		if(checkForRecursion(CompositeDataType_Group.class, eObjectConsumer)) return null;
-		return eObjectConsumer;
-	}
-	
-    @Override
-	public AbstractToken createFollowerAfterReturn(AbstractToken next,	int actIndex, int index, IEObjectConsumer inst) {
-		switch(index) {
-			default: return lastRuleCallOrigin.createFollowerAfterReturn(next, actIndex , index, inst);
-		}	
-	}	
-}
-
-// PrimitiveDataType
-protected class DataType_PrimitiveDataTypeParserRuleCall_2 extends RuleCallToken {
-	
-	public DataType_PrimitiveDataTypeParserRuleCall_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public RuleCall getGrammarElement() {
-		return grammarAccess.getDataTypeAccess().getPrimitiveDataTypeParserRuleCall_2();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new PrimitiveDataType_Group(this, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override
-	public IEObjectConsumer tryConsume() {
-		if(getEObject().eClass() != grammarAccess.getPrimitiveDataTypeRule().getType().getClassifier())
-			return null;
-		if(checkForRecursion(PrimitiveDataType_Group.class, eObjectConsumer)) return null;
-		return eObjectConsumer;
-	}
-	
-    @Override
-	public AbstractToken createFollowerAfterReturn(AbstractToken next,	int actIndex, int index, IEObjectConsumer inst) {
-		switch(index) {
-			default: return lastRuleCallOrigin.createFollowerAfterReturn(next, actIndex , index, inst);
-		}	
-	}	
-}
-
-
-/************ end Rule DataType ****************/
-
-
-/************ begin Rule RepositoryComponent ****************
- *
- * RepositoryComponent returns repository::RepositoryComponent:
- * 
- * 	RepositoryComponent_Impl | BasicComponent | CompositeComponent | SubSystem;
- *
- **/
-
-// RepositoryComponent_Impl | BasicComponent | CompositeComponent | SubSystem
-protected class RepositoryComponent_Alternatives extends AlternativesToken {
-
-	public RepositoryComponent_Alternatives(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Alternatives getGrammarElement() {
-		return grammarAccess.getRepositoryComponentAccess().getAlternatives();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new RepositoryComponent_RepositoryComponent_ImplParserRuleCall_0(lastRuleCallOrigin, this, 0, inst);
-			case 1: return new RepositoryComponent_BasicComponentParserRuleCall_1(lastRuleCallOrigin, this, 1, inst);
-			case 2: return new RepositoryComponent_CompositeComponentParserRuleCall_2(lastRuleCallOrigin, this, 2, inst);
-			case 3: return new RepositoryComponent_SubSystemParserRuleCall_3(lastRuleCallOrigin, this, 3, inst);
-			default: return null;
-		}	
-	}
-
-    @Override
-	public IEObjectConsumer tryConsume() {
-		if(getEObject().eClass() != grammarAccess.getBasicComponentRule().getType().getClassifier() && 
-		   getEObject().eClass() != grammarAccess.getCompositeComponentRule().getType().getClassifier() && 
-		   getEObject().eClass() != grammarAccess.getRepositoryComponent_ImplRule().getType().getClassifier() && 
-		   getEObject().eClass() != grammarAccess.getSubSystemRule().getType().getClassifier())
-			return null;
-		return eObjectConsumer;
-	}
-
-}
-
-// RepositoryComponent_Impl
-protected class RepositoryComponent_RepositoryComponent_ImplParserRuleCall_0 extends RuleCallToken {
-	
-	public RepositoryComponent_RepositoryComponent_ImplParserRuleCall_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public RuleCall getGrammarElement() {
-		return grammarAccess.getRepositoryComponentAccess().getRepositoryComponent_ImplParserRuleCall_0();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new RepositoryComponent_Impl_Group(this, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override
-	public IEObjectConsumer tryConsume() {
-		if(getEObject().eClass() != grammarAccess.getRepositoryComponent_ImplRule().getType().getClassifier())
-			return null;
-		if(checkForRecursion(RepositoryComponent_Impl_Group.class, eObjectConsumer)) return null;
-		return eObjectConsumer;
-	}
-	
-    @Override
-	public AbstractToken createFollowerAfterReturn(AbstractToken next,	int actIndex, int index, IEObjectConsumer inst) {
-		switch(index) {
-			default: return lastRuleCallOrigin.createFollowerAfterReturn(next, actIndex , index, inst);
-		}	
-	}	
-}
-
-// BasicComponent
-protected class RepositoryComponent_BasicComponentParserRuleCall_1 extends RuleCallToken {
-	
-	public RepositoryComponent_BasicComponentParserRuleCall_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public RuleCall getGrammarElement() {
-		return grammarAccess.getRepositoryComponentAccess().getBasicComponentParserRuleCall_1();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new BasicComponent_Group(this, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override
-	public IEObjectConsumer tryConsume() {
-		if(getEObject().eClass() != grammarAccess.getBasicComponentRule().getType().getClassifier())
-			return null;
-		if(checkForRecursion(BasicComponent_Group.class, eObjectConsumer)) return null;
-		return eObjectConsumer;
-	}
-	
-    @Override
-	public AbstractToken createFollowerAfterReturn(AbstractToken next,	int actIndex, int index, IEObjectConsumer inst) {
-		switch(index) {
-			default: return lastRuleCallOrigin.createFollowerAfterReturn(next, actIndex , index, inst);
-		}	
-	}	
-}
-
-// CompositeComponent
-protected class RepositoryComponent_CompositeComponentParserRuleCall_2 extends RuleCallToken {
-	
-	public RepositoryComponent_CompositeComponentParserRuleCall_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public RuleCall getGrammarElement() {
-		return grammarAccess.getRepositoryComponentAccess().getCompositeComponentParserRuleCall_2();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new CompositeComponent_Group(this, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override
-	public IEObjectConsumer tryConsume() {
-		if(getEObject().eClass() != grammarAccess.getCompositeComponentRule().getType().getClassifier())
-			return null;
-		if(checkForRecursion(CompositeComponent_Group.class, eObjectConsumer)) return null;
-		return eObjectConsumer;
-	}
-	
-    @Override
-	public AbstractToken createFollowerAfterReturn(AbstractToken next,	int actIndex, int index, IEObjectConsumer inst) {
-		switch(index) {
-			default: return lastRuleCallOrigin.createFollowerAfterReturn(next, actIndex , index, inst);
-		}	
-	}	
-}
-
-// SubSystem
-protected class RepositoryComponent_SubSystemParserRuleCall_3 extends RuleCallToken {
-	
-	public RepositoryComponent_SubSystemParserRuleCall_3(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public RuleCall getGrammarElement() {
-		return grammarAccess.getRepositoryComponentAccess().getSubSystemParserRuleCall_3();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new SubSystem_Group(this, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override
-	public IEObjectConsumer tryConsume() {
-		if(getEObject().eClass() != grammarAccess.getSubSystemRule().getType().getClassifier())
-			return null;
-		if(checkForRecursion(SubSystem_Group.class, eObjectConsumer)) return null;
-		return eObjectConsumer;
-	}
-	
-    @Override
-	public AbstractToken createFollowerAfterReturn(AbstractToken next,	int actIndex, int index, IEObjectConsumer inst) {
-		switch(index) {
-			default: return lastRuleCallOrigin.createFollowerAfterReturn(next, actIndex , index, inst);
-		}	
-	}	
-}
-
-
-/************ end Rule RepositoryComponent ****************/
-
-
-
-/************ begin Rule Interface ****************
- *
- * Interface returns repository::Interface:
- * 
- * 	"Interface" name=EString "{" ("parentInterfaces" "(" parentInterfaces+=[repository::Interface|EString] (","
- * 
- * 	parentInterfaces+=[repository::Interface|EString])* ")")? (signatures+=Signature ("," signatures+=Signature)*)? "}";
- *
- **/
-
-// "Interface" name=EString "{" ("parentInterfaces" "(" parentInterfaces+=[repository::Interface|EString] (","
-// 
-// parentInterfaces+=[repository::Interface|EString])* ")")? (signatures+=Signature ("," signatures+=Signature)*)? "}"
-protected class Interface_Group extends GroupToken {
-	
-	public Interface_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Group getGrammarElement() {
-		return grammarAccess.getInterfaceAccess().getGroup();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new Interface_RightCurlyBracketKeyword_5(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override
-	public IEObjectConsumer tryConsume() {
-		if(getEObject().eClass() != grammarAccess.getInterfaceRule().getType().getClassifier())
-			return null;
-		return eObjectConsumer;
-	}
-
-}
-
-// "Interface"
-protected class Interface_InterfaceKeyword_0 extends KeywordToken  {
-	
-	public Interface_InterfaceKeyword_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getInterfaceAccess().getInterfaceKeyword_0();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			default: return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst);
-		}	
-	}
-
-}
-
-// name=EString
-protected class Interface_NameAssignment_1 extends AssignmentToken  {
-	
-	public Interface_NameAssignment_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Assignment getGrammarElement() {
-		return grammarAccess.getInterfaceAccess().getNameAssignment_1();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new Interface_InterfaceKeyword_0(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override	
-	public IEObjectConsumer tryConsume() {
-		if((value = eObjectConsumer.getConsumable("name",true)) == null) return null;
-		IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("name");
-		if(valueSerializer.isValid(obj.getEObject(), grammarAccess.getInterfaceAccess().getNameEStringParserRuleCall_1_0(), value, null)) {
-			type = AssignmentType.DATATYPE_RULE_CALL;
-			element = grammarAccess.getInterfaceAccess().getNameEStringParserRuleCall_1_0();
-			return obj;
-		}
-		return null;
-	}
-
-}
-
-// "{"
-protected class Interface_LeftCurlyBracketKeyword_2 extends KeywordToken  {
-	
-	public Interface_LeftCurlyBracketKeyword_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getInterfaceAccess().getLeftCurlyBracketKeyword_2();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new Interface_NameAssignment_1(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// ("parentInterfaces" "(" parentInterfaces+=[repository::Interface|EString] (","
-// 
-// parentInterfaces+=[repository::Interface|EString])* ")")?
-protected class Interface_Group_3 extends GroupToken {
-	
-	public Interface_Group_3(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Group getGrammarElement() {
-		return grammarAccess.getInterfaceAccess().getGroup_3();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new Interface_RightParenthesisKeyword_3_4(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// "parentInterfaces"
-protected class Interface_ParentInterfacesKeyword_3_0 extends KeywordToken  {
-	
-	public Interface_ParentInterfacesKeyword_3_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getInterfaceAccess().getParentInterfacesKeyword_3_0();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new Interface_LeftCurlyBracketKeyword_2(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// "("
-protected class Interface_LeftParenthesisKeyword_3_1 extends KeywordToken  {
-	
-	public Interface_LeftParenthesisKeyword_3_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getInterfaceAccess().getLeftParenthesisKeyword_3_1();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new Interface_ParentInterfacesKeyword_3_0(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// parentInterfaces+=[repository::Interface|EString]
-protected class Interface_ParentInterfacesAssignment_3_2 extends AssignmentToken  {
-	
-	public Interface_ParentInterfacesAssignment_3_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Assignment getGrammarElement() {
-		return grammarAccess.getInterfaceAccess().getParentInterfacesAssignment_3_2();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new Interface_LeftParenthesisKeyword_3_1(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override	
-	public IEObjectConsumer tryConsume() {
-		if((value = eObjectConsumer.getConsumable("parentInterfaces",true)) == null) return null;
-		IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("parentInterfaces");
-		if(value instanceof EObject) { // org::eclipse::xtext::impl::CrossReferenceImpl
-			IEObjectConsumer param = createEObjectConsumer((EObject)value);
-			if(param.isInstanceOf(grammarAccess.getInterfaceAccess().getParentInterfacesInterfaceCrossReference_3_2_0().getType().getClassifier())) {
-				type = AssignmentType.CROSS_REFERENCE;
-				element = grammarAccess.getInterfaceAccess().getParentInterfacesInterfaceCrossReference_3_2_0(); 
-				return obj;
-			}
-		}
-		return null;
-	}
-
-}
-
-// ("," parentInterfaces+=[repository::Interface|EString])*
-protected class Interface_Group_3_3 extends GroupToken {
-	
-	public Interface_Group_3_3(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Group getGrammarElement() {
-		return grammarAccess.getInterfaceAccess().getGroup_3_3();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new Interface_ParentInterfacesAssignment_3_3_1(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// ","
-protected class Interface_CommaKeyword_3_3_0 extends KeywordToken  {
-	
-	public Interface_CommaKeyword_3_3_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getInterfaceAccess().getCommaKeyword_3_3_0();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new Interface_Group_3_3(lastRuleCallOrigin, this, 0, inst);
-			case 1: return new Interface_ParentInterfacesAssignment_3_2(lastRuleCallOrigin, this, 1, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// parentInterfaces+=[repository::Interface|EString]
-protected class Interface_ParentInterfacesAssignment_3_3_1 extends AssignmentToken  {
-	
-	public Interface_ParentInterfacesAssignment_3_3_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Assignment getGrammarElement() {
-		return grammarAccess.getInterfaceAccess().getParentInterfacesAssignment_3_3_1();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new Interface_CommaKeyword_3_3_0(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override	
-	public IEObjectConsumer tryConsume() {
-		if((value = eObjectConsumer.getConsumable("parentInterfaces",false)) == null) return null;
-		IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("parentInterfaces");
-		if(value instanceof EObject) { // org::eclipse::xtext::impl::CrossReferenceImpl
-			IEObjectConsumer param = createEObjectConsumer((EObject)value);
-			if(param.isInstanceOf(grammarAccess.getInterfaceAccess().getParentInterfacesInterfaceCrossReference_3_3_1_0().getType().getClassifier())) {
-				type = AssignmentType.CROSS_REFERENCE;
-				element = grammarAccess.getInterfaceAccess().getParentInterfacesInterfaceCrossReference_3_3_1_0(); 
-				return obj;
-			}
-		}
-		return null;
-	}
-
-}
-
-
-// ")"
-protected class Interface_RightParenthesisKeyword_3_4 extends KeywordToken  {
-	
-	public Interface_RightParenthesisKeyword_3_4(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getInterfaceAccess().getRightParenthesisKeyword_3_4();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new Interface_Group_3_3(lastRuleCallOrigin, this, 0, inst);
-			case 1: return new Interface_ParentInterfacesAssignment_3_2(lastRuleCallOrigin, this, 1, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-
-// (signatures+=Signature ("," signatures+=Signature)*)?
-protected class Interface_Group_4 extends GroupToken {
-	
-	public Interface_Group_4(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Group getGrammarElement() {
-		return grammarAccess.getInterfaceAccess().getGroup_4();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new Interface_Group_4_1(lastRuleCallOrigin, this, 0, inst);
-			case 1: return new Interface_SignaturesAssignment_4_0(lastRuleCallOrigin, this, 1, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// signatures+=Signature
-protected class Interface_SignaturesAssignment_4_0 extends AssignmentToken  {
-	
-	public Interface_SignaturesAssignment_4_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Assignment getGrammarElement() {
-		return grammarAccess.getInterfaceAccess().getSignaturesAssignment_4_0();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new Signature_Group(this, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override	
-	public IEObjectConsumer tryConsume() {
-		if((value = eObjectConsumer.getConsumable("signatures",true)) == null) return null;
-		IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("signatures");
-		if(value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl
-			IEObjectConsumer param = createEObjectConsumer((EObject)value);
-			if(param.isInstanceOf(grammarAccess.getSignatureRule().getType().getClassifier())) {
-				type = AssignmentType.PARSER_RULE_CALL;
-				element = grammarAccess.getInterfaceAccess().getSignaturesSignatureParserRuleCall_4_0_0(); 
-				consumed = obj;
-				return param;
-			}
-		}
-		return null;
-	}
-
-    @Override
-	public AbstractToken createFollowerAfterReturn(AbstractToken next,	int actIndex, int index, IEObjectConsumer inst) {
-		if(value == inst.getEObject() && !inst.isConsumed()) return null;
-		switch(index) {
-			case 0: return new Interface_Group_3(lastRuleCallOrigin, next, actIndex, consumed);
-			case 1: return new Interface_LeftCurlyBracketKeyword_2(lastRuleCallOrigin, next, actIndex, consumed);
-			default: return null;
-		}	
-	}	
-}
-
-// ("," signatures+=Signature)*
-protected class Interface_Group_4_1 extends GroupToken {
-	
-	public Interface_Group_4_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Group getGrammarElement() {
-		return grammarAccess.getInterfaceAccess().getGroup_4_1();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new Interface_SignaturesAssignment_4_1_1(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// ","
-protected class Interface_CommaKeyword_4_1_0 extends KeywordToken  {
-	
-	public Interface_CommaKeyword_4_1_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getInterfaceAccess().getCommaKeyword_4_1_0();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new Interface_Group_4_1(lastRuleCallOrigin, this, 0, inst);
-			case 1: return new Interface_SignaturesAssignment_4_0(lastRuleCallOrigin, this, 1, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// signatures+=Signature
-protected class Interface_SignaturesAssignment_4_1_1 extends AssignmentToken  {
-	
-	public Interface_SignaturesAssignment_4_1_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Assignment getGrammarElement() {
-		return grammarAccess.getInterfaceAccess().getSignaturesAssignment_4_1_1();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new Signature_Group(this, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override	
-	public IEObjectConsumer tryConsume() {
-		if((value = eObjectConsumer.getConsumable("signatures",false)) == null) return null;
-		IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("signatures");
-		if(value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl
-			IEObjectConsumer param = createEObjectConsumer((EObject)value);
-			if(param.isInstanceOf(grammarAccess.getSignatureRule().getType().getClassifier())) {
-				type = AssignmentType.PARSER_RULE_CALL;
-				element = grammarAccess.getInterfaceAccess().getSignaturesSignatureParserRuleCall_4_1_1_0(); 
-				consumed = obj;
-				return param;
-			}
-		}
-		return null;
-	}
-
-    @Override
-	public AbstractToken createFollowerAfterReturn(AbstractToken next,	int actIndex, int index, IEObjectConsumer inst) {
-		if(value == inst.getEObject() && !inst.isConsumed()) return null;
-		switch(index) {
-			case 0: return new Interface_CommaKeyword_4_1_0(lastRuleCallOrigin, next, actIndex, consumed);
-			default: return null;
-		}	
-	}	
-}
-
-
-
-// "}"
-protected class Interface_RightCurlyBracketKeyword_5 extends KeywordToken  {
-	
-	public Interface_RightCurlyBracketKeyword_5(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getInterfaceAccess().getRightCurlyBracketKeyword_5();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new Interface_Group_4(lastRuleCallOrigin, this, 0, inst);
-			case 1: return new Interface_Group_3(lastRuleCallOrigin, this, 1, inst);
-			case 2: return new Interface_LeftCurlyBracketKeyword_2(lastRuleCallOrigin, this, 2, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-
-/************ end Rule Interface ****************/
-
-
-/************ begin Rule RepositoryComponent_Impl ****************
- *
- * RepositoryComponent_Impl returns repository::RepositoryComponent:
- * 
- * 	"RepositoryComponent" name=EString "{" ("relationship" "(" relationship+=[Relationship|EString] (","
- * 
- * 	relationship+=[Relationship|EString])* ")")? ("providedRoles" "{" providedRoles+=ProvidedRole (","
- * 
- * 	providedRoles+=ProvidedRole)* "}")? ("requiredRoles" "{" requiredRoles+=RequiredRole (","
- * 
- * 	requiredRoles+=RequiredRole)* "}")? "}";
- *
- **/
-
-// "RepositoryComponent" name=EString "{" ("relationship" "(" relationship+=[Relationship|EString] (","
-// 
-// relationship+=[Relationship|EString])* ")")? ("providedRoles" "{" providedRoles+=ProvidedRole (","
-// 
-// providedRoles+=ProvidedRole)* "}")? ("requiredRoles" "{" requiredRoles+=RequiredRole (","
-// 
-// requiredRoles+=RequiredRole)* "}")? "}"
-protected class RepositoryComponent_Impl_Group extends GroupToken {
-	
-	public RepositoryComponent_Impl_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Group getGrammarElement() {
-		return grammarAccess.getRepositoryComponent_ImplAccess().getGroup();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new RepositoryComponent_Impl_RightCurlyBracketKeyword_6(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override
-	public IEObjectConsumer tryConsume() {
-		if(getEObject().eClass() != grammarAccess.getRepositoryComponent_ImplRule().getType().getClassifier())
-			return null;
-		return eObjectConsumer;
-	}
-
-}
-
-// "RepositoryComponent"
-protected class RepositoryComponent_Impl_RepositoryComponentKeyword_0 extends KeywordToken  {
-	
-	public RepositoryComponent_Impl_RepositoryComponentKeyword_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getRepositoryComponent_ImplAccess().getRepositoryComponentKeyword_0();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			default: return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst);
-		}	
-	}
-
-}
-
-// name=EString
-protected class RepositoryComponent_Impl_NameAssignment_1 extends AssignmentToken  {
-	
-	public RepositoryComponent_Impl_NameAssignment_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Assignment getGrammarElement() {
-		return grammarAccess.getRepositoryComponent_ImplAccess().getNameAssignment_1();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new RepositoryComponent_Impl_RepositoryComponentKeyword_0(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override	
-	public IEObjectConsumer tryConsume() {
-		if((value = eObjectConsumer.getConsumable("name",true)) == null) return null;
-		IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("name");
-		if(valueSerializer.isValid(obj.getEObject(), grammarAccess.getRepositoryComponent_ImplAccess().getNameEStringParserRuleCall_1_0(), value, null)) {
-			type = AssignmentType.DATATYPE_RULE_CALL;
-			element = grammarAccess.getRepositoryComponent_ImplAccess().getNameEStringParserRuleCall_1_0();
-			return obj;
-		}
-		return null;
-	}
-
-}
-
-// "{"
-protected class RepositoryComponent_Impl_LeftCurlyBracketKeyword_2 extends KeywordToken  {
-	
-	public RepositoryComponent_Impl_LeftCurlyBracketKeyword_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getRepositoryComponent_ImplAccess().getLeftCurlyBracketKeyword_2();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new RepositoryComponent_Impl_NameAssignment_1(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// ("relationship" "(" relationship+=[Relationship|EString] ("," relationship+=[Relationship|EString])* ")")?
-protected class RepositoryComponent_Impl_Group_3 extends GroupToken {
-	
-	public RepositoryComponent_Impl_Group_3(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Group getGrammarElement() {
-		return grammarAccess.getRepositoryComponent_ImplAccess().getGroup_3();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new RepositoryComponent_Impl_RightParenthesisKeyword_3_4(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// "relationship"
-protected class RepositoryComponent_Impl_RelationshipKeyword_3_0 extends KeywordToken  {
-	
-	public RepositoryComponent_Impl_RelationshipKeyword_3_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getRepositoryComponent_ImplAccess().getRelationshipKeyword_3_0();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new RepositoryComponent_Impl_LeftCurlyBracketKeyword_2(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// "("
-protected class RepositoryComponent_Impl_LeftParenthesisKeyword_3_1 extends KeywordToken  {
-	
-	public RepositoryComponent_Impl_LeftParenthesisKeyword_3_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getRepositoryComponent_ImplAccess().getLeftParenthesisKeyword_3_1();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new RepositoryComponent_Impl_RelationshipKeyword_3_0(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// relationship+=[Relationship|EString]
-protected class RepositoryComponent_Impl_RelationshipAssignment_3_2 extends AssignmentToken  {
-	
-	public RepositoryComponent_Impl_RelationshipAssignment_3_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Assignment getGrammarElement() {
-		return grammarAccess.getRepositoryComponent_ImplAccess().getRelationshipAssignment_3_2();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new RepositoryComponent_Impl_LeftParenthesisKeyword_3_1(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override	
-	public IEObjectConsumer tryConsume() {
-		if((value = eObjectConsumer.getConsumable("relationship",true)) == null) return null;
-		IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("relationship");
-		if(value instanceof EObject) { // org::eclipse::xtext::impl::CrossReferenceImpl
-			IEObjectConsumer param = createEObjectConsumer((EObject)value);
-			if(param.isInstanceOf(grammarAccess.getRepositoryComponent_ImplAccess().getRelationshipRelationshipCrossReference_3_2_0().getType().getClassifier())) {
-				type = AssignmentType.CROSS_REFERENCE;
-				element = grammarAccess.getRepositoryComponent_ImplAccess().getRelationshipRelationshipCrossReference_3_2_0(); 
-				return obj;
-			}
-		}
-		return null;
-	}
-
-}
-
-// ("," relationship+=[Relationship|EString])*
-protected class RepositoryComponent_Impl_Group_3_3 extends GroupToken {
-	
-	public RepositoryComponent_Impl_Group_3_3(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Group getGrammarElement() {
-		return grammarAccess.getRepositoryComponent_ImplAccess().getGroup_3_3();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new RepositoryComponent_Impl_RelationshipAssignment_3_3_1(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// ","
-protected class RepositoryComponent_Impl_CommaKeyword_3_3_0 extends KeywordToken  {
-	
-	public RepositoryComponent_Impl_CommaKeyword_3_3_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getRepositoryComponent_ImplAccess().getCommaKeyword_3_3_0();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new RepositoryComponent_Impl_Group_3_3(lastRuleCallOrigin, this, 0, inst);
-			case 1: return new RepositoryComponent_Impl_RelationshipAssignment_3_2(lastRuleCallOrigin, this, 1, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// relationship+=[Relationship|EString]
-protected class RepositoryComponent_Impl_RelationshipAssignment_3_3_1 extends AssignmentToken  {
-	
-	public RepositoryComponent_Impl_RelationshipAssignment_3_3_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Assignment getGrammarElement() {
-		return grammarAccess.getRepositoryComponent_ImplAccess().getRelationshipAssignment_3_3_1();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new RepositoryComponent_Impl_CommaKeyword_3_3_0(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override	
-	public IEObjectConsumer tryConsume() {
-		if((value = eObjectConsumer.getConsumable("relationship",false)) == null) return null;
-		IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("relationship");
-		if(value instanceof EObject) { // org::eclipse::xtext::impl::CrossReferenceImpl
-			IEObjectConsumer param = createEObjectConsumer((EObject)value);
-			if(param.isInstanceOf(grammarAccess.getRepositoryComponent_ImplAccess().getRelationshipRelationshipCrossReference_3_3_1_0().getType().getClassifier())) {
-				type = AssignmentType.CROSS_REFERENCE;
-				element = grammarAccess.getRepositoryComponent_ImplAccess().getRelationshipRelationshipCrossReference_3_3_1_0(); 
-				return obj;
-			}
-		}
-		return null;
-	}
-
-}
-
-
-// ")"
-protected class RepositoryComponent_Impl_RightParenthesisKeyword_3_4 extends KeywordToken  {
-	
-	public RepositoryComponent_Impl_RightParenthesisKeyword_3_4(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getRepositoryComponent_ImplAccess().getRightParenthesisKeyword_3_4();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new RepositoryComponent_Impl_Group_3_3(lastRuleCallOrigin, this, 0, inst);
-			case 1: return new RepositoryComponent_Impl_RelationshipAssignment_3_2(lastRuleCallOrigin, this, 1, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-
-// ("providedRoles" "{" providedRoles+=ProvidedRole ("," providedRoles+=ProvidedRole)* "}")?
-protected class RepositoryComponent_Impl_Group_4 extends GroupToken {
-	
-	public RepositoryComponent_Impl_Group_4(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Group getGrammarElement() {
-		return grammarAccess.getRepositoryComponent_ImplAccess().getGroup_4();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new RepositoryComponent_Impl_RightCurlyBracketKeyword_4_4(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// "providedRoles"
-protected class RepositoryComponent_Impl_ProvidedRolesKeyword_4_0 extends KeywordToken  {
-	
-	public RepositoryComponent_Impl_ProvidedRolesKeyword_4_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getRepositoryComponent_ImplAccess().getProvidedRolesKeyword_4_0();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new RepositoryComponent_Impl_Group_3(lastRuleCallOrigin, this, 0, inst);
-			case 1: return new RepositoryComponent_Impl_LeftCurlyBracketKeyword_2(lastRuleCallOrigin, this, 1, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// "{"
-protected class RepositoryComponent_Impl_LeftCurlyBracketKeyword_4_1 extends KeywordToken  {
-	
-	public RepositoryComponent_Impl_LeftCurlyBracketKeyword_4_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getRepositoryComponent_ImplAccess().getLeftCurlyBracketKeyword_4_1();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new RepositoryComponent_Impl_ProvidedRolesKeyword_4_0(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// providedRoles+=ProvidedRole
-protected class RepositoryComponent_Impl_ProvidedRolesAssignment_4_2 extends AssignmentToken  {
-	
-	public RepositoryComponent_Impl_ProvidedRolesAssignment_4_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Assignment getGrammarElement() {
-		return grammarAccess.getRepositoryComponent_ImplAccess().getProvidedRolesAssignment_4_2();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new ProvidedRole_Group(this, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override	
-	public IEObjectConsumer tryConsume() {
-		if((value = eObjectConsumer.getConsumable("providedRoles",true)) == null) return null;
-		IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("providedRoles");
-		if(value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl
-			IEObjectConsumer param = createEObjectConsumer((EObject)value);
-			if(param.isInstanceOf(grammarAccess.getProvidedRoleRule().getType().getClassifier())) {
-				type = AssignmentType.PARSER_RULE_CALL;
-				element = grammarAccess.getRepositoryComponent_ImplAccess().getProvidedRolesProvidedRoleParserRuleCall_4_2_0(); 
-				consumed = obj;
-				return param;
-			}
-		}
-		return null;
-	}
-
-    @Override
-	public AbstractToken createFollowerAfterReturn(AbstractToken next,	int actIndex, int index, IEObjectConsumer inst) {
-		if(value == inst.getEObject() && !inst.isConsumed()) return null;
-		switch(index) {
-			case 0: return new RepositoryComponent_Impl_LeftCurlyBracketKeyword_4_1(lastRuleCallOrigin, next, actIndex, consumed);
-			default: return null;
-		}	
-	}	
-}
-
-// ("," providedRoles+=ProvidedRole)*
-protected class RepositoryComponent_Impl_Group_4_3 extends GroupToken {
-	
-	public RepositoryComponent_Impl_Group_4_3(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Group getGrammarElement() {
-		return grammarAccess.getRepositoryComponent_ImplAccess().getGroup_4_3();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new RepositoryComponent_Impl_ProvidedRolesAssignment_4_3_1(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// ","
-protected class RepositoryComponent_Impl_CommaKeyword_4_3_0 extends KeywordToken  {
-	
-	public RepositoryComponent_Impl_CommaKeyword_4_3_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getRepositoryComponent_ImplAccess().getCommaKeyword_4_3_0();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new RepositoryComponent_Impl_Group_4_3(lastRuleCallOrigin, this, 0, inst);
-			case 1: return new RepositoryComponent_Impl_ProvidedRolesAssignment_4_2(lastRuleCallOrigin, this, 1, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// providedRoles+=ProvidedRole
-protected class RepositoryComponent_Impl_ProvidedRolesAssignment_4_3_1 extends AssignmentToken  {
-	
-	public RepositoryComponent_Impl_ProvidedRolesAssignment_4_3_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Assignment getGrammarElement() {
-		return grammarAccess.getRepositoryComponent_ImplAccess().getProvidedRolesAssignment_4_3_1();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new ProvidedRole_Group(this, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override	
-	public IEObjectConsumer tryConsume() {
-		if((value = eObjectConsumer.getConsumable("providedRoles",false)) == null) return null;
-		IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("providedRoles");
-		if(value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl
-			IEObjectConsumer param = createEObjectConsumer((EObject)value);
-			if(param.isInstanceOf(grammarAccess.getProvidedRoleRule().getType().getClassifier())) {
-				type = AssignmentType.PARSER_RULE_CALL;
-				element = grammarAccess.getRepositoryComponent_ImplAccess().getProvidedRolesProvidedRoleParserRuleCall_4_3_1_0(); 
-				consumed = obj;
-				return param;
-			}
-		}
-		return null;
-	}
-
-    @Override
-	public AbstractToken createFollowerAfterReturn(AbstractToken next,	int actIndex, int index, IEObjectConsumer inst) {
-		if(value == inst.getEObject() && !inst.isConsumed()) return null;
-		switch(index) {
-			case 0: return new RepositoryComponent_Impl_CommaKeyword_4_3_0(lastRuleCallOrigin, next, actIndex, consumed);
-			default: return null;
-		}	
-	}	
-}
-
-
-// "}"
-protected class RepositoryComponent_Impl_RightCurlyBracketKeyword_4_4 extends KeywordToken  {
-	
-	public RepositoryComponent_Impl_RightCurlyBracketKeyword_4_4(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getRepositoryComponent_ImplAccess().getRightCurlyBracketKeyword_4_4();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new RepositoryComponent_Impl_Group_4_3(lastRuleCallOrigin, this, 0, inst);
-			case 1: return new RepositoryComponent_Impl_ProvidedRolesAssignment_4_2(lastRuleCallOrigin, this, 1, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-
-// ("requiredRoles" "{" requiredRoles+=RequiredRole ("," requiredRoles+=RequiredRole)* "}")?
-protected class RepositoryComponent_Impl_Group_5 extends GroupToken {
-	
-	public RepositoryComponent_Impl_Group_5(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Group getGrammarElement() {
-		return grammarAccess.getRepositoryComponent_ImplAccess().getGroup_5();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new RepositoryComponent_Impl_RightCurlyBracketKeyword_5_4(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// "requiredRoles"
-protected class RepositoryComponent_Impl_RequiredRolesKeyword_5_0 extends KeywordToken  {
-	
-	public RepositoryComponent_Impl_RequiredRolesKeyword_5_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getRepositoryComponent_ImplAccess().getRequiredRolesKeyword_5_0();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new RepositoryComponent_Impl_Group_4(lastRuleCallOrigin, this, 0, inst);
-			case 1: return new RepositoryComponent_Impl_Group_3(lastRuleCallOrigin, this, 1, inst);
-			case 2: return new RepositoryComponent_Impl_LeftCurlyBracketKeyword_2(lastRuleCallOrigin, this, 2, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// "{"
-protected class RepositoryComponent_Impl_LeftCurlyBracketKeyword_5_1 extends KeywordToken  {
-	
-	public RepositoryComponent_Impl_LeftCurlyBracketKeyword_5_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getRepositoryComponent_ImplAccess().getLeftCurlyBracketKeyword_5_1();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new RepositoryComponent_Impl_RequiredRolesKeyword_5_0(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// requiredRoles+=RequiredRole
-protected class RepositoryComponent_Impl_RequiredRolesAssignment_5_2 extends AssignmentToken  {
-	
-	public RepositoryComponent_Impl_RequiredRolesAssignment_5_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Assignment getGrammarElement() {
-		return grammarAccess.getRepositoryComponent_ImplAccess().getRequiredRolesAssignment_5_2();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new RequiredRole_Group(this, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override	
-	public IEObjectConsumer tryConsume() {
-		if((value = eObjectConsumer.getConsumable("requiredRoles",true)) == null) return null;
-		IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("requiredRoles");
-		if(value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl
-			IEObjectConsumer param = createEObjectConsumer((EObject)value);
-			if(param.isInstanceOf(grammarAccess.getRequiredRoleRule().getType().getClassifier())) {
-				type = AssignmentType.PARSER_RULE_CALL;
-				element = grammarAccess.getRepositoryComponent_ImplAccess().getRequiredRolesRequiredRoleParserRuleCall_5_2_0(); 
-				consumed = obj;
-				return param;
-			}
-		}
-		return null;
-	}
-
-    @Override
-	public AbstractToken createFollowerAfterReturn(AbstractToken next,	int actIndex, int index, IEObjectConsumer inst) {
-		if(value == inst.getEObject() && !inst.isConsumed()) return null;
-		switch(index) {
-			case 0: return new RepositoryComponent_Impl_LeftCurlyBracketKeyword_5_1(lastRuleCallOrigin, next, actIndex, consumed);
-			default: return null;
-		}	
-	}	
-}
-
-// ("," requiredRoles+=RequiredRole)*
-protected class RepositoryComponent_Impl_Group_5_3 extends GroupToken {
-	
-	public RepositoryComponent_Impl_Group_5_3(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Group getGrammarElement() {
-		return grammarAccess.getRepositoryComponent_ImplAccess().getGroup_5_3();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new RepositoryComponent_Impl_RequiredRolesAssignment_5_3_1(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// ","
-protected class RepositoryComponent_Impl_CommaKeyword_5_3_0 extends KeywordToken  {
-	
-	public RepositoryComponent_Impl_CommaKeyword_5_3_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getRepositoryComponent_ImplAccess().getCommaKeyword_5_3_0();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new RepositoryComponent_Impl_Group_5_3(lastRuleCallOrigin, this, 0, inst);
-			case 1: return new RepositoryComponent_Impl_RequiredRolesAssignment_5_2(lastRuleCallOrigin, this, 1, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// requiredRoles+=RequiredRole
-protected class RepositoryComponent_Impl_RequiredRolesAssignment_5_3_1 extends AssignmentToken  {
-	
-	public RepositoryComponent_Impl_RequiredRolesAssignment_5_3_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Assignment getGrammarElement() {
-		return grammarAccess.getRepositoryComponent_ImplAccess().getRequiredRolesAssignment_5_3_1();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new RequiredRole_Group(this, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override	
-	public IEObjectConsumer tryConsume() {
-		if((value = eObjectConsumer.getConsumable("requiredRoles",false)) == null) return null;
-		IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("requiredRoles");
-		if(value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl
-			IEObjectConsumer param = createEObjectConsumer((EObject)value);
-			if(param.isInstanceOf(grammarAccess.getRequiredRoleRule().getType().getClassifier())) {
-				type = AssignmentType.PARSER_RULE_CALL;
-				element = grammarAccess.getRepositoryComponent_ImplAccess().getRequiredRolesRequiredRoleParserRuleCall_5_3_1_0(); 
-				consumed = obj;
-				return param;
-			}
-		}
-		return null;
-	}
-
-    @Override
-	public AbstractToken createFollowerAfterReturn(AbstractToken next,	int actIndex, int index, IEObjectConsumer inst) {
-		if(value == inst.getEObject() && !inst.isConsumed()) return null;
-		switch(index) {
-			case 0: return new RepositoryComponent_Impl_CommaKeyword_5_3_0(lastRuleCallOrigin, next, actIndex, consumed);
-			default: return null;
-		}	
-	}	
-}
-
-
-// "}"
-protected class RepositoryComponent_Impl_RightCurlyBracketKeyword_5_4 extends KeywordToken  {
-	
-	public RepositoryComponent_Impl_RightCurlyBracketKeyword_5_4(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getRepositoryComponent_ImplAccess().getRightCurlyBracketKeyword_5_4();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new RepositoryComponent_Impl_Group_5_3(lastRuleCallOrigin, this, 0, inst);
-			case 1: return new RepositoryComponent_Impl_RequiredRolesAssignment_5_2(lastRuleCallOrigin, this, 1, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-
-// "}"
-protected class RepositoryComponent_Impl_RightCurlyBracketKeyword_6 extends KeywordToken  {
-	
-	public RepositoryComponent_Impl_RightCurlyBracketKeyword_6(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getRepositoryComponent_ImplAccess().getRightCurlyBracketKeyword_6();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new RepositoryComponent_Impl_Group_5(lastRuleCallOrigin, this, 0, inst);
-			case 1: return new RepositoryComponent_Impl_Group_4(lastRuleCallOrigin, this, 1, inst);
-			case 2: return new RepositoryComponent_Impl_Group_3(lastRuleCallOrigin, this, 2, inst);
-			case 3: return new RepositoryComponent_Impl_LeftCurlyBracketKeyword_2(lastRuleCallOrigin, this, 3, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-
-/************ end Rule RepositoryComponent_Impl ****************/
-
-
-/************ begin Rule CollectionDataType ****************
- *
- * CollectionDataType returns repository::CollectionDataType:
- * 
- * 	"CollectionDataType" name=EString "{" "innerType" innerType=[repository::DataType|EString] "}";
- *
- **/
-
-// "CollectionDataType" name=EString "{" "innerType" innerType=[repository::DataType|EString] "}"
-protected class CollectionDataType_Group extends GroupToken {
-	
-	public CollectionDataType_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Group getGrammarElement() {
-		return grammarAccess.getCollectionDataTypeAccess().getGroup();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new CollectionDataType_RightCurlyBracketKeyword_5(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override
-	public IEObjectConsumer tryConsume() {
-		if(getEObject().eClass() != grammarAccess.getCollectionDataTypeRule().getType().getClassifier())
-			return null;
-		return eObjectConsumer;
-	}
-
-}
-
-// "CollectionDataType"
-protected class CollectionDataType_CollectionDataTypeKeyword_0 extends KeywordToken  {
-	
-	public CollectionDataType_CollectionDataTypeKeyword_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getCollectionDataTypeAccess().getCollectionDataTypeKeyword_0();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			default: return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst);
-		}	
-	}
-
-}
-
-// name=EString
-protected class CollectionDataType_NameAssignment_1 extends AssignmentToken  {
-	
-	public CollectionDataType_NameAssignment_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Assignment getGrammarElement() {
-		return grammarAccess.getCollectionDataTypeAccess().getNameAssignment_1();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new CollectionDataType_CollectionDataTypeKeyword_0(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override	
-	public IEObjectConsumer tryConsume() {
-		if((value = eObjectConsumer.getConsumable("name",true)) == null) return null;
-		IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("name");
-		if(valueSerializer.isValid(obj.getEObject(), grammarAccess.getCollectionDataTypeAccess().getNameEStringParserRuleCall_1_0(), value, null)) {
-			type = AssignmentType.DATATYPE_RULE_CALL;
-			element = grammarAccess.getCollectionDataTypeAccess().getNameEStringParserRuleCall_1_0();
-			return obj;
-		}
-		return null;
-	}
-
-}
-
-// "{"
-protected class CollectionDataType_LeftCurlyBracketKeyword_2 extends KeywordToken  {
-	
-	public CollectionDataType_LeftCurlyBracketKeyword_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getCollectionDataTypeAccess().getLeftCurlyBracketKeyword_2();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new CollectionDataType_NameAssignment_1(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// "innerType"
-protected class CollectionDataType_InnerTypeKeyword_3 extends KeywordToken  {
-	
-	public CollectionDataType_InnerTypeKeyword_3(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getCollectionDataTypeAccess().getInnerTypeKeyword_3();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new CollectionDataType_LeftCurlyBracketKeyword_2(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// innerType=[repository::DataType|EString]
-protected class CollectionDataType_InnerTypeAssignment_4 extends AssignmentToken  {
-	
-	public CollectionDataType_InnerTypeAssignment_4(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Assignment getGrammarElement() {
-		return grammarAccess.getCollectionDataTypeAccess().getInnerTypeAssignment_4();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new CollectionDataType_InnerTypeKeyword_3(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override	
-	public IEObjectConsumer tryConsume() {
-		if((value = eObjectConsumer.getConsumable("innerType",true)) == null) return null;
-		IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("innerType");
-		if(value instanceof EObject) { // org::eclipse::xtext::impl::CrossReferenceImpl
-			IEObjectConsumer param = createEObjectConsumer((EObject)value);
-			if(param.isInstanceOf(grammarAccess.getCollectionDataTypeAccess().getInnerTypeDataTypeCrossReference_4_0().getType().getClassifier())) {
-				type = AssignmentType.CROSS_REFERENCE;
-				element = grammarAccess.getCollectionDataTypeAccess().getInnerTypeDataTypeCrossReference_4_0(); 
-				return obj;
-			}
-		}
-		return null;
-	}
-
-}
-
-// "}"
-protected class CollectionDataType_RightCurlyBracketKeyword_5 extends KeywordToken  {
-	
-	public CollectionDataType_RightCurlyBracketKeyword_5(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getCollectionDataTypeAccess().getRightCurlyBracketKeyword_5();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new CollectionDataType_InnerTypeAssignment_4(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-
-/************ end Rule CollectionDataType ****************/
-
-
-/************ begin Rule CompositeDataType ****************
- *
- * CompositeDataType returns repository::CompositeDataType:
- * 
- * 	"CompositeDataType" name=EString "{" ("parentTypes" "(" parentTypes+=[repository::CompositeDataType|EString] (","
- * 
- * 	parentTypes+=[repository::CompositeDataType|EString])* ")")? ("innerDeclarations" "{"
- * 
- * 	innerDeclarations+=InnerDeclaration ("," innerDeclarations+=InnerDeclaration)* "}")? "}";
- *
- **/
-
-// "CompositeDataType" name=EString "{" ("parentTypes" "(" parentTypes+=[repository::CompositeDataType|EString] (","
-// 
-// parentTypes+=[repository::CompositeDataType|EString])* ")")? ("innerDeclarations" "{"
-// 
-// innerDeclarations+=InnerDeclaration ("," innerDeclarations+=InnerDeclaration)* "}")? "}"
-protected class CompositeDataType_Group extends GroupToken {
-	
-	public CompositeDataType_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Group getGrammarElement() {
-		return grammarAccess.getCompositeDataTypeAccess().getGroup();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new CompositeDataType_RightCurlyBracketKeyword_5(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override
-	public IEObjectConsumer tryConsume() {
-		if(getEObject().eClass() != grammarAccess.getCompositeDataTypeRule().getType().getClassifier())
-			return null;
-		return eObjectConsumer;
-	}
-
-}
-
-// "CompositeDataType"
-protected class CompositeDataType_CompositeDataTypeKeyword_0 extends KeywordToken  {
-	
-	public CompositeDataType_CompositeDataTypeKeyword_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getCompositeDataTypeAccess().getCompositeDataTypeKeyword_0();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			default: return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst);
-		}	
-	}
-
-}
-
-// name=EString
-protected class CompositeDataType_NameAssignment_1 extends AssignmentToken  {
-	
-	public CompositeDataType_NameAssignment_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Assignment getGrammarElement() {
-		return grammarAccess.getCompositeDataTypeAccess().getNameAssignment_1();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new CompositeDataType_CompositeDataTypeKeyword_0(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override	
-	public IEObjectConsumer tryConsume() {
-		if((value = eObjectConsumer.getConsumable("name",true)) == null) return null;
-		IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("name");
-		if(valueSerializer.isValid(obj.getEObject(), grammarAccess.getCompositeDataTypeAccess().getNameEStringParserRuleCall_1_0(), value, null)) {
-			type = AssignmentType.DATATYPE_RULE_CALL;
-			element = grammarAccess.getCompositeDataTypeAccess().getNameEStringParserRuleCall_1_0();
-			return obj;
-		}
-		return null;
-	}
-
-}
-
-// "{"
-protected class CompositeDataType_LeftCurlyBracketKeyword_2 extends KeywordToken  {
-	
-	public CompositeDataType_LeftCurlyBracketKeyword_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getCompositeDataTypeAccess().getLeftCurlyBracketKeyword_2();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new CompositeDataType_NameAssignment_1(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// ("parentTypes" "(" parentTypes+=[repository::CompositeDataType|EString] (","
-// 
-// parentTypes+=[repository::CompositeDataType|EString])* ")")?
-protected class CompositeDataType_Group_3 extends GroupToken {
-	
-	public CompositeDataType_Group_3(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Group getGrammarElement() {
-		return grammarAccess.getCompositeDataTypeAccess().getGroup_3();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new CompositeDataType_RightParenthesisKeyword_3_4(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// "parentTypes"
-protected class CompositeDataType_ParentTypesKeyword_3_0 extends KeywordToken  {
-	
-	public CompositeDataType_ParentTypesKeyword_3_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getCompositeDataTypeAccess().getParentTypesKeyword_3_0();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new CompositeDataType_LeftCurlyBracketKeyword_2(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// "("
-protected class CompositeDataType_LeftParenthesisKeyword_3_1 extends KeywordToken  {
-	
-	public CompositeDataType_LeftParenthesisKeyword_3_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getCompositeDataTypeAccess().getLeftParenthesisKeyword_3_1();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new CompositeDataType_ParentTypesKeyword_3_0(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// parentTypes+=[repository::CompositeDataType|EString]
-protected class CompositeDataType_ParentTypesAssignment_3_2 extends AssignmentToken  {
-	
-	public CompositeDataType_ParentTypesAssignment_3_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Assignment getGrammarElement() {
-		return grammarAccess.getCompositeDataTypeAccess().getParentTypesAssignment_3_2();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new CompositeDataType_LeftParenthesisKeyword_3_1(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override	
-	public IEObjectConsumer tryConsume() {
-		if((value = eObjectConsumer.getConsumable("parentTypes",true)) == null) return null;
-		IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("parentTypes");
-		if(value instanceof EObject) { // org::eclipse::xtext::impl::CrossReferenceImpl
-			IEObjectConsumer param = createEObjectConsumer((EObject)value);
-			if(param.isInstanceOf(grammarAccess.getCompositeDataTypeAccess().getParentTypesCompositeDataTypeCrossReference_3_2_0().getType().getClassifier())) {
-				type = AssignmentType.CROSS_REFERENCE;
-				element = grammarAccess.getCompositeDataTypeAccess().getParentTypesCompositeDataTypeCrossReference_3_2_0(); 
-				return obj;
-			}
-		}
-		return null;
-	}
-
-}
-
-// ("," parentTypes+=[repository::CompositeDataType|EString])*
-protected class CompositeDataType_Group_3_3 extends GroupToken {
-	
-	public CompositeDataType_Group_3_3(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Group getGrammarElement() {
-		return grammarAccess.getCompositeDataTypeAccess().getGroup_3_3();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new CompositeDataType_ParentTypesAssignment_3_3_1(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// ","
-protected class CompositeDataType_CommaKeyword_3_3_0 extends KeywordToken  {
-	
-	public CompositeDataType_CommaKeyword_3_3_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getCompositeDataTypeAccess().getCommaKeyword_3_3_0();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new CompositeDataType_Group_3_3(lastRuleCallOrigin, this, 0, inst);
-			case 1: return new CompositeDataType_ParentTypesAssignment_3_2(lastRuleCallOrigin, this, 1, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// parentTypes+=[repository::CompositeDataType|EString]
-protected class CompositeDataType_ParentTypesAssignment_3_3_1 extends AssignmentToken  {
-	
-	public CompositeDataType_ParentTypesAssignment_3_3_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Assignment getGrammarElement() {
-		return grammarAccess.getCompositeDataTypeAccess().getParentTypesAssignment_3_3_1();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new CompositeDataType_CommaKeyword_3_3_0(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override	
-	public IEObjectConsumer tryConsume() {
-		if((value = eObjectConsumer.getConsumable("parentTypes",false)) == null) return null;
-		IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("parentTypes");
-		if(value instanceof EObject) { // org::eclipse::xtext::impl::CrossReferenceImpl
-			IEObjectConsumer param = createEObjectConsumer((EObject)value);
-			if(param.isInstanceOf(grammarAccess.getCompositeDataTypeAccess().getParentTypesCompositeDataTypeCrossReference_3_3_1_0().getType().getClassifier())) {
-				type = AssignmentType.CROSS_REFERENCE;
-				element = grammarAccess.getCompositeDataTypeAccess().getParentTypesCompositeDataTypeCrossReference_3_3_1_0(); 
-				return obj;
-			}
-		}
-		return null;
-	}
-
-}
-
-
-// ")"
-protected class CompositeDataType_RightParenthesisKeyword_3_4 extends KeywordToken  {
-	
-	public CompositeDataType_RightParenthesisKeyword_3_4(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getCompositeDataTypeAccess().getRightParenthesisKeyword_3_4();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new CompositeDataType_Group_3_3(lastRuleCallOrigin, this, 0, inst);
-			case 1: return new CompositeDataType_ParentTypesAssignment_3_2(lastRuleCallOrigin, this, 1, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-
-// ("innerDeclarations" "{" innerDeclarations+=InnerDeclaration ("," innerDeclarations+=InnerDeclaration)* "}")?
-protected class CompositeDataType_Group_4 extends GroupToken {
-	
-	public CompositeDataType_Group_4(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Group getGrammarElement() {
-		return grammarAccess.getCompositeDataTypeAccess().getGroup_4();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new CompositeDataType_RightCurlyBracketKeyword_4_4(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// "innerDeclarations"
-protected class CompositeDataType_InnerDeclarationsKeyword_4_0 extends KeywordToken  {
-	
-	public CompositeDataType_InnerDeclarationsKeyword_4_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getCompositeDataTypeAccess().getInnerDeclarationsKeyword_4_0();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new CompositeDataType_Group_3(lastRuleCallOrigin, this, 0, inst);
-			case 1: return new CompositeDataType_LeftCurlyBracketKeyword_2(lastRuleCallOrigin, this, 1, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// "{"
-protected class CompositeDataType_LeftCurlyBracketKeyword_4_1 extends KeywordToken  {
-	
-	public CompositeDataType_LeftCurlyBracketKeyword_4_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getCompositeDataTypeAccess().getLeftCurlyBracketKeyword_4_1();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new CompositeDataType_InnerDeclarationsKeyword_4_0(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// innerDeclarations+=InnerDeclaration
-protected class CompositeDataType_InnerDeclarationsAssignment_4_2 extends AssignmentToken  {
-	
-	public CompositeDataType_InnerDeclarationsAssignment_4_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Assignment getGrammarElement() {
-		return grammarAccess.getCompositeDataTypeAccess().getInnerDeclarationsAssignment_4_2();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new InnerDeclaration_Group(this, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override	
-	public IEObjectConsumer tryConsume() {
-		if((value = eObjectConsumer.getConsumable("innerDeclarations",true)) == null) return null;
-		IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("innerDeclarations");
-		if(value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl
-			IEObjectConsumer param = createEObjectConsumer((EObject)value);
-			if(param.isInstanceOf(grammarAccess.getInnerDeclarationRule().getType().getClassifier())) {
-				type = AssignmentType.PARSER_RULE_CALL;
-				element = grammarAccess.getCompositeDataTypeAccess().getInnerDeclarationsInnerDeclarationParserRuleCall_4_2_0(); 
-				consumed = obj;
-				return param;
-			}
-		}
-		return null;
-	}
-
-    @Override
-	public AbstractToken createFollowerAfterReturn(AbstractToken next,	int actIndex, int index, IEObjectConsumer inst) {
-		if(value == inst.getEObject() && !inst.isConsumed()) return null;
-		switch(index) {
-			case 0: return new CompositeDataType_LeftCurlyBracketKeyword_4_1(lastRuleCallOrigin, next, actIndex, consumed);
-			default: return null;
-		}	
-	}	
-}
-
-// ("," innerDeclarations+=InnerDeclaration)*
-protected class CompositeDataType_Group_4_3 extends GroupToken {
-	
-	public CompositeDataType_Group_4_3(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Group getGrammarElement() {
-		return grammarAccess.getCompositeDataTypeAccess().getGroup_4_3();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new CompositeDataType_InnerDeclarationsAssignment_4_3_1(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// ","
-protected class CompositeDataType_CommaKeyword_4_3_0 extends KeywordToken  {
-	
-	public CompositeDataType_CommaKeyword_4_3_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getCompositeDataTypeAccess().getCommaKeyword_4_3_0();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new CompositeDataType_Group_4_3(lastRuleCallOrigin, this, 0, inst);
-			case 1: return new CompositeDataType_InnerDeclarationsAssignment_4_2(lastRuleCallOrigin, this, 1, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// innerDeclarations+=InnerDeclaration
-protected class CompositeDataType_InnerDeclarationsAssignment_4_3_1 extends AssignmentToken  {
-	
-	public CompositeDataType_InnerDeclarationsAssignment_4_3_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Assignment getGrammarElement() {
-		return grammarAccess.getCompositeDataTypeAccess().getInnerDeclarationsAssignment_4_3_1();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new InnerDeclaration_Group(this, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override	
-	public IEObjectConsumer tryConsume() {
-		if((value = eObjectConsumer.getConsumable("innerDeclarations",false)) == null) return null;
-		IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("innerDeclarations");
-		if(value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl
-			IEObjectConsumer param = createEObjectConsumer((EObject)value);
-			if(param.isInstanceOf(grammarAccess.getInnerDeclarationRule().getType().getClassifier())) {
-				type = AssignmentType.PARSER_RULE_CALL;
-				element = grammarAccess.getCompositeDataTypeAccess().getInnerDeclarationsInnerDeclarationParserRuleCall_4_3_1_0(); 
-				consumed = obj;
-				return param;
-			}
-		}
-		return null;
-	}
-
-    @Override
-	public AbstractToken createFollowerAfterReturn(AbstractToken next,	int actIndex, int index, IEObjectConsumer inst) {
-		if(value == inst.getEObject() && !inst.isConsumed()) return null;
-		switch(index) {
-			case 0: return new CompositeDataType_CommaKeyword_4_3_0(lastRuleCallOrigin, next, actIndex, consumed);
-			default: return null;
-		}	
-	}	
-}
-
-
-// "}"
-protected class CompositeDataType_RightCurlyBracketKeyword_4_4 extends KeywordToken  {
-	
-	public CompositeDataType_RightCurlyBracketKeyword_4_4(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getCompositeDataTypeAccess().getRightCurlyBracketKeyword_4_4();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new CompositeDataType_Group_4_3(lastRuleCallOrigin, this, 0, inst);
-			case 1: return new CompositeDataType_InnerDeclarationsAssignment_4_2(lastRuleCallOrigin, this, 1, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-
-// "}"
-protected class CompositeDataType_RightCurlyBracketKeyword_5 extends KeywordToken  {
-	
-	public CompositeDataType_RightCurlyBracketKeyword_5(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getCompositeDataTypeAccess().getRightCurlyBracketKeyword_5();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new CompositeDataType_Group_4(lastRuleCallOrigin, this, 0, inst);
-			case 1: return new CompositeDataType_Group_3(lastRuleCallOrigin, this, 1, inst);
-			case 2: return new CompositeDataType_LeftCurlyBracketKeyword_2(lastRuleCallOrigin, this, 2, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-
-/************ end Rule CompositeDataType ****************/
-
-
-/************ begin Rule PrimitiveDataType ****************
- *
- * PrimitiveDataType returns repository::PrimitiveDataType:
- * 
- * 	"PrimitiveDataType" "{" "type" type=PrimitiveTypeEnum "ref" name=EString "}";
- *
- **/
-
-// "PrimitiveDataType" "{" "type" type=PrimitiveTypeEnum "ref" name=EString "}"
-protected class PrimitiveDataType_Group extends GroupToken {
-	
-	public PrimitiveDataType_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Group getGrammarElement() {
-		return grammarAccess.getPrimitiveDataTypeAccess().getGroup();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new PrimitiveDataType_RightCurlyBracketKeyword_6(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override
-	public IEObjectConsumer tryConsume() {
-		if(getEObject().eClass() != grammarAccess.getPrimitiveDataTypeRule().getType().getClassifier())
-			return null;
-		return eObjectConsumer;
-	}
-
-}
-
-// "PrimitiveDataType"
-protected class PrimitiveDataType_PrimitiveDataTypeKeyword_0 extends KeywordToken  {
-	
-	public PrimitiveDataType_PrimitiveDataTypeKeyword_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getPrimitiveDataTypeAccess().getPrimitiveDataTypeKeyword_0();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			default: return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst);
-		}	
-	}
-
-}
-
-// "{"
-protected class PrimitiveDataType_LeftCurlyBracketKeyword_1 extends KeywordToken  {
-	
-	public PrimitiveDataType_LeftCurlyBracketKeyword_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getPrimitiveDataTypeAccess().getLeftCurlyBracketKeyword_1();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new PrimitiveDataType_PrimitiveDataTypeKeyword_0(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// "type"
-protected class PrimitiveDataType_TypeKeyword_2 extends KeywordToken  {
-	
-	public PrimitiveDataType_TypeKeyword_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getPrimitiveDataTypeAccess().getTypeKeyword_2();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new PrimitiveDataType_LeftCurlyBracketKeyword_1(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// type=PrimitiveTypeEnum
-protected class PrimitiveDataType_TypeAssignment_3 extends AssignmentToken  {
-	
-	public PrimitiveDataType_TypeAssignment_3(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Assignment getGrammarElement() {
-		return grammarAccess.getPrimitiveDataTypeAccess().getTypeAssignment_3();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new PrimitiveDataType_TypeKeyword_2(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override	
-	public IEObjectConsumer tryConsume() {
-		if((value = eObjectConsumer.getConsumable("type",true)) == null) return null;
-		IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("type");
-		if(enumLitSerializer.isValid(obj.getEObject(), grammarAccess.getPrimitiveDataTypeAccess().getTypePrimitiveTypeEnumEnumRuleCall_3_0(), value, null)) { 
-			type = AssignmentType.ENUM_RULE_CALL;
-			element = grammarAccess.getPrimitiveDataTypeAccess().getTypePrimitiveTypeEnumEnumRuleCall_3_0();
-			return obj;
-		}
-		return null;
-	}
-
-}
-
-// "ref"
-protected class PrimitiveDataType_RefKeyword_4 extends KeywordToken  {
-	
-	public PrimitiveDataType_RefKeyword_4(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getPrimitiveDataTypeAccess().getRefKeyword_4();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new PrimitiveDataType_TypeAssignment_3(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// name=EString
-protected class PrimitiveDataType_NameAssignment_5 extends AssignmentToken  {
-	
-	public PrimitiveDataType_NameAssignment_5(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Assignment getGrammarElement() {
-		return grammarAccess.getPrimitiveDataTypeAccess().getNameAssignment_5();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new PrimitiveDataType_RefKeyword_4(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override	
-	public IEObjectConsumer tryConsume() {
-		if((value = eObjectConsumer.getConsumable("name",true)) == null) return null;
-		IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("name");
-		if(valueSerializer.isValid(obj.getEObject(), grammarAccess.getPrimitiveDataTypeAccess().getNameEStringParserRuleCall_5_0(), value, null)) {
-			type = AssignmentType.DATATYPE_RULE_CALL;
-			element = grammarAccess.getPrimitiveDataTypeAccess().getNameEStringParserRuleCall_5_0();
-			return obj;
-		}
-		return null;
-	}
-
-}
-
-// "}"
-protected class PrimitiveDataType_RightCurlyBracketKeyword_6 extends KeywordToken  {
-	
-	public PrimitiveDataType_RightCurlyBracketKeyword_6(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getPrimitiveDataTypeAccess().getRightCurlyBracketKeyword_6();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new PrimitiveDataType_NameAssignment_5(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-
-/************ end Rule PrimitiveDataType ****************/
-
-
-/************ begin Rule InnerDeclaration ****************
- *
- * InnerDeclaration returns repository::InnerDeclaration:
- * 
- * 	"InnerDeclaration" name=EString "{" "dataType" dataType=[repository::DataType|EString] "}";
- *
- **/
-
-// "InnerDeclaration" name=EString "{" "dataType" dataType=[repository::DataType|EString] "}"
-protected class InnerDeclaration_Group extends GroupToken {
-	
-	public InnerDeclaration_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Group getGrammarElement() {
-		return grammarAccess.getInnerDeclarationAccess().getGroup();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new InnerDeclaration_RightCurlyBracketKeyword_5(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override
-	public IEObjectConsumer tryConsume() {
-		if(getEObject().eClass() != grammarAccess.getInnerDeclarationRule().getType().getClassifier())
-			return null;
-		return eObjectConsumer;
-	}
-
-}
-
-// "InnerDeclaration"
-protected class InnerDeclaration_InnerDeclarationKeyword_0 extends KeywordToken  {
-	
-	public InnerDeclaration_InnerDeclarationKeyword_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getInnerDeclarationAccess().getInnerDeclarationKeyword_0();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			default: return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst);
-		}	
-	}
-
-}
-
-// name=EString
-protected class InnerDeclaration_NameAssignment_1 extends AssignmentToken  {
-	
-	public InnerDeclaration_NameAssignment_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Assignment getGrammarElement() {
-		return grammarAccess.getInnerDeclarationAccess().getNameAssignment_1();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new InnerDeclaration_InnerDeclarationKeyword_0(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override	
-	public IEObjectConsumer tryConsume() {
-		if((value = eObjectConsumer.getConsumable("name",true)) == null) return null;
-		IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("name");
-		if(valueSerializer.isValid(obj.getEObject(), grammarAccess.getInnerDeclarationAccess().getNameEStringParserRuleCall_1_0(), value, null)) {
-			type = AssignmentType.DATATYPE_RULE_CALL;
-			element = grammarAccess.getInnerDeclarationAccess().getNameEStringParserRuleCall_1_0();
-			return obj;
-		}
-		return null;
-	}
-
-}
-
-// "{"
-protected class InnerDeclaration_LeftCurlyBracketKeyword_2 extends KeywordToken  {
-	
-	public InnerDeclaration_LeftCurlyBracketKeyword_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getInnerDeclarationAccess().getLeftCurlyBracketKeyword_2();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new InnerDeclaration_NameAssignment_1(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// "dataType"
-protected class InnerDeclaration_DataTypeKeyword_3 extends KeywordToken  {
-	
-	public InnerDeclaration_DataTypeKeyword_3(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getInnerDeclarationAccess().getDataTypeKeyword_3();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new InnerDeclaration_LeftCurlyBracketKeyword_2(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// dataType=[repository::DataType|EString]
-protected class InnerDeclaration_DataTypeAssignment_4 extends AssignmentToken  {
-	
-	public InnerDeclaration_DataTypeAssignment_4(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Assignment getGrammarElement() {
-		return grammarAccess.getInnerDeclarationAccess().getDataTypeAssignment_4();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new InnerDeclaration_DataTypeKeyword_3(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override	
-	public IEObjectConsumer tryConsume() {
-		if((value = eObjectConsumer.getConsumable("dataType",true)) == null) return null;
-		IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("dataType");
-		if(value instanceof EObject) { // org::eclipse::xtext::impl::CrossReferenceImpl
-			IEObjectConsumer param = createEObjectConsumer((EObject)value);
-			if(param.isInstanceOf(grammarAccess.getInnerDeclarationAccess().getDataTypeDataTypeCrossReference_4_0().getType().getClassifier())) {
-				type = AssignmentType.CROSS_REFERENCE;
-				element = grammarAccess.getInnerDeclarationAccess().getDataTypeDataTypeCrossReference_4_0(); 
-				return obj;
-			}
-		}
-		return null;
-	}
-
-}
-
-// "}"
-protected class InnerDeclaration_RightCurlyBracketKeyword_5 extends KeywordToken  {
-	
-	public InnerDeclaration_RightCurlyBracketKeyword_5(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getInnerDeclarationAccess().getRightCurlyBracketKeyword_5();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new InnerDeclaration_DataTypeAssignment_4(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-
-/************ end Rule InnerDeclaration ****************/
-
-
-/************ begin Rule Signature ****************
- *
- * Signature returns repository::Signature:
- * 
- * 	(returnType=[repository::DataType|EString] | "void") name=EString "(" (parameters+=Parameter (","
- * 
- * 	parameters+=Parameter)*)? ")";
- *
- **/
-
-// (returnType=[repository::DataType|EString] | "void") name=EString "(" (parameters+=Parameter (","
-// 
-// parameters+=Parameter)*)? ")"
-protected class Signature_Group extends GroupToken {
-	
-	public Signature_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Group getGrammarElement() {
-		return grammarAccess.getSignatureAccess().getGroup();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new Signature_RightParenthesisKeyword_4(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override
-	public IEObjectConsumer tryConsume() {
-		if(getEObject().eClass() != grammarAccess.getSignatureRule().getType().getClassifier())
-			return null;
-		return eObjectConsumer;
-	}
-
-}
-
-// returnType=[repository::DataType|EString] | "void"
-protected class Signature_Alternatives_0 extends AlternativesToken {
-
-	public Signature_Alternatives_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Alternatives getGrammarElement() {
-		return grammarAccess.getSignatureAccess().getAlternatives_0();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new Signature_ReturnTypeAssignment_0_0(lastRuleCallOrigin, this, 0, inst);
-			case 1: return new Signature_VoidKeyword_0_1(lastRuleCallOrigin, this, 1, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// returnType=[repository::DataType|EString]
-protected class Signature_ReturnTypeAssignment_0_0 extends AssignmentToken  {
-	
-	public Signature_ReturnTypeAssignment_0_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Assignment getGrammarElement() {
-		return grammarAccess.getSignatureAccess().getReturnTypeAssignment_0_0();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			default: return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst);
-		}	
-	}
-
-    @Override	
-	public IEObjectConsumer tryConsume() {
-		if((value = eObjectConsumer.getConsumable("returnType",true)) == null) return null;
-		IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("returnType");
-		if(value instanceof EObject) { // org::eclipse::xtext::impl::CrossReferenceImpl
-			IEObjectConsumer param = createEObjectConsumer((EObject)value);
-			if(param.isInstanceOf(grammarAccess.getSignatureAccess().getReturnTypeDataTypeCrossReference_0_0_0().getType().getClassifier())) {
-				type = AssignmentType.CROSS_REFERENCE;
-				element = grammarAccess.getSignatureAccess().getReturnTypeDataTypeCrossReference_0_0_0(); 
-				return obj;
-			}
-		}
-		return null;
-	}
-
-}
-
-// "void"
-protected class Signature_VoidKeyword_0_1 extends KeywordToken  {
-	
-	public Signature_VoidKeyword_0_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getSignatureAccess().getVoidKeyword_0_1();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			default: return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst);
-		}	
-	}
-
-}
-
-
-// name=EString
-protected class Signature_NameAssignment_1 extends AssignmentToken  {
-	
-	public Signature_NameAssignment_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Assignment getGrammarElement() {
-		return grammarAccess.getSignatureAccess().getNameAssignment_1();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new Signature_Alternatives_0(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override	
-	public IEObjectConsumer tryConsume() {
-		if((value = eObjectConsumer.getConsumable("name",true)) == null) return null;
-		IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("name");
-		if(valueSerializer.isValid(obj.getEObject(), grammarAccess.getSignatureAccess().getNameEStringParserRuleCall_1_0(), value, null)) {
-			type = AssignmentType.DATATYPE_RULE_CALL;
-			element = grammarAccess.getSignatureAccess().getNameEStringParserRuleCall_1_0();
-			return obj;
-		}
-		return null;
-	}
-
-}
-
-// "("
-protected class Signature_LeftParenthesisKeyword_2 extends KeywordToken  {
-	
-	public Signature_LeftParenthesisKeyword_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getSignatureAccess().getLeftParenthesisKeyword_2();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new Signature_NameAssignment_1(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// (parameters+=Parameter ("," parameters+=Parameter)*)?
-protected class Signature_Group_3 extends GroupToken {
-	
-	public Signature_Group_3(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Group getGrammarElement() {
-		return grammarAccess.getSignatureAccess().getGroup_3();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new Signature_Group_3_1(lastRuleCallOrigin, this, 0, inst);
-			case 1: return new Signature_ParametersAssignment_3_0(lastRuleCallOrigin, this, 1, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// parameters+=Parameter
-protected class Signature_ParametersAssignment_3_0 extends AssignmentToken  {
-	
-	public Signature_ParametersAssignment_3_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Assignment getGrammarElement() {
-		return grammarAccess.getSignatureAccess().getParametersAssignment_3_0();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new Parameter_Group(this, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override	
-	public IEObjectConsumer tryConsume() {
-		if((value = eObjectConsumer.getConsumable("parameters",true)) == null) return null;
-		IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("parameters");
-		if(value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl
-			IEObjectConsumer param = createEObjectConsumer((EObject)value);
-			if(param.isInstanceOf(grammarAccess.getParameterRule().getType().getClassifier())) {
-				type = AssignmentType.PARSER_RULE_CALL;
-				element = grammarAccess.getSignatureAccess().getParametersParameterParserRuleCall_3_0_0(); 
-				consumed = obj;
-				return param;
-			}
-		}
-		return null;
-	}
-
-    @Override
-	public AbstractToken createFollowerAfterReturn(AbstractToken next,	int actIndex, int index, IEObjectConsumer inst) {
-		if(value == inst.getEObject() && !inst.isConsumed()) return null;
-		switch(index) {
-			case 0: return new Signature_LeftParenthesisKeyword_2(lastRuleCallOrigin, next, actIndex, consumed);
-			default: return null;
-		}	
-	}	
-}
-
-// ("," parameters+=Parameter)*
-protected class Signature_Group_3_1 extends GroupToken {
-	
-	public Signature_Group_3_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Group getGrammarElement() {
-		return grammarAccess.getSignatureAccess().getGroup_3_1();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new Signature_ParametersAssignment_3_1_1(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// ","
-protected class Signature_CommaKeyword_3_1_0 extends KeywordToken  {
-	
-	public Signature_CommaKeyword_3_1_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getSignatureAccess().getCommaKeyword_3_1_0();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new Signature_Group_3_1(lastRuleCallOrigin, this, 0, inst);
-			case 1: return new Signature_ParametersAssignment_3_0(lastRuleCallOrigin, this, 1, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// parameters+=Parameter
-protected class Signature_ParametersAssignment_3_1_1 extends AssignmentToken  {
-	
-	public Signature_ParametersAssignment_3_1_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Assignment getGrammarElement() {
-		return grammarAccess.getSignatureAccess().getParametersAssignment_3_1_1();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new Parameter_Group(this, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override	
-	public IEObjectConsumer tryConsume() {
-		if((value = eObjectConsumer.getConsumable("parameters",false)) == null) return null;
-		IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("parameters");
-		if(value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl
-			IEObjectConsumer param = createEObjectConsumer((EObject)value);
-			if(param.isInstanceOf(grammarAccess.getParameterRule().getType().getClassifier())) {
-				type = AssignmentType.PARSER_RULE_CALL;
-				element = grammarAccess.getSignatureAccess().getParametersParameterParserRuleCall_3_1_1_0(); 
-				consumed = obj;
-				return param;
-			}
-		}
-		return null;
-	}
-
-    @Override
-	public AbstractToken createFollowerAfterReturn(AbstractToken next,	int actIndex, int index, IEObjectConsumer inst) {
-		if(value == inst.getEObject() && !inst.isConsumed()) return null;
-		switch(index) {
-			case 0: return new Signature_CommaKeyword_3_1_0(lastRuleCallOrigin, next, actIndex, consumed);
-			default: return null;
-		}	
-	}	
-}
-
-
-
-// ")"
-protected class Signature_RightParenthesisKeyword_4 extends KeywordToken  {
-	
-	public Signature_RightParenthesisKeyword_4(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getSignatureAccess().getRightParenthesisKeyword_4();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new Signature_Group_3(lastRuleCallOrigin, this, 0, inst);
-			case 1: return new Signature_LeftParenthesisKeyword_2(lastRuleCallOrigin, this, 1, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-
-/************ end Rule Signature ****************/
-
-
-/************ begin Rule Parameter ****************
- *
- * Parameter returns repository::Parameter:
- * 
- * 	dataType=[repository::DataType|EString] name=EString;
- *
- **/
-
-// dataType=[repository::DataType|EString] name=EString
-protected class Parameter_Group extends GroupToken {
-	
-	public Parameter_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Group getGrammarElement() {
-		return grammarAccess.getParameterAccess().getGroup();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new Parameter_NameAssignment_1(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override
-	public IEObjectConsumer tryConsume() {
-		if(getEObject().eClass() != grammarAccess.getParameterRule().getType().getClassifier())
-			return null;
-		return eObjectConsumer;
-	}
-
-}
-
-// dataType=[repository::DataType|EString]
-protected class Parameter_DataTypeAssignment_0 extends AssignmentToken  {
-	
-	public Parameter_DataTypeAssignment_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Assignment getGrammarElement() {
-		return grammarAccess.getParameterAccess().getDataTypeAssignment_0();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			default: return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst);
-		}	
-	}
-
-    @Override	
-	public IEObjectConsumer tryConsume() {
-		if((value = eObjectConsumer.getConsumable("dataType",true)) == null) return null;
-		IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("dataType");
-		if(value instanceof EObject) { // org::eclipse::xtext::impl::CrossReferenceImpl
-			IEObjectConsumer param = createEObjectConsumer((EObject)value);
-			if(param.isInstanceOf(grammarAccess.getParameterAccess().getDataTypeDataTypeCrossReference_0_0().getType().getClassifier())) {
-				type = AssignmentType.CROSS_REFERENCE;
-				element = grammarAccess.getParameterAccess().getDataTypeDataTypeCrossReference_0_0(); 
-				return obj;
-			}
-		}
-		return null;
-	}
-
-}
-
-// name=EString
-protected class Parameter_NameAssignment_1 extends AssignmentToken  {
-	
-	public Parameter_NameAssignment_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Assignment getGrammarElement() {
-		return grammarAccess.getParameterAccess().getNameAssignment_1();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new Parameter_DataTypeAssignment_0(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override	
-	public IEObjectConsumer tryConsume() {
-		if((value = eObjectConsumer.getConsumable("name",true)) == null) return null;
-		IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("name");
-		if(valueSerializer.isValid(obj.getEObject(), grammarAccess.getParameterAccess().getNameEStringParserRuleCall_1_0(), value, null)) {
-			type = AssignmentType.DATATYPE_RULE_CALL;
-			element = grammarAccess.getParameterAccess().getNameEStringParserRuleCall_1_0();
-			return obj;
-		}
-		return null;
-	}
-
-}
-
-
-/************ end Rule Parameter ****************/
-
-
-/************ begin Rule ProvidedRole ****************
- *
- * ProvidedRole returns repository::ProvidedRole:
- * 
- * 	"ProvidedRole" interface=[repository::Interface|EString] ","?;
- *
- **/
-
-// "ProvidedRole" interface=[repository::Interface|EString] ","?
-protected class ProvidedRole_Group extends GroupToken {
-	
-	public ProvidedRole_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Group getGrammarElement() {
-		return grammarAccess.getProvidedRoleAccess().getGroup();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new ProvidedRole_InterfaceAssignment_1(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override
-	public IEObjectConsumer tryConsume() {
-		if(getEObject().eClass() != grammarAccess.getProvidedRoleRule().getType().getClassifier())
-			return null;
-		return eObjectConsumer;
-	}
-
-}
-
-// "ProvidedRole"
-protected class ProvidedRole_ProvidedRoleKeyword_0 extends KeywordToken  {
-	
-	public ProvidedRole_ProvidedRoleKeyword_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getProvidedRoleAccess().getProvidedRoleKeyword_0();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			default: return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst);
-		}	
-	}
-
-}
-
-// interface=[repository::Interface|EString]
-protected class ProvidedRole_InterfaceAssignment_1 extends AssignmentToken  {
-	
-	public ProvidedRole_InterfaceAssignment_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Assignment getGrammarElement() {
-		return grammarAccess.getProvidedRoleAccess().getInterfaceAssignment_1();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new ProvidedRole_ProvidedRoleKeyword_0(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override	
-	public IEObjectConsumer tryConsume() {
-		if((value = eObjectConsumer.getConsumable("interface",true)) == null) return null;
-		IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("interface");
-		if(value instanceof EObject) { // org::eclipse::xtext::impl::CrossReferenceImpl
-			IEObjectConsumer param = createEObjectConsumer((EObject)value);
-			if(param.isInstanceOf(grammarAccess.getProvidedRoleAccess().getInterfaceInterfaceCrossReference_1_0().getType().getClassifier())) {
-				type = AssignmentType.CROSS_REFERENCE;
-				element = grammarAccess.getProvidedRoleAccess().getInterfaceInterfaceCrossReference_1_0(); 
-				return obj;
-			}
-		}
-		return null;
-	}
-
-}
-
-
-/************ end Rule ProvidedRole ****************/
-
-
-/************ begin Rule RequiredRole ****************
- *
- * RequiredRole returns repository::RequiredRole:
- * 
- * 	"RequiredRole" interface=[repository::Interface|EString] ","?;
- *
- **/
-
-// "RequiredRole" interface=[repository::Interface|EString] ","?
-protected class RequiredRole_Group extends GroupToken {
-	
-	public RequiredRole_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Group getGrammarElement() {
-		return grammarAccess.getRequiredRoleAccess().getGroup();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new RequiredRole_InterfaceAssignment_1(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override
-	public IEObjectConsumer tryConsume() {
-		if(getEObject().eClass() != grammarAccess.getRequiredRoleRule().getType().getClassifier())
-			return null;
-		return eObjectConsumer;
-	}
-
-}
-
-// "RequiredRole"
-protected class RequiredRole_RequiredRoleKeyword_0 extends KeywordToken  {
-	
-	public RequiredRole_RequiredRoleKeyword_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getRequiredRoleAccess().getRequiredRoleKeyword_0();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			default: return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst);
-		}	
-	}
-
-}
-
-// interface=[repository::Interface|EString]
-protected class RequiredRole_InterfaceAssignment_1 extends AssignmentToken  {
-	
-	public RequiredRole_InterfaceAssignment_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Assignment getGrammarElement() {
-		return grammarAccess.getRequiredRoleAccess().getInterfaceAssignment_1();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new RequiredRole_RequiredRoleKeyword_0(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override	
-	public IEObjectConsumer tryConsume() {
-		if((value = eObjectConsumer.getConsumable("interface",true)) == null) return null;
-		IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("interface");
-		if(value instanceof EObject) { // org::eclipse::xtext::impl::CrossReferenceImpl
-			IEObjectConsumer param = createEObjectConsumer((EObject)value);
-			if(param.isInstanceOf(grammarAccess.getRequiredRoleAccess().getInterfaceInterfaceCrossReference_1_0().getType().getClassifier())) {
-				type = AssignmentType.CROSS_REFERENCE;
-				element = grammarAccess.getRequiredRoleAccess().getInterfaceInterfaceCrossReference_1_0(); 
-				return obj;
-			}
-		}
-		return null;
-	}
-
-}
-
-
-/************ end Rule RequiredRole ****************/
-
-
-/************ begin Rule BasicComponent ****************
- *
- * BasicComponent returns repository::BasicComponent:
- * 
- * 	"BasicComponent" name=EString (providedRoles+=ProvidedRole ("," providedRoles+=ProvidedRole)*)?
- * 
- * 	(requiredRoles+=RequiredRole ("," requiredRoles+=RequiredRole)*)? "{" ("relationship" "("
- * 
- * 	relationship+=[Relationship|EString] ("," relationship+=[Relationship|EString])* ")")? "}";
- *
- **/
-
-// "BasicComponent" name=EString (providedRoles+=ProvidedRole ("," providedRoles+=ProvidedRole)*)?
-// 
-// (requiredRoles+=RequiredRole ("," requiredRoles+=RequiredRole)*)? "{" ("relationship" "("
-// 
-// relationship+=[Relationship|EString] ("," relationship+=[Relationship|EString])* ")")? "}"
-protected class BasicComponent_Group extends GroupToken {
-	
-	public BasicComponent_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Group getGrammarElement() {
-		return grammarAccess.getBasicComponentAccess().getGroup();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new BasicComponent_RightCurlyBracketKeyword_6(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override
-	public IEObjectConsumer tryConsume() {
-		if(getEObject().eClass() != grammarAccess.getBasicComponentRule().getType().getClassifier())
-			return null;
-		return eObjectConsumer;
-	}
-
-}
-
-// "BasicComponent"
-protected class BasicComponent_BasicComponentKeyword_0 extends KeywordToken  {
-	
-	public BasicComponent_BasicComponentKeyword_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getBasicComponentAccess().getBasicComponentKeyword_0();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			default: return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst);
-		}	
-	}
-
-}
-
-// name=EString
-protected class BasicComponent_NameAssignment_1 extends AssignmentToken  {
-	
-	public BasicComponent_NameAssignment_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Assignment getGrammarElement() {
-		return grammarAccess.getBasicComponentAccess().getNameAssignment_1();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new BasicComponent_BasicComponentKeyword_0(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override	
-	public IEObjectConsumer tryConsume() {
-		if((value = eObjectConsumer.getConsumable("name",true)) == null) return null;
-		IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("name");
-		if(valueSerializer.isValid(obj.getEObject(), grammarAccess.getBasicComponentAccess().getNameEStringParserRuleCall_1_0(), value, null)) {
-			type = AssignmentType.DATATYPE_RULE_CALL;
-			element = grammarAccess.getBasicComponentAccess().getNameEStringParserRuleCall_1_0();
-			return obj;
-		}
-		return null;
-	}
-
-}
-
-// (providedRoles+=ProvidedRole ("," providedRoles+=ProvidedRole)*)?
-protected class BasicComponent_Group_2 extends GroupToken {
-	
-	public BasicComponent_Group_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Group getGrammarElement() {
-		return grammarAccess.getBasicComponentAccess().getGroup_2();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new BasicComponent_Group_2_1(lastRuleCallOrigin, this, 0, inst);
-			case 1: return new BasicComponent_ProvidedRolesAssignment_2_0(lastRuleCallOrigin, this, 1, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// providedRoles+=ProvidedRole
-protected class BasicComponent_ProvidedRolesAssignment_2_0 extends AssignmentToken  {
-	
-	public BasicComponent_ProvidedRolesAssignment_2_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Assignment getGrammarElement() {
-		return grammarAccess.getBasicComponentAccess().getProvidedRolesAssignment_2_0();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new ProvidedRole_Group(this, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override	
-	public IEObjectConsumer tryConsume() {
-		if((value = eObjectConsumer.getConsumable("providedRoles",true)) == null) return null;
-		IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("providedRoles");
-		if(value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl
-			IEObjectConsumer param = createEObjectConsumer((EObject)value);
-			if(param.isInstanceOf(grammarAccess.getProvidedRoleRule().getType().getClassifier())) {
-				type = AssignmentType.PARSER_RULE_CALL;
-				element = grammarAccess.getBasicComponentAccess().getProvidedRolesProvidedRoleParserRuleCall_2_0_0(); 
-				consumed = obj;
-				return param;
-			}
-		}
-		return null;
-	}
-
-    @Override
-	public AbstractToken createFollowerAfterReturn(AbstractToken next,	int actIndex, int index, IEObjectConsumer inst) {
-		if(value == inst.getEObject() && !inst.isConsumed()) return null;
-		switch(index) {
-			case 0: return new BasicComponent_NameAssignment_1(lastRuleCallOrigin, next, actIndex, consumed);
-			default: return null;
-		}	
-	}	
-}
-
-// ("," providedRoles+=ProvidedRole)*
-protected class BasicComponent_Group_2_1 extends GroupToken {
-	
-	public BasicComponent_Group_2_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Group getGrammarElement() {
-		return grammarAccess.getBasicComponentAccess().getGroup_2_1();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new BasicComponent_ProvidedRolesAssignment_2_1_1(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// ","
-protected class BasicComponent_CommaKeyword_2_1_0 extends KeywordToken  {
-	
-	public BasicComponent_CommaKeyword_2_1_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getBasicComponentAccess().getCommaKeyword_2_1_0();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new BasicComponent_Group_2_1(lastRuleCallOrigin, this, 0, inst);
-			case 1: return new BasicComponent_ProvidedRolesAssignment_2_0(lastRuleCallOrigin, this, 1, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// providedRoles+=ProvidedRole
-protected class BasicComponent_ProvidedRolesAssignment_2_1_1 extends AssignmentToken  {
-	
-	public BasicComponent_ProvidedRolesAssignment_2_1_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Assignment getGrammarElement() {
-		return grammarAccess.getBasicComponentAccess().getProvidedRolesAssignment_2_1_1();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new ProvidedRole_Group(this, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override	
-	public IEObjectConsumer tryConsume() {
-		if((value = eObjectConsumer.getConsumable("providedRoles",false)) == null) return null;
-		IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("providedRoles");
-		if(value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl
-			IEObjectConsumer param = createEObjectConsumer((EObject)value);
-			if(param.isInstanceOf(grammarAccess.getProvidedRoleRule().getType().getClassifier())) {
-				type = AssignmentType.PARSER_RULE_CALL;
-				element = grammarAccess.getBasicComponentAccess().getProvidedRolesProvidedRoleParserRuleCall_2_1_1_0(); 
-				consumed = obj;
-				return param;
-			}
-		}
-		return null;
-	}
-
-    @Override
-	public AbstractToken createFollowerAfterReturn(AbstractToken next,	int actIndex, int index, IEObjectConsumer inst) {
-		if(value == inst.getEObject() && !inst.isConsumed()) return null;
-		switch(index) {
-			case 0: return new BasicComponent_CommaKeyword_2_1_0(lastRuleCallOrigin, next, actIndex, consumed);
-			default: return null;
-		}	
-	}	
-}
-
-
-
-// (requiredRoles+=RequiredRole ("," requiredRoles+=RequiredRole)*)?
-protected class BasicComponent_Group_3 extends GroupToken {
-	
-	public BasicComponent_Group_3(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Group getGrammarElement() {
-		return grammarAccess.getBasicComponentAccess().getGroup_3();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new BasicComponent_Group_3_1(lastRuleCallOrigin, this, 0, inst);
-			case 1: return new BasicComponent_RequiredRolesAssignment_3_0(lastRuleCallOrigin, this, 1, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// requiredRoles+=RequiredRole
-protected class BasicComponent_RequiredRolesAssignment_3_0 extends AssignmentToken  {
-	
-	public BasicComponent_RequiredRolesAssignment_3_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Assignment getGrammarElement() {
-		return grammarAccess.getBasicComponentAccess().getRequiredRolesAssignment_3_0();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new RequiredRole_Group(this, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override	
-	public IEObjectConsumer tryConsume() {
-		if((value = eObjectConsumer.getConsumable("requiredRoles",true)) == null) return null;
-		IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("requiredRoles");
-		if(value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl
-			IEObjectConsumer param = createEObjectConsumer((EObject)value);
-			if(param.isInstanceOf(grammarAccess.getRequiredRoleRule().getType().getClassifier())) {
-				type = AssignmentType.PARSER_RULE_CALL;
-				element = grammarAccess.getBasicComponentAccess().getRequiredRolesRequiredRoleParserRuleCall_3_0_0(); 
-				consumed = obj;
-				return param;
-			}
-		}
-		return null;
-	}
-
-    @Override
-	public AbstractToken createFollowerAfterReturn(AbstractToken next,	int actIndex, int index, IEObjectConsumer inst) {
-		if(value == inst.getEObject() && !inst.isConsumed()) return null;
-		switch(index) {
-			case 0: return new BasicComponent_Group_2(lastRuleCallOrigin, next, actIndex, consumed);
-			case 1: return new BasicComponent_NameAssignment_1(lastRuleCallOrigin, next, actIndex, consumed);
-			default: return null;
-		}	
-	}	
-}
-
-// ("," requiredRoles+=RequiredRole)*
-protected class BasicComponent_Group_3_1 extends GroupToken {
-	
-	public BasicComponent_Group_3_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Group getGrammarElement() {
-		return grammarAccess.getBasicComponentAccess().getGroup_3_1();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new BasicComponent_RequiredRolesAssignment_3_1_1(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// ","
-protected class BasicComponent_CommaKeyword_3_1_0 extends KeywordToken  {
-	
-	public BasicComponent_CommaKeyword_3_1_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getBasicComponentAccess().getCommaKeyword_3_1_0();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new BasicComponent_Group_3_1(lastRuleCallOrigin, this, 0, inst);
-			case 1: return new BasicComponent_RequiredRolesAssignment_3_0(lastRuleCallOrigin, this, 1, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// requiredRoles+=RequiredRole
-protected class BasicComponent_RequiredRolesAssignment_3_1_1 extends AssignmentToken  {
-	
-	public BasicComponent_RequiredRolesAssignment_3_1_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Assignment getGrammarElement() {
-		return grammarAccess.getBasicComponentAccess().getRequiredRolesAssignment_3_1_1();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new RequiredRole_Group(this, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override	
-	public IEObjectConsumer tryConsume() {
-		if((value = eObjectConsumer.getConsumable("requiredRoles",false)) == null) return null;
-		IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("requiredRoles");
-		if(value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl
-			IEObjectConsumer param = createEObjectConsumer((EObject)value);
-			if(param.isInstanceOf(grammarAccess.getRequiredRoleRule().getType().getClassifier())) {
-				type = AssignmentType.PARSER_RULE_CALL;
-				element = grammarAccess.getBasicComponentAccess().getRequiredRolesRequiredRoleParserRuleCall_3_1_1_0(); 
-				consumed = obj;
-				return param;
-			}
-		}
-		return null;
-	}
-
-    @Override
-	public AbstractToken createFollowerAfterReturn(AbstractToken next,	int actIndex, int index, IEObjectConsumer inst) {
-		if(value == inst.getEObject() && !inst.isConsumed()) return null;
-		switch(index) {
-			case 0: return new BasicComponent_CommaKeyword_3_1_0(lastRuleCallOrigin, next, actIndex, consumed);
-			default: return null;
-		}	
-	}	
-}
-
-
-
-// "{"
-protected class BasicComponent_LeftCurlyBracketKeyword_4 extends KeywordToken  {
-	
-	public BasicComponent_LeftCurlyBracketKeyword_4(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getBasicComponentAccess().getLeftCurlyBracketKeyword_4();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new BasicComponent_Group_3(lastRuleCallOrigin, this, 0, inst);
-			case 1: return new BasicComponent_Group_2(lastRuleCallOrigin, this, 1, inst);
-			case 2: return new BasicComponent_NameAssignment_1(lastRuleCallOrigin, this, 2, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// ("relationship" "(" relationship+=[Relationship|EString] ("," relationship+=[Relationship|EString])* ")")?
-protected class BasicComponent_Group_5 extends GroupToken {
-	
-	public BasicComponent_Group_5(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Group getGrammarElement() {
-		return grammarAccess.getBasicComponentAccess().getGroup_5();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new BasicComponent_RightParenthesisKeyword_5_4(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// "relationship"
-protected class BasicComponent_RelationshipKeyword_5_0 extends KeywordToken  {
-	
-	public BasicComponent_RelationshipKeyword_5_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getBasicComponentAccess().getRelationshipKeyword_5_0();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new BasicComponent_LeftCurlyBracketKeyword_4(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// "("
-protected class BasicComponent_LeftParenthesisKeyword_5_1 extends KeywordToken  {
-	
-	public BasicComponent_LeftParenthesisKeyword_5_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getBasicComponentAccess().getLeftParenthesisKeyword_5_1();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new BasicComponent_RelationshipKeyword_5_0(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// relationship+=[Relationship|EString]
-protected class BasicComponent_RelationshipAssignment_5_2 extends AssignmentToken  {
-	
-	public BasicComponent_RelationshipAssignment_5_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Assignment getGrammarElement() {
-		return grammarAccess.getBasicComponentAccess().getRelationshipAssignment_5_2();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new BasicComponent_LeftParenthesisKeyword_5_1(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override	
-	public IEObjectConsumer tryConsume() {
-		if((value = eObjectConsumer.getConsumable("relationship",true)) == null) return null;
-		IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("relationship");
-		if(value instanceof EObject) { // org::eclipse::xtext::impl::CrossReferenceImpl
-			IEObjectConsumer param = createEObjectConsumer((EObject)value);
-			if(param.isInstanceOf(grammarAccess.getBasicComponentAccess().getRelationshipRelationshipCrossReference_5_2_0().getType().getClassifier())) {
-				type = AssignmentType.CROSS_REFERENCE;
-				element = grammarAccess.getBasicComponentAccess().getRelationshipRelationshipCrossReference_5_2_0(); 
-				return obj;
-			}
-		}
-		return null;
-	}
-
-}
-
-// ("," relationship+=[Relationship|EString])*
-protected class BasicComponent_Group_5_3 extends GroupToken {
-	
-	public BasicComponent_Group_5_3(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Group getGrammarElement() {
-		return grammarAccess.getBasicComponentAccess().getGroup_5_3();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new BasicComponent_RelationshipAssignment_5_3_1(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// ","
-protected class BasicComponent_CommaKeyword_5_3_0 extends KeywordToken  {
-	
-	public BasicComponent_CommaKeyword_5_3_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getBasicComponentAccess().getCommaKeyword_5_3_0();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new BasicComponent_Group_5_3(lastRuleCallOrigin, this, 0, inst);
-			case 1: return new BasicComponent_RelationshipAssignment_5_2(lastRuleCallOrigin, this, 1, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// relationship+=[Relationship|EString]
-protected class BasicComponent_RelationshipAssignment_5_3_1 extends AssignmentToken  {
-	
-	public BasicComponent_RelationshipAssignment_5_3_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Assignment getGrammarElement() {
-		return grammarAccess.getBasicComponentAccess().getRelationshipAssignment_5_3_1();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new BasicComponent_CommaKeyword_5_3_0(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override	
-	public IEObjectConsumer tryConsume() {
-		if((value = eObjectConsumer.getConsumable("relationship",false)) == null) return null;
-		IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("relationship");
-		if(value instanceof EObject) { // org::eclipse::xtext::impl::CrossReferenceImpl
-			IEObjectConsumer param = createEObjectConsumer((EObject)value);
-			if(param.isInstanceOf(grammarAccess.getBasicComponentAccess().getRelationshipRelationshipCrossReference_5_3_1_0().getType().getClassifier())) {
-				type = AssignmentType.CROSS_REFERENCE;
-				element = grammarAccess.getBasicComponentAccess().getRelationshipRelationshipCrossReference_5_3_1_0(); 
-				return obj;
-			}
-		}
-		return null;
-	}
-
-}
-
-
-// ")"
-protected class BasicComponent_RightParenthesisKeyword_5_4 extends KeywordToken  {
-	
-	public BasicComponent_RightParenthesisKeyword_5_4(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getBasicComponentAccess().getRightParenthesisKeyword_5_4();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new BasicComponent_Group_5_3(lastRuleCallOrigin, this, 0, inst);
-			case 1: return new BasicComponent_RelationshipAssignment_5_2(lastRuleCallOrigin, this, 1, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-
-// "}"
-protected class BasicComponent_RightCurlyBracketKeyword_6 extends KeywordToken  {
-	
-	public BasicComponent_RightCurlyBracketKeyword_6(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getBasicComponentAccess().getRightCurlyBracketKeyword_6();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new BasicComponent_Group_5(lastRuleCallOrigin, this, 0, inst);
-			case 1: return new BasicComponent_LeftCurlyBracketKeyword_4(lastRuleCallOrigin, this, 1, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-
-/************ end Rule BasicComponent ****************/
-
-
-/************ begin Rule CompositeComponent ****************
- *
- * CompositeComponent returns repository::CompositeComponent:
- * 
- * 	"CompositeComponent" name=EString (providedRoles+=ProvidedRole ("," providedRoles+=ProvidedRole)*)?
- * 
- * 	(requiredRoles+=RequiredRole ("," requiredRoles+=RequiredRole)*)? "{" ("relationship" "("
- * 
- * 	relationship+=[Relationship|EString] ("," relationship+=[Relationship|EString])* ")")? ("assembly"
- * 
- * 	assembly=ComposedStructureAssembly)? "}";
- *
- **/
-
-// "CompositeComponent" name=EString (providedRoles+=ProvidedRole ("," providedRoles+=ProvidedRole)*)?
-// 
-// (requiredRoles+=RequiredRole ("," requiredRoles+=RequiredRole)*)? "{" ("relationship" "("
-// 
-// relationship+=[Relationship|EString] ("," relationship+=[Relationship|EString])* ")")? ("assembly"
-// 
-// assembly=ComposedStructureAssembly)? "}"
-protected class CompositeComponent_Group extends GroupToken {
-	
-	public CompositeComponent_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Group getGrammarElement() {
-		return grammarAccess.getCompositeComponentAccess().getGroup();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new CompositeComponent_RightCurlyBracketKeyword_7(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override
-	public IEObjectConsumer tryConsume() {
-		if(getEObject().eClass() != grammarAccess.getCompositeComponentRule().getType().getClassifier())
-			return null;
-		return eObjectConsumer;
-	}
-
-}
-
-// "CompositeComponent"
-protected class CompositeComponent_CompositeComponentKeyword_0 extends KeywordToken  {
-	
-	public CompositeComponent_CompositeComponentKeyword_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getCompositeComponentAccess().getCompositeComponentKeyword_0();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			default: return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst);
-		}	
-	}
-
-}
-
-// name=EString
-protected class CompositeComponent_NameAssignment_1 extends AssignmentToken  {
-	
-	public CompositeComponent_NameAssignment_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Assignment getGrammarElement() {
-		return grammarAccess.getCompositeComponentAccess().getNameAssignment_1();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new CompositeComponent_CompositeComponentKeyword_0(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override	
-	public IEObjectConsumer tryConsume() {
-		if((value = eObjectConsumer.getConsumable("name",true)) == null) return null;
-		IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("name");
-		if(valueSerializer.isValid(obj.getEObject(), grammarAccess.getCompositeComponentAccess().getNameEStringParserRuleCall_1_0(), value, null)) {
-			type = AssignmentType.DATATYPE_RULE_CALL;
-			element = grammarAccess.getCompositeComponentAccess().getNameEStringParserRuleCall_1_0();
-			return obj;
-		}
-		return null;
-	}
-
-}
-
-// (providedRoles+=ProvidedRole ("," providedRoles+=ProvidedRole)*)?
-protected class CompositeComponent_Group_2 extends GroupToken {
-	
-	public CompositeComponent_Group_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Group getGrammarElement() {
-		return grammarAccess.getCompositeComponentAccess().getGroup_2();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new CompositeComponent_Group_2_1(lastRuleCallOrigin, this, 0, inst);
-			case 1: return new CompositeComponent_ProvidedRolesAssignment_2_0(lastRuleCallOrigin, this, 1, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// providedRoles+=ProvidedRole
-protected class CompositeComponent_ProvidedRolesAssignment_2_0 extends AssignmentToken  {
-	
-	public CompositeComponent_ProvidedRolesAssignment_2_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Assignment getGrammarElement() {
-		return grammarAccess.getCompositeComponentAccess().getProvidedRolesAssignment_2_0();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new ProvidedRole_Group(this, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override	
-	public IEObjectConsumer tryConsume() {
-		if((value = eObjectConsumer.getConsumable("providedRoles",true)) == null) return null;
-		IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("providedRoles");
-		if(value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl
-			IEObjectConsumer param = createEObjectConsumer((EObject)value);
-			if(param.isInstanceOf(grammarAccess.getProvidedRoleRule().getType().getClassifier())) {
-				type = AssignmentType.PARSER_RULE_CALL;
-				element = grammarAccess.getCompositeComponentAccess().getProvidedRolesProvidedRoleParserRuleCall_2_0_0(); 
-				consumed = obj;
-				return param;
-			}
-		}
-		return null;
-	}
-
-    @Override
-	public AbstractToken createFollowerAfterReturn(AbstractToken next,	int actIndex, int index, IEObjectConsumer inst) {
-		if(value == inst.getEObject() && !inst.isConsumed()) return null;
-		switch(index) {
-			case 0: return new CompositeComponent_NameAssignment_1(lastRuleCallOrigin, next, actIndex, consumed);
-			default: return null;
-		}	
-	}	
-}
-
-// ("," providedRoles+=ProvidedRole)*
-protected class CompositeComponent_Group_2_1 extends GroupToken {
-	
-	public CompositeComponent_Group_2_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Group getGrammarElement() {
-		return grammarAccess.getCompositeComponentAccess().getGroup_2_1();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new CompositeComponent_ProvidedRolesAssignment_2_1_1(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// ","
-protected class CompositeComponent_CommaKeyword_2_1_0 extends KeywordToken  {
-	
-	public CompositeComponent_CommaKeyword_2_1_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getCompositeComponentAccess().getCommaKeyword_2_1_0();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new CompositeComponent_Group_2_1(lastRuleCallOrigin, this, 0, inst);
-			case 1: return new CompositeComponent_ProvidedRolesAssignment_2_0(lastRuleCallOrigin, this, 1, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// providedRoles+=ProvidedRole
-protected class CompositeComponent_ProvidedRolesAssignment_2_1_1 extends AssignmentToken  {
-	
-	public CompositeComponent_ProvidedRolesAssignment_2_1_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Assignment getGrammarElement() {
-		return grammarAccess.getCompositeComponentAccess().getProvidedRolesAssignment_2_1_1();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new ProvidedRole_Group(this, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override	
-	public IEObjectConsumer tryConsume() {
-		if((value = eObjectConsumer.getConsumable("providedRoles",false)) == null) return null;
-		IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("providedRoles");
-		if(value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl
-			IEObjectConsumer param = createEObjectConsumer((EObject)value);
-			if(param.isInstanceOf(grammarAccess.getProvidedRoleRule().getType().getClassifier())) {
-				type = AssignmentType.PARSER_RULE_CALL;
-				element = grammarAccess.getCompositeComponentAccess().getProvidedRolesProvidedRoleParserRuleCall_2_1_1_0(); 
-				consumed = obj;
-				return param;
-			}
-		}
-		return null;
-	}
-
-    @Override
-	public AbstractToken createFollowerAfterReturn(AbstractToken next,	int actIndex, int index, IEObjectConsumer inst) {
-		if(value == inst.getEObject() && !inst.isConsumed()) return null;
-		switch(index) {
-			case 0: return new CompositeComponent_CommaKeyword_2_1_0(lastRuleCallOrigin, next, actIndex, consumed);
-			default: return null;
-		}	
-	}	
-}
-
-
-
-// (requiredRoles+=RequiredRole ("," requiredRoles+=RequiredRole)*)?
-protected class CompositeComponent_Group_3 extends GroupToken {
-	
-	public CompositeComponent_Group_3(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Group getGrammarElement() {
-		return grammarAccess.getCompositeComponentAccess().getGroup_3();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new CompositeComponent_Group_3_1(lastRuleCallOrigin, this, 0, inst);
-			case 1: return new CompositeComponent_RequiredRolesAssignment_3_0(lastRuleCallOrigin, this, 1, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// requiredRoles+=RequiredRole
-protected class CompositeComponent_RequiredRolesAssignment_3_0 extends AssignmentToken  {
-	
-	public CompositeComponent_RequiredRolesAssignment_3_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Assignment getGrammarElement() {
-		return grammarAccess.getCompositeComponentAccess().getRequiredRolesAssignment_3_0();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new RequiredRole_Group(this, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override	
-	public IEObjectConsumer tryConsume() {
-		if((value = eObjectConsumer.getConsumable("requiredRoles",true)) == null) return null;
-		IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("requiredRoles");
-		if(value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl
-			IEObjectConsumer param = createEObjectConsumer((EObject)value);
-			if(param.isInstanceOf(grammarAccess.getRequiredRoleRule().getType().getClassifier())) {
-				type = AssignmentType.PARSER_RULE_CALL;
-				element = grammarAccess.getCompositeComponentAccess().getRequiredRolesRequiredRoleParserRuleCall_3_0_0(); 
-				consumed = obj;
-				return param;
-			}
-		}
-		return null;
-	}
-
-    @Override
-	public AbstractToken createFollowerAfterReturn(AbstractToken next,	int actIndex, int index, IEObjectConsumer inst) {
-		if(value == inst.getEObject() && !inst.isConsumed()) return null;
-		switch(index) {
-			case 0: return new CompositeComponent_Group_2(lastRuleCallOrigin, next, actIndex, consumed);
-			case 1: return new CompositeComponent_NameAssignment_1(lastRuleCallOrigin, next, actIndex, consumed);
-			default: return null;
-		}	
-	}	
-}
-
-// ("," requiredRoles+=RequiredRole)*
-protected class CompositeComponent_Group_3_1 extends GroupToken {
-	
-	public CompositeComponent_Group_3_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Group getGrammarElement() {
-		return grammarAccess.getCompositeComponentAccess().getGroup_3_1();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new CompositeComponent_RequiredRolesAssignment_3_1_1(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// ","
-protected class CompositeComponent_CommaKeyword_3_1_0 extends KeywordToken  {
-	
-	public CompositeComponent_CommaKeyword_3_1_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getCompositeComponentAccess().getCommaKeyword_3_1_0();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new CompositeComponent_Group_3_1(lastRuleCallOrigin, this, 0, inst);
-			case 1: return new CompositeComponent_RequiredRolesAssignment_3_0(lastRuleCallOrigin, this, 1, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// requiredRoles+=RequiredRole
-protected class CompositeComponent_RequiredRolesAssignment_3_1_1 extends AssignmentToken  {
-	
-	public CompositeComponent_RequiredRolesAssignment_3_1_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Assignment getGrammarElement() {
-		return grammarAccess.getCompositeComponentAccess().getRequiredRolesAssignment_3_1_1();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new RequiredRole_Group(this, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override	
-	public IEObjectConsumer tryConsume() {
-		if((value = eObjectConsumer.getConsumable("requiredRoles",false)) == null) return null;
-		IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("requiredRoles");
-		if(value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl
-			IEObjectConsumer param = createEObjectConsumer((EObject)value);
-			if(param.isInstanceOf(grammarAccess.getRequiredRoleRule().getType().getClassifier())) {
-				type = AssignmentType.PARSER_RULE_CALL;
-				element = grammarAccess.getCompositeComponentAccess().getRequiredRolesRequiredRoleParserRuleCall_3_1_1_0(); 
-				consumed = obj;
-				return param;
-			}
-		}
-		return null;
-	}
-
-    @Override
-	public AbstractToken createFollowerAfterReturn(AbstractToken next,	int actIndex, int index, IEObjectConsumer inst) {
-		if(value == inst.getEObject() && !inst.isConsumed()) return null;
-		switch(index) {
-			case 0: return new CompositeComponent_CommaKeyword_3_1_0(lastRuleCallOrigin, next, actIndex, consumed);
-			default: return null;
-		}	
-	}	
-}
-
-
-
-// "{"
-protected class CompositeComponent_LeftCurlyBracketKeyword_4 extends KeywordToken  {
-	
-	public CompositeComponent_LeftCurlyBracketKeyword_4(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getCompositeComponentAccess().getLeftCurlyBracketKeyword_4();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new CompositeComponent_Group_3(lastRuleCallOrigin, this, 0, inst);
-			case 1: return new CompositeComponent_Group_2(lastRuleCallOrigin, this, 1, inst);
-			case 2: return new CompositeComponent_NameAssignment_1(lastRuleCallOrigin, this, 2, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// ("relationship" "(" relationship+=[Relationship|EString] ("," relationship+=[Relationship|EString])* ")")?
-protected class CompositeComponent_Group_5 extends GroupToken {
-	
-	public CompositeComponent_Group_5(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Group getGrammarElement() {
-		return grammarAccess.getCompositeComponentAccess().getGroup_5();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new CompositeComponent_RightParenthesisKeyword_5_4(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// "relationship"
-protected class CompositeComponent_RelationshipKeyword_5_0 extends KeywordToken  {
-	
-	public CompositeComponent_RelationshipKeyword_5_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getCompositeComponentAccess().getRelationshipKeyword_5_0();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new CompositeComponent_LeftCurlyBracketKeyword_4(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// "("
-protected class CompositeComponent_LeftParenthesisKeyword_5_1 extends KeywordToken  {
-	
-	public CompositeComponent_LeftParenthesisKeyword_5_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getCompositeComponentAccess().getLeftParenthesisKeyword_5_1();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new CompositeComponent_RelationshipKeyword_5_0(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// relationship+=[Relationship|EString]
-protected class CompositeComponent_RelationshipAssignment_5_2 extends AssignmentToken  {
-	
-	public CompositeComponent_RelationshipAssignment_5_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Assignment getGrammarElement() {
-		return grammarAccess.getCompositeComponentAccess().getRelationshipAssignment_5_2();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new CompositeComponent_LeftParenthesisKeyword_5_1(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override	
-	public IEObjectConsumer tryConsume() {
-		if((value = eObjectConsumer.getConsumable("relationship",true)) == null) return null;
-		IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("relationship");
-		if(value instanceof EObject) { // org::eclipse::xtext::impl::CrossReferenceImpl
-			IEObjectConsumer param = createEObjectConsumer((EObject)value);
-			if(param.isInstanceOf(grammarAccess.getCompositeComponentAccess().getRelationshipRelationshipCrossReference_5_2_0().getType().getClassifier())) {
-				type = AssignmentType.CROSS_REFERENCE;
-				element = grammarAccess.getCompositeComponentAccess().getRelationshipRelationshipCrossReference_5_2_0(); 
-				return obj;
-			}
-		}
-		return null;
-	}
-
-}
-
-// ("," relationship+=[Relationship|EString])*
-protected class CompositeComponent_Group_5_3 extends GroupToken {
-	
-	public CompositeComponent_Group_5_3(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Group getGrammarElement() {
-		return grammarAccess.getCompositeComponentAccess().getGroup_5_3();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new CompositeComponent_RelationshipAssignment_5_3_1(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// ","
-protected class CompositeComponent_CommaKeyword_5_3_0 extends KeywordToken  {
-	
-	public CompositeComponent_CommaKeyword_5_3_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getCompositeComponentAccess().getCommaKeyword_5_3_0();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new CompositeComponent_Group_5_3(lastRuleCallOrigin, this, 0, inst);
-			case 1: return new CompositeComponent_RelationshipAssignment_5_2(lastRuleCallOrigin, this, 1, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// relationship+=[Relationship|EString]
-protected class CompositeComponent_RelationshipAssignment_5_3_1 extends AssignmentToken  {
-	
-	public CompositeComponent_RelationshipAssignment_5_3_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Assignment getGrammarElement() {
-		return grammarAccess.getCompositeComponentAccess().getRelationshipAssignment_5_3_1();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new CompositeComponent_CommaKeyword_5_3_0(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override	
-	public IEObjectConsumer tryConsume() {
-		if((value = eObjectConsumer.getConsumable("relationship",false)) == null) return null;
-		IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("relationship");
-		if(value instanceof EObject) { // org::eclipse::xtext::impl::CrossReferenceImpl
-			IEObjectConsumer param = createEObjectConsumer((EObject)value);
-			if(param.isInstanceOf(grammarAccess.getCompositeComponentAccess().getRelationshipRelationshipCrossReference_5_3_1_0().getType().getClassifier())) {
-				type = AssignmentType.CROSS_REFERENCE;
-				element = grammarAccess.getCompositeComponentAccess().getRelationshipRelationshipCrossReference_5_3_1_0(); 
-				return obj;
-			}
-		}
-		return null;
-	}
-
-}
-
-
-// ")"
-protected class CompositeComponent_RightParenthesisKeyword_5_4 extends KeywordToken  {
-	
-	public CompositeComponent_RightParenthesisKeyword_5_4(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getCompositeComponentAccess().getRightParenthesisKeyword_5_4();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new CompositeComponent_Group_5_3(lastRuleCallOrigin, this, 0, inst);
-			case 1: return new CompositeComponent_RelationshipAssignment_5_2(lastRuleCallOrigin, this, 1, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-
-// ("assembly" assembly=ComposedStructureAssembly)?
-protected class CompositeComponent_Group_6 extends GroupToken {
-	
-	public CompositeComponent_Group_6(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Group getGrammarElement() {
-		return grammarAccess.getCompositeComponentAccess().getGroup_6();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new CompositeComponent_AssemblyAssignment_6_1(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// "assembly"
-protected class CompositeComponent_AssemblyKeyword_6_0 extends KeywordToken  {
-	
-	public CompositeComponent_AssemblyKeyword_6_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getCompositeComponentAccess().getAssemblyKeyword_6_0();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new CompositeComponent_Group_5(lastRuleCallOrigin, this, 0, inst);
-			case 1: return new CompositeComponent_LeftCurlyBracketKeyword_4(lastRuleCallOrigin, this, 1, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// assembly=ComposedStructureAssembly
-protected class CompositeComponent_AssemblyAssignment_6_1 extends AssignmentToken  {
-	
-	public CompositeComponent_AssemblyAssignment_6_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Assignment getGrammarElement() {
-		return grammarAccess.getCompositeComponentAccess().getAssemblyAssignment_6_1();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new ComposedStructureAssembly_Group(this, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override	
-	public IEObjectConsumer tryConsume() {
-		if((value = eObjectConsumer.getConsumable("assembly",false)) == null) return null;
-		IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("assembly");
-		if(value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl
-			IEObjectConsumer param = createEObjectConsumer((EObject)value);
-			if(param.isInstanceOf(grammarAccess.getComposedStructureAssemblyRule().getType().getClassifier())) {
-				type = AssignmentType.PARSER_RULE_CALL;
-				element = grammarAccess.getCompositeComponentAccess().getAssemblyComposedStructureAssemblyParserRuleCall_6_1_0(); 
-				consumed = obj;
-				return param;
-			}
-		}
-		return null;
-	}
-
-    @Override
-	public AbstractToken createFollowerAfterReturn(AbstractToken next,	int actIndex, int index, IEObjectConsumer inst) {
-		if(value == inst.getEObject() && !inst.isConsumed()) return null;
-		switch(index) {
-			case 0: return new CompositeComponent_AssemblyKeyword_6_0(lastRuleCallOrigin, next, actIndex, consumed);
-			default: return null;
-		}	
-	}	
-}
-
-
-// "}"
-protected class CompositeComponent_RightCurlyBracketKeyword_7 extends KeywordToken  {
-	
-	public CompositeComponent_RightCurlyBracketKeyword_7(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getCompositeComponentAccess().getRightCurlyBracketKeyword_7();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new CompositeComponent_Group_6(lastRuleCallOrigin, this, 0, inst);
-			case 1: return new CompositeComponent_Group_5(lastRuleCallOrigin, this, 1, inst);
-			case 2: return new CompositeComponent_LeftCurlyBracketKeyword_4(lastRuleCallOrigin, this, 2, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-
-/************ end Rule CompositeComponent ****************/
-
-
-/************ begin Rule SubSystem ****************
- *
- * SubSystem returns repository::SubSystem:
- * 
- * 	"SubSystem" name=EString ("providedRoles" "{" providedRoles+=ProvidedRole ("," providedRoles+=ProvidedRole)* "}")?
- * 
- * 	("requiredRoles" "{" requiredRoles+=RequiredRole ("," requiredRoles+=RequiredRole)* "}")? "{" ("relationship" "("
- * 
- * 	relationship+=[Relationship|EString] ("," relationship+=[Relationship|EString])* ")")? ("assembly"
- * 
- * 	assembly=ComposedStructureAssembly)? "}";
- *
- **/
-
-// "SubSystem" name=EString ("providedRoles" "{" providedRoles+=ProvidedRole ("," providedRoles+=ProvidedRole)* "}")?
-// 
-// ("requiredRoles" "{" requiredRoles+=RequiredRole ("," requiredRoles+=RequiredRole)* "}")? "{" ("relationship" "("
-// 
-// relationship+=[Relationship|EString] ("," relationship+=[Relationship|EString])* ")")? ("assembly"
-// 
-// assembly=ComposedStructureAssembly)? "}"
-protected class SubSystem_Group extends GroupToken {
-	
-	public SubSystem_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Group getGrammarElement() {
-		return grammarAccess.getSubSystemAccess().getGroup();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new SubSystem_RightCurlyBracketKeyword_7(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override
-	public IEObjectConsumer tryConsume() {
-		if(getEObject().eClass() != grammarAccess.getSubSystemRule().getType().getClassifier())
-			return null;
-		return eObjectConsumer;
-	}
-
-}
-
-// "SubSystem"
-protected class SubSystem_SubSystemKeyword_0 extends KeywordToken  {
-	
-	public SubSystem_SubSystemKeyword_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getSubSystemAccess().getSubSystemKeyword_0();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			default: return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst);
-		}	
-	}
-
-}
-
-// name=EString
-protected class SubSystem_NameAssignment_1 extends AssignmentToken  {
-	
-	public SubSystem_NameAssignment_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Assignment getGrammarElement() {
-		return grammarAccess.getSubSystemAccess().getNameAssignment_1();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new SubSystem_SubSystemKeyword_0(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override	
-	public IEObjectConsumer tryConsume() {
-		if((value = eObjectConsumer.getConsumable("name",true)) == null) return null;
-		IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("name");
-		if(valueSerializer.isValid(obj.getEObject(), grammarAccess.getSubSystemAccess().getNameEStringParserRuleCall_1_0(), value, null)) {
-			type = AssignmentType.DATATYPE_RULE_CALL;
-			element = grammarAccess.getSubSystemAccess().getNameEStringParserRuleCall_1_0();
-			return obj;
-		}
-		return null;
-	}
-
-}
-
-// ("providedRoles" "{" providedRoles+=ProvidedRole ("," providedRoles+=ProvidedRole)* "}")?
-protected class SubSystem_Group_2 extends GroupToken {
-	
-	public SubSystem_Group_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Group getGrammarElement() {
-		return grammarAccess.getSubSystemAccess().getGroup_2();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new SubSystem_RightCurlyBracketKeyword_2_4(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// "providedRoles"
-protected class SubSystem_ProvidedRolesKeyword_2_0 extends KeywordToken  {
-	
-	public SubSystem_ProvidedRolesKeyword_2_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getSubSystemAccess().getProvidedRolesKeyword_2_0();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new SubSystem_NameAssignment_1(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// "{"
-protected class SubSystem_LeftCurlyBracketKeyword_2_1 extends KeywordToken  {
-	
-	public SubSystem_LeftCurlyBracketKeyword_2_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getSubSystemAccess().getLeftCurlyBracketKeyword_2_1();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new SubSystem_ProvidedRolesKeyword_2_0(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// providedRoles+=ProvidedRole
-protected class SubSystem_ProvidedRolesAssignment_2_2 extends AssignmentToken  {
-	
-	public SubSystem_ProvidedRolesAssignment_2_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Assignment getGrammarElement() {
-		return grammarAccess.getSubSystemAccess().getProvidedRolesAssignment_2_2();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new ProvidedRole_Group(this, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override	
-	public IEObjectConsumer tryConsume() {
-		if((value = eObjectConsumer.getConsumable("providedRoles",true)) == null) return null;
-		IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("providedRoles");
-		if(value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl
-			IEObjectConsumer param = createEObjectConsumer((EObject)value);
-			if(param.isInstanceOf(grammarAccess.getProvidedRoleRule().getType().getClassifier())) {
-				type = AssignmentType.PARSER_RULE_CALL;
-				element = grammarAccess.getSubSystemAccess().getProvidedRolesProvidedRoleParserRuleCall_2_2_0(); 
-				consumed = obj;
-				return param;
-			}
-		}
-		return null;
-	}
-
-    @Override
-	public AbstractToken createFollowerAfterReturn(AbstractToken next,	int actIndex, int index, IEObjectConsumer inst) {
-		if(value == inst.getEObject() && !inst.isConsumed()) return null;
-		switch(index) {
-			case 0: return new SubSystem_LeftCurlyBracketKeyword_2_1(lastRuleCallOrigin, next, actIndex, consumed);
-			default: return null;
-		}	
-	}	
-}
-
-// ("," providedRoles+=ProvidedRole)*
-protected class SubSystem_Group_2_3 extends GroupToken {
-	
-	public SubSystem_Group_2_3(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Group getGrammarElement() {
-		return grammarAccess.getSubSystemAccess().getGroup_2_3();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new SubSystem_ProvidedRolesAssignment_2_3_1(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// ","
-protected class SubSystem_CommaKeyword_2_3_0 extends KeywordToken  {
-	
-	public SubSystem_CommaKeyword_2_3_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getSubSystemAccess().getCommaKeyword_2_3_0();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new SubSystem_Group_2_3(lastRuleCallOrigin, this, 0, inst);
-			case 1: return new SubSystem_ProvidedRolesAssignment_2_2(lastRuleCallOrigin, this, 1, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// providedRoles+=ProvidedRole
-protected class SubSystem_ProvidedRolesAssignment_2_3_1 extends AssignmentToken  {
-	
-	public SubSystem_ProvidedRolesAssignment_2_3_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Assignment getGrammarElement() {
-		return grammarAccess.getSubSystemAccess().getProvidedRolesAssignment_2_3_1();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new ProvidedRole_Group(this, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override	
-	public IEObjectConsumer tryConsume() {
-		if((value = eObjectConsumer.getConsumable("providedRoles",false)) == null) return null;
-		IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("providedRoles");
-		if(value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl
-			IEObjectConsumer param = createEObjectConsumer((EObject)value);
-			if(param.isInstanceOf(grammarAccess.getProvidedRoleRule().getType().getClassifier())) {
-				type = AssignmentType.PARSER_RULE_CALL;
-				element = grammarAccess.getSubSystemAccess().getProvidedRolesProvidedRoleParserRuleCall_2_3_1_0(); 
-				consumed = obj;
-				return param;
-			}
-		}
-		return null;
-	}
-
-    @Override
-	public AbstractToken createFollowerAfterReturn(AbstractToken next,	int actIndex, int index, IEObjectConsumer inst) {
-		if(value == inst.getEObject() && !inst.isConsumed()) return null;
-		switch(index) {
-			case 0: return new SubSystem_CommaKeyword_2_3_0(lastRuleCallOrigin, next, actIndex, consumed);
-			default: return null;
-		}	
-	}	
-}
-
-
-// "}"
-protected class SubSystem_RightCurlyBracketKeyword_2_4 extends KeywordToken  {
-	
-	public SubSystem_RightCurlyBracketKeyword_2_4(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getSubSystemAccess().getRightCurlyBracketKeyword_2_4();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new SubSystem_Group_2_3(lastRuleCallOrigin, this, 0, inst);
-			case 1: return new SubSystem_ProvidedRolesAssignment_2_2(lastRuleCallOrigin, this, 1, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-
-// ("requiredRoles" "{" requiredRoles+=RequiredRole ("," requiredRoles+=RequiredRole)* "}")?
-protected class SubSystem_Group_3 extends GroupToken {
-	
-	public SubSystem_Group_3(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Group getGrammarElement() {
-		return grammarAccess.getSubSystemAccess().getGroup_3();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new SubSystem_RightCurlyBracketKeyword_3_4(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// "requiredRoles"
-protected class SubSystem_RequiredRolesKeyword_3_0 extends KeywordToken  {
-	
-	public SubSystem_RequiredRolesKeyword_3_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getSubSystemAccess().getRequiredRolesKeyword_3_0();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new SubSystem_Group_2(lastRuleCallOrigin, this, 0, inst);
-			case 1: return new SubSystem_NameAssignment_1(lastRuleCallOrigin, this, 1, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// "{"
-protected class SubSystem_LeftCurlyBracketKeyword_3_1 extends KeywordToken  {
-	
-	public SubSystem_LeftCurlyBracketKeyword_3_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getSubSystemAccess().getLeftCurlyBracketKeyword_3_1();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new SubSystem_RequiredRolesKeyword_3_0(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// requiredRoles+=RequiredRole
-protected class SubSystem_RequiredRolesAssignment_3_2 extends AssignmentToken  {
-	
-	public SubSystem_RequiredRolesAssignment_3_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Assignment getGrammarElement() {
-		return grammarAccess.getSubSystemAccess().getRequiredRolesAssignment_3_2();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new RequiredRole_Group(this, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override	
-	public IEObjectConsumer tryConsume() {
-		if((value = eObjectConsumer.getConsumable("requiredRoles",true)) == null) return null;
-		IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("requiredRoles");
-		if(value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl
-			IEObjectConsumer param = createEObjectConsumer((EObject)value);
-			if(param.isInstanceOf(grammarAccess.getRequiredRoleRule().getType().getClassifier())) {
-				type = AssignmentType.PARSER_RULE_CALL;
-				element = grammarAccess.getSubSystemAccess().getRequiredRolesRequiredRoleParserRuleCall_3_2_0(); 
-				consumed = obj;
-				return param;
-			}
-		}
-		return null;
-	}
-
-    @Override
-	public AbstractToken createFollowerAfterReturn(AbstractToken next,	int actIndex, int index, IEObjectConsumer inst) {
-		if(value == inst.getEObject() && !inst.isConsumed()) return null;
-		switch(index) {
-			case 0: return new SubSystem_LeftCurlyBracketKeyword_3_1(lastRuleCallOrigin, next, actIndex, consumed);
-			default: return null;
-		}	
-	}	
-}
-
-// ("," requiredRoles+=RequiredRole)*
-protected class SubSystem_Group_3_3 extends GroupToken {
-	
-	public SubSystem_Group_3_3(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Group getGrammarElement() {
-		return grammarAccess.getSubSystemAccess().getGroup_3_3();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new SubSystem_RequiredRolesAssignment_3_3_1(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// ","
-protected class SubSystem_CommaKeyword_3_3_0 extends KeywordToken  {
-	
-	public SubSystem_CommaKeyword_3_3_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getSubSystemAccess().getCommaKeyword_3_3_0();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new SubSystem_Group_3_3(lastRuleCallOrigin, this, 0, inst);
-			case 1: return new SubSystem_RequiredRolesAssignment_3_2(lastRuleCallOrigin, this, 1, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// requiredRoles+=RequiredRole
-protected class SubSystem_RequiredRolesAssignment_3_3_1 extends AssignmentToken  {
-	
-	public SubSystem_RequiredRolesAssignment_3_3_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Assignment getGrammarElement() {
-		return grammarAccess.getSubSystemAccess().getRequiredRolesAssignment_3_3_1();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new RequiredRole_Group(this, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override	
-	public IEObjectConsumer tryConsume() {
-		if((value = eObjectConsumer.getConsumable("requiredRoles",false)) == null) return null;
-		IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("requiredRoles");
-		if(value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl
-			IEObjectConsumer param = createEObjectConsumer((EObject)value);
-			if(param.isInstanceOf(grammarAccess.getRequiredRoleRule().getType().getClassifier())) {
-				type = AssignmentType.PARSER_RULE_CALL;
-				element = grammarAccess.getSubSystemAccess().getRequiredRolesRequiredRoleParserRuleCall_3_3_1_0(); 
-				consumed = obj;
-				return param;
-			}
-		}
-		return null;
-	}
-
-    @Override
-	public AbstractToken createFollowerAfterReturn(AbstractToken next,	int actIndex, int index, IEObjectConsumer inst) {
-		if(value == inst.getEObject() && !inst.isConsumed()) return null;
-		switch(index) {
-			case 0: return new SubSystem_CommaKeyword_3_3_0(lastRuleCallOrigin, next, actIndex, consumed);
-			default: return null;
-		}	
-	}	
-}
-
-
-// "}"
-protected class SubSystem_RightCurlyBracketKeyword_3_4 extends KeywordToken  {
-	
-	public SubSystem_RightCurlyBracketKeyword_3_4(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getSubSystemAccess().getRightCurlyBracketKeyword_3_4();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new SubSystem_Group_3_3(lastRuleCallOrigin, this, 0, inst);
-			case 1: return new SubSystem_RequiredRolesAssignment_3_2(lastRuleCallOrigin, this, 1, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-
-// "{"
-protected class SubSystem_LeftCurlyBracketKeyword_4 extends KeywordToken  {
-	
-	public SubSystem_LeftCurlyBracketKeyword_4(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getSubSystemAccess().getLeftCurlyBracketKeyword_4();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new SubSystem_Group_3(lastRuleCallOrigin, this, 0, inst);
-			case 1: return new SubSystem_Group_2(lastRuleCallOrigin, this, 1, inst);
-			case 2: return new SubSystem_NameAssignment_1(lastRuleCallOrigin, this, 2, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// ("relationship" "(" relationship+=[Relationship|EString] ("," relationship+=[Relationship|EString])* ")")?
-protected class SubSystem_Group_5 extends GroupToken {
-	
-	public SubSystem_Group_5(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Group getGrammarElement() {
-		return grammarAccess.getSubSystemAccess().getGroup_5();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new SubSystem_RightParenthesisKeyword_5_4(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// "relationship"
-protected class SubSystem_RelationshipKeyword_5_0 extends KeywordToken  {
-	
-	public SubSystem_RelationshipKeyword_5_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getSubSystemAccess().getRelationshipKeyword_5_0();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new SubSystem_LeftCurlyBracketKeyword_4(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// "("
-protected class SubSystem_LeftParenthesisKeyword_5_1 extends KeywordToken  {
-	
-	public SubSystem_LeftParenthesisKeyword_5_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getSubSystemAccess().getLeftParenthesisKeyword_5_1();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new SubSystem_RelationshipKeyword_5_0(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// relationship+=[Relationship|EString]
-protected class SubSystem_RelationshipAssignment_5_2 extends AssignmentToken  {
-	
-	public SubSystem_RelationshipAssignment_5_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Assignment getGrammarElement() {
-		return grammarAccess.getSubSystemAccess().getRelationshipAssignment_5_2();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new SubSystem_LeftParenthesisKeyword_5_1(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override	
-	public IEObjectConsumer tryConsume() {
-		if((value = eObjectConsumer.getConsumable("relationship",true)) == null) return null;
-		IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("relationship");
-		if(value instanceof EObject) { // org::eclipse::xtext::impl::CrossReferenceImpl
-			IEObjectConsumer param = createEObjectConsumer((EObject)value);
-			if(param.isInstanceOf(grammarAccess.getSubSystemAccess().getRelationshipRelationshipCrossReference_5_2_0().getType().getClassifier())) {
-				type = AssignmentType.CROSS_REFERENCE;
-				element = grammarAccess.getSubSystemAccess().getRelationshipRelationshipCrossReference_5_2_0(); 
-				return obj;
-			}
-		}
-		return null;
-	}
-
-}
-
-// ("," relationship+=[Relationship|EString])*
-protected class SubSystem_Group_5_3 extends GroupToken {
-	
-	public SubSystem_Group_5_3(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Group getGrammarElement() {
-		return grammarAccess.getSubSystemAccess().getGroup_5_3();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new SubSystem_RelationshipAssignment_5_3_1(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// ","
-protected class SubSystem_CommaKeyword_5_3_0 extends KeywordToken  {
-	
-	public SubSystem_CommaKeyword_5_3_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getSubSystemAccess().getCommaKeyword_5_3_0();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new SubSystem_Group_5_3(lastRuleCallOrigin, this, 0, inst);
-			case 1: return new SubSystem_RelationshipAssignment_5_2(lastRuleCallOrigin, this, 1, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// relationship+=[Relationship|EString]
-protected class SubSystem_RelationshipAssignment_5_3_1 extends AssignmentToken  {
-	
-	public SubSystem_RelationshipAssignment_5_3_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Assignment getGrammarElement() {
-		return grammarAccess.getSubSystemAccess().getRelationshipAssignment_5_3_1();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new SubSystem_CommaKeyword_5_3_0(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override	
-	public IEObjectConsumer tryConsume() {
-		if((value = eObjectConsumer.getConsumable("relationship",false)) == null) return null;
-		IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("relationship");
-		if(value instanceof EObject) { // org::eclipse::xtext::impl::CrossReferenceImpl
-			IEObjectConsumer param = createEObjectConsumer((EObject)value);
-			if(param.isInstanceOf(grammarAccess.getSubSystemAccess().getRelationshipRelationshipCrossReference_5_3_1_0().getType().getClassifier())) {
-				type = AssignmentType.CROSS_REFERENCE;
-				element = grammarAccess.getSubSystemAccess().getRelationshipRelationshipCrossReference_5_3_1_0(); 
-				return obj;
-			}
-		}
-		return null;
-	}
-
-}
-
-
-// ")"
-protected class SubSystem_RightParenthesisKeyword_5_4 extends KeywordToken  {
-	
-	public SubSystem_RightParenthesisKeyword_5_4(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getSubSystemAccess().getRightParenthesisKeyword_5_4();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new SubSystem_Group_5_3(lastRuleCallOrigin, this, 0, inst);
-			case 1: return new SubSystem_RelationshipAssignment_5_2(lastRuleCallOrigin, this, 1, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-
-// ("assembly" assembly=ComposedStructureAssembly)?
-protected class SubSystem_Group_6 extends GroupToken {
-	
-	public SubSystem_Group_6(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Group getGrammarElement() {
-		return grammarAccess.getSubSystemAccess().getGroup_6();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new SubSystem_AssemblyAssignment_6_1(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// "assembly"
-protected class SubSystem_AssemblyKeyword_6_0 extends KeywordToken  {
-	
-	public SubSystem_AssemblyKeyword_6_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getSubSystemAccess().getAssemblyKeyword_6_0();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new SubSystem_Group_5(lastRuleCallOrigin, this, 0, inst);
-			case 1: return new SubSystem_LeftCurlyBracketKeyword_4(lastRuleCallOrigin, this, 1, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// assembly=ComposedStructureAssembly
-protected class SubSystem_AssemblyAssignment_6_1 extends AssignmentToken  {
-	
-	public SubSystem_AssemblyAssignment_6_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Assignment getGrammarElement() {
-		return grammarAccess.getSubSystemAccess().getAssemblyAssignment_6_1();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new ComposedStructureAssembly_Group(this, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override	
-	public IEObjectConsumer tryConsume() {
-		if((value = eObjectConsumer.getConsumable("assembly",false)) == null) return null;
-		IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("assembly");
-		if(value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl
-			IEObjectConsumer param = createEObjectConsumer((EObject)value);
-			if(param.isInstanceOf(grammarAccess.getComposedStructureAssemblyRule().getType().getClassifier())) {
-				type = AssignmentType.PARSER_RULE_CALL;
-				element = grammarAccess.getSubSystemAccess().getAssemblyComposedStructureAssemblyParserRuleCall_6_1_0(); 
-				consumed = obj;
-				return param;
-			}
-		}
-		return null;
-	}
-
-    @Override
-	public AbstractToken createFollowerAfterReturn(AbstractToken next,	int actIndex, int index, IEObjectConsumer inst) {
-		if(value == inst.getEObject() && !inst.isConsumed()) return null;
-		switch(index) {
-			case 0: return new SubSystem_AssemblyKeyword_6_0(lastRuleCallOrigin, next, actIndex, consumed);
-			default: return null;
-		}	
-	}	
-}
-
-
-// "}"
-protected class SubSystem_RightCurlyBracketKeyword_7 extends KeywordToken  {
-	
-	public SubSystem_RightCurlyBracketKeyword_7(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getSubSystemAccess().getRightCurlyBracketKeyword_7();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new SubSystem_Group_6(lastRuleCallOrigin, this, 0, inst);
-			case 1: return new SubSystem_Group_5(lastRuleCallOrigin, this, 1, inst);
-			case 2: return new SubSystem_LeftCurlyBracketKeyword_4(lastRuleCallOrigin, this, 2, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-
-/************ end Rule SubSystem ****************/
-
-
-/************ begin Rule ComposedStructureAssembly ****************
- *
- * ComposedStructureAssembly returns repository_composites::ComposedStructureAssembly:
- * 
- * 	{repository_composites::ComposedStructureAssembly} "ComposedStructureAssembly" "{" ("assemblyContexts" "{"
- * 
- * 	assemblyContexts+=AssemblyContext ("," assemblyContexts+=AssemblyContext)* "}")? ("assemblyConnectors" "{"
- * 
- * 	assemblyConnectors+=AssemblyConnector ("," assemblyConnectors+=AssemblyConnector)* "}")?
- * 
- * 	("providedDelegationConnectors" "{" providedDelegationConnectors+=ProvidedDelegationConnector (","
- * 
- * 	providedDelegationConnectors+=ProvidedDelegationConnector)* "}")? ("requiredDelegationConnectors" "{"
- * 
- * 	requiredDelegationConnectors+=RequiredDelegationConnector (","
- * 
- * 	requiredDelegationConnectors+=RequiredDelegationConnector)* "}")? "}";
- *
- **/
-
-// {repository_composites::ComposedStructureAssembly} "ComposedStructureAssembly" "{" ("assemblyContexts" "{"
-// 
-// assemblyContexts+=AssemblyContext ("," assemblyContexts+=AssemblyContext)* "}")? ("assemblyConnectors" "{"
-// 
-// assemblyConnectors+=AssemblyConnector ("," assemblyConnectors+=AssemblyConnector)* "}")?
-// 
-// ("providedDelegationConnectors" "{" providedDelegationConnectors+=ProvidedDelegationConnector (","
-// 
-// providedDelegationConnectors+=ProvidedDelegationConnector)* "}")? ("requiredDelegationConnectors" "{"
-// 
-// requiredDelegationConnectors+=RequiredDelegationConnector (","
-// 
-// requiredDelegationConnectors+=RequiredDelegationConnector)* "}")? "}"
-protected class ComposedStructureAssembly_Group extends GroupToken {
-	
-	public ComposedStructureAssembly_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Group getGrammarElement() {
-		return grammarAccess.getComposedStructureAssemblyAccess().getGroup();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new ComposedStructureAssembly_RightCurlyBracketKeyword_7(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override
-	public IEObjectConsumer tryConsume() {
-		if(getEObject().eClass() != grammarAccess.getComposedStructureAssemblyAccess().getComposedStructureAssemblyAction_0().getType().getClassifier())
-			return null;
-		return eObjectConsumer;
-	}
-
-}
-
-// {repository_composites::ComposedStructureAssembly}
-protected class ComposedStructureAssembly_ComposedStructureAssemblyAction_0 extends ActionToken  {
-
-	public ComposedStructureAssembly_ComposedStructureAssemblyAction_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Action getGrammarElement() {
-		return grammarAccess.getComposedStructureAssemblyAccess().getComposedStructureAssemblyAction_0();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			default: return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst);
-		}	
-	}
-
-    @Override
-	public IEObjectConsumer tryConsume() {
-		if(!eObjectConsumer.isConsumed()) return null;
-		return eObjectConsumer;
-	}
-}
-
-// "ComposedStructureAssembly"
-protected class ComposedStructureAssembly_ComposedStructureAssemblyKeyword_1 extends KeywordToken  {
-	
-	public ComposedStructureAssembly_ComposedStructureAssemblyKeyword_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getComposedStructureAssemblyAccess().getComposedStructureAssemblyKeyword_1();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new ComposedStructureAssembly_ComposedStructureAssemblyAction_0(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// "{"
-protected class ComposedStructureAssembly_LeftCurlyBracketKeyword_2 extends KeywordToken  {
-	
-	public ComposedStructureAssembly_LeftCurlyBracketKeyword_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getComposedStructureAssemblyAccess().getLeftCurlyBracketKeyword_2();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new ComposedStructureAssembly_ComposedStructureAssemblyKeyword_1(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// ("assemblyContexts" "{" assemblyContexts+=AssemblyContext ("," assemblyContexts+=AssemblyContext)* "}")?
-protected class ComposedStructureAssembly_Group_3 extends GroupToken {
-	
-	public ComposedStructureAssembly_Group_3(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Group getGrammarElement() {
-		return grammarAccess.getComposedStructureAssemblyAccess().getGroup_3();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new ComposedStructureAssembly_RightCurlyBracketKeyword_3_4(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// "assemblyContexts"
-protected class ComposedStructureAssembly_AssemblyContextsKeyword_3_0 extends KeywordToken  {
-	
-	public ComposedStructureAssembly_AssemblyContextsKeyword_3_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getComposedStructureAssemblyAccess().getAssemblyContextsKeyword_3_0();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new ComposedStructureAssembly_LeftCurlyBracketKeyword_2(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// "{"
-protected class ComposedStructureAssembly_LeftCurlyBracketKeyword_3_1 extends KeywordToken  {
-	
-	public ComposedStructureAssembly_LeftCurlyBracketKeyword_3_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getComposedStructureAssemblyAccess().getLeftCurlyBracketKeyword_3_1();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new ComposedStructureAssembly_AssemblyContextsKeyword_3_0(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// assemblyContexts+=AssemblyContext
-protected class ComposedStructureAssembly_AssemblyContextsAssignment_3_2 extends AssignmentToken  {
-	
-	public ComposedStructureAssembly_AssemblyContextsAssignment_3_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Assignment getGrammarElement() {
-		return grammarAccess.getComposedStructureAssemblyAccess().getAssemblyContextsAssignment_3_2();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new AssemblyContext_Group(this, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override	
-	public IEObjectConsumer tryConsume() {
-		if((value = eObjectConsumer.getConsumable("assemblyContexts",true)) == null) return null;
-		IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("assemblyContexts");
-		if(value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl
-			IEObjectConsumer param = createEObjectConsumer((EObject)value);
-			if(param.isInstanceOf(grammarAccess.getAssemblyContextRule().getType().getClassifier())) {
-				type = AssignmentType.PARSER_RULE_CALL;
-				element = grammarAccess.getComposedStructureAssemblyAccess().getAssemblyContextsAssemblyContextParserRuleCall_3_2_0(); 
-				consumed = obj;
-				return param;
-			}
-		}
-		return null;
-	}
-
-    @Override
-	public AbstractToken createFollowerAfterReturn(AbstractToken next,	int actIndex, int index, IEObjectConsumer inst) {
-		if(value == inst.getEObject() && !inst.isConsumed()) return null;
-		switch(index) {
-			case 0: return new ComposedStructureAssembly_LeftCurlyBracketKeyword_3_1(lastRuleCallOrigin, next, actIndex, consumed);
-			default: return null;
-		}	
-	}	
-}
-
-// ("," assemblyContexts+=AssemblyContext)*
-protected class ComposedStructureAssembly_Group_3_3 extends GroupToken {
-	
-	public ComposedStructureAssembly_Group_3_3(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Group getGrammarElement() {
-		return grammarAccess.getComposedStructureAssemblyAccess().getGroup_3_3();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new ComposedStructureAssembly_AssemblyContextsAssignment_3_3_1(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// ","
-protected class ComposedStructureAssembly_CommaKeyword_3_3_0 extends KeywordToken  {
-	
-	public ComposedStructureAssembly_CommaKeyword_3_3_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getComposedStructureAssemblyAccess().getCommaKeyword_3_3_0();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new ComposedStructureAssembly_Group_3_3(lastRuleCallOrigin, this, 0, inst);
-			case 1: return new ComposedStructureAssembly_AssemblyContextsAssignment_3_2(lastRuleCallOrigin, this, 1, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// assemblyContexts+=AssemblyContext
-protected class ComposedStructureAssembly_AssemblyContextsAssignment_3_3_1 extends AssignmentToken  {
-	
-	public ComposedStructureAssembly_AssemblyContextsAssignment_3_3_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Assignment getGrammarElement() {
-		return grammarAccess.getComposedStructureAssemblyAccess().getAssemblyContextsAssignment_3_3_1();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new AssemblyContext_Group(this, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override	
-	public IEObjectConsumer tryConsume() {
-		if((value = eObjectConsumer.getConsumable("assemblyContexts",false)) == null) return null;
-		IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("assemblyContexts");
-		if(value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl
-			IEObjectConsumer param = createEObjectConsumer((EObject)value);
-			if(param.isInstanceOf(grammarAccess.getAssemblyContextRule().getType().getClassifier())) {
-				type = AssignmentType.PARSER_RULE_CALL;
-				element = grammarAccess.getComposedStructureAssemblyAccess().getAssemblyContextsAssemblyContextParserRuleCall_3_3_1_0(); 
-				consumed = obj;
-				return param;
-			}
-		}
-		return null;
-	}
-
-    @Override
-	public AbstractToken createFollowerAfterReturn(AbstractToken next,	int actIndex, int index, IEObjectConsumer inst) {
-		if(value == inst.getEObject() && !inst.isConsumed()) return null;
-		switch(index) {
-			case 0: return new ComposedStructureAssembly_CommaKeyword_3_3_0(lastRuleCallOrigin, next, actIndex, consumed);
-			default: return null;
-		}	
-	}	
-}
-
-
-// "}"
-protected class ComposedStructureAssembly_RightCurlyBracketKeyword_3_4 extends KeywordToken  {
-	
-	public ComposedStructureAssembly_RightCurlyBracketKeyword_3_4(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getComposedStructureAssemblyAccess().getRightCurlyBracketKeyword_3_4();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new ComposedStructureAssembly_Group_3_3(lastRuleCallOrigin, this, 0, inst);
-			case 1: return new ComposedStructureAssembly_AssemblyContextsAssignment_3_2(lastRuleCallOrigin, this, 1, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-
-// ("assemblyConnectors" "{" assemblyConnectors+=AssemblyConnector ("," assemblyConnectors+=AssemblyConnector)* "}")?
-protected class ComposedStructureAssembly_Group_4 extends GroupToken {
-	
-	public ComposedStructureAssembly_Group_4(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Group getGrammarElement() {
-		return grammarAccess.getComposedStructureAssemblyAccess().getGroup_4();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new ComposedStructureAssembly_RightCurlyBracketKeyword_4_4(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// "assemblyConnectors"
-protected class ComposedStructureAssembly_AssemblyConnectorsKeyword_4_0 extends KeywordToken  {
-	
-	public ComposedStructureAssembly_AssemblyConnectorsKeyword_4_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getComposedStructureAssemblyAccess().getAssemblyConnectorsKeyword_4_0();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new ComposedStructureAssembly_Group_3(lastRuleCallOrigin, this, 0, inst);
-			case 1: return new ComposedStructureAssembly_LeftCurlyBracketKeyword_2(lastRuleCallOrigin, this, 1, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// "{"
-protected class ComposedStructureAssembly_LeftCurlyBracketKeyword_4_1 extends KeywordToken  {
-	
-	public ComposedStructureAssembly_LeftCurlyBracketKeyword_4_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getComposedStructureAssemblyAccess().getLeftCurlyBracketKeyword_4_1();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new ComposedStructureAssembly_AssemblyConnectorsKeyword_4_0(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// assemblyConnectors+=AssemblyConnector
-protected class ComposedStructureAssembly_AssemblyConnectorsAssignment_4_2 extends AssignmentToken  {
-	
-	public ComposedStructureAssembly_AssemblyConnectorsAssignment_4_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Assignment getGrammarElement() {
-		return grammarAccess.getComposedStructureAssemblyAccess().getAssemblyConnectorsAssignment_4_2();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new AssemblyConnector_Group(this, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override	
-	public IEObjectConsumer tryConsume() {
-		if((value = eObjectConsumer.getConsumable("assemblyConnectors",true)) == null) return null;
-		IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("assemblyConnectors");
-		if(value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl
-			IEObjectConsumer param = createEObjectConsumer((EObject)value);
-			if(param.isInstanceOf(grammarAccess.getAssemblyConnectorRule().getType().getClassifier())) {
-				type = AssignmentType.PARSER_RULE_CALL;
-				element = grammarAccess.getComposedStructureAssemblyAccess().getAssemblyConnectorsAssemblyConnectorParserRuleCall_4_2_0(); 
-				consumed = obj;
-				return param;
-			}
-		}
-		return null;
-	}
-
-    @Override
-	public AbstractToken createFollowerAfterReturn(AbstractToken next,	int actIndex, int index, IEObjectConsumer inst) {
-		if(value == inst.getEObject() && !inst.isConsumed()) return null;
-		switch(index) {
-			case 0: return new ComposedStructureAssembly_LeftCurlyBracketKeyword_4_1(lastRuleCallOrigin, next, actIndex, consumed);
-			default: return null;
-		}	
-	}	
-}
-
-// ("," assemblyConnectors+=AssemblyConnector)*
-protected class ComposedStructureAssembly_Group_4_3 extends GroupToken {
-	
-	public ComposedStructureAssembly_Group_4_3(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Group getGrammarElement() {
-		return grammarAccess.getComposedStructureAssemblyAccess().getGroup_4_3();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new ComposedStructureAssembly_AssemblyConnectorsAssignment_4_3_1(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// ","
-protected class ComposedStructureAssembly_CommaKeyword_4_3_0 extends KeywordToken  {
-	
-	public ComposedStructureAssembly_CommaKeyword_4_3_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getComposedStructureAssemblyAccess().getCommaKeyword_4_3_0();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new ComposedStructureAssembly_Group_4_3(lastRuleCallOrigin, this, 0, inst);
-			case 1: return new ComposedStructureAssembly_AssemblyConnectorsAssignment_4_2(lastRuleCallOrigin, this, 1, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// assemblyConnectors+=AssemblyConnector
-protected class ComposedStructureAssembly_AssemblyConnectorsAssignment_4_3_1 extends AssignmentToken  {
-	
-	public ComposedStructureAssembly_AssemblyConnectorsAssignment_4_3_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Assignment getGrammarElement() {
-		return grammarAccess.getComposedStructureAssemblyAccess().getAssemblyConnectorsAssignment_4_3_1();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new AssemblyConnector_Group(this, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override	
-	public IEObjectConsumer tryConsume() {
-		if((value = eObjectConsumer.getConsumable("assemblyConnectors",false)) == null) return null;
-		IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("assemblyConnectors");
-		if(value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl
-			IEObjectConsumer param = createEObjectConsumer((EObject)value);
-			if(param.isInstanceOf(grammarAccess.getAssemblyConnectorRule().getType().getClassifier())) {
-				type = AssignmentType.PARSER_RULE_CALL;
-				element = grammarAccess.getComposedStructureAssemblyAccess().getAssemblyConnectorsAssemblyConnectorParserRuleCall_4_3_1_0(); 
-				consumed = obj;
-				return param;
-			}
-		}
-		return null;
-	}
-
-    @Override
-	public AbstractToken createFollowerAfterReturn(AbstractToken next,	int actIndex, int index, IEObjectConsumer inst) {
-		if(value == inst.getEObject() && !inst.isConsumed()) return null;
-		switch(index) {
-			case 0: return new ComposedStructureAssembly_CommaKeyword_4_3_0(lastRuleCallOrigin, next, actIndex, consumed);
-			default: return null;
-		}	
-	}	
-}
-
-
-// "}"
-protected class ComposedStructureAssembly_RightCurlyBracketKeyword_4_4 extends KeywordToken  {
-	
-	public ComposedStructureAssembly_RightCurlyBracketKeyword_4_4(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getComposedStructureAssemblyAccess().getRightCurlyBracketKeyword_4_4();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new ComposedStructureAssembly_Group_4_3(lastRuleCallOrigin, this, 0, inst);
-			case 1: return new ComposedStructureAssembly_AssemblyConnectorsAssignment_4_2(lastRuleCallOrigin, this, 1, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-
-// ("providedDelegationConnectors" "{" providedDelegationConnectors+=ProvidedDelegationConnector (","
-// 
-// providedDelegationConnectors+=ProvidedDelegationConnector)* "}")?
-protected class ComposedStructureAssembly_Group_5 extends GroupToken {
-	
-	public ComposedStructureAssembly_Group_5(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Group getGrammarElement() {
-		return grammarAccess.getComposedStructureAssemblyAccess().getGroup_5();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new ComposedStructureAssembly_RightCurlyBracketKeyword_5_4(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// "providedDelegationConnectors"
-protected class ComposedStructureAssembly_ProvidedDelegationConnectorsKeyword_5_0 extends KeywordToken  {
-	
-	public ComposedStructureAssembly_ProvidedDelegationConnectorsKeyword_5_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getComposedStructureAssemblyAccess().getProvidedDelegationConnectorsKeyword_5_0();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new ComposedStructureAssembly_Group_4(lastRuleCallOrigin, this, 0, inst);
-			case 1: return new ComposedStructureAssembly_Group_3(lastRuleCallOrigin, this, 1, inst);
-			case 2: return new ComposedStructureAssembly_LeftCurlyBracketKeyword_2(lastRuleCallOrigin, this, 2, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// "{"
-protected class ComposedStructureAssembly_LeftCurlyBracketKeyword_5_1 extends KeywordToken  {
-	
-	public ComposedStructureAssembly_LeftCurlyBracketKeyword_5_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getComposedStructureAssemblyAccess().getLeftCurlyBracketKeyword_5_1();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new ComposedStructureAssembly_ProvidedDelegationConnectorsKeyword_5_0(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// providedDelegationConnectors+=ProvidedDelegationConnector
-protected class ComposedStructureAssembly_ProvidedDelegationConnectorsAssignment_5_2 extends AssignmentToken  {
-	
-	public ComposedStructureAssembly_ProvidedDelegationConnectorsAssignment_5_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Assignment getGrammarElement() {
-		return grammarAccess.getComposedStructureAssemblyAccess().getProvidedDelegationConnectorsAssignment_5_2();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new ProvidedDelegationConnector_Group(this, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override	
-	public IEObjectConsumer tryConsume() {
-		if((value = eObjectConsumer.getConsumable("providedDelegationConnectors",true)) == null) return null;
-		IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("providedDelegationConnectors");
-		if(value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl
-			IEObjectConsumer param = createEObjectConsumer((EObject)value);
-			if(param.isInstanceOf(grammarAccess.getProvidedDelegationConnectorRule().getType().getClassifier())) {
-				type = AssignmentType.PARSER_RULE_CALL;
-				element = grammarAccess.getComposedStructureAssemblyAccess().getProvidedDelegationConnectorsProvidedDelegationConnectorParserRuleCall_5_2_0(); 
-				consumed = obj;
-				return param;
-			}
-		}
-		return null;
-	}
-
-    @Override
-	public AbstractToken createFollowerAfterReturn(AbstractToken next,	int actIndex, int index, IEObjectConsumer inst) {
-		if(value == inst.getEObject() && !inst.isConsumed()) return null;
-		switch(index) {
-			case 0: return new ComposedStructureAssembly_LeftCurlyBracketKeyword_5_1(lastRuleCallOrigin, next, actIndex, consumed);
-			default: return null;
-		}	
-	}	
-}
-
-// ("," providedDelegationConnectors+=ProvidedDelegationConnector)*
-protected class ComposedStructureAssembly_Group_5_3 extends GroupToken {
-	
-	public ComposedStructureAssembly_Group_5_3(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Group getGrammarElement() {
-		return grammarAccess.getComposedStructureAssemblyAccess().getGroup_5_3();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new ComposedStructureAssembly_ProvidedDelegationConnectorsAssignment_5_3_1(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// ","
-protected class ComposedStructureAssembly_CommaKeyword_5_3_0 extends KeywordToken  {
-	
-	public ComposedStructureAssembly_CommaKeyword_5_3_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getComposedStructureAssemblyAccess().getCommaKeyword_5_3_0();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new ComposedStructureAssembly_Group_5_3(lastRuleCallOrigin, this, 0, inst);
-			case 1: return new ComposedStructureAssembly_ProvidedDelegationConnectorsAssignment_5_2(lastRuleCallOrigin, this, 1, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// providedDelegationConnectors+=ProvidedDelegationConnector
-protected class ComposedStructureAssembly_ProvidedDelegationConnectorsAssignment_5_3_1 extends AssignmentToken  {
-	
-	public ComposedStructureAssembly_ProvidedDelegationConnectorsAssignment_5_3_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Assignment getGrammarElement() {
-		return grammarAccess.getComposedStructureAssemblyAccess().getProvidedDelegationConnectorsAssignment_5_3_1();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new ProvidedDelegationConnector_Group(this, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override	
-	public IEObjectConsumer tryConsume() {
-		if((value = eObjectConsumer.getConsumable("providedDelegationConnectors",false)) == null) return null;
-		IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("providedDelegationConnectors");
-		if(value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl
-			IEObjectConsumer param = createEObjectConsumer((EObject)value);
-			if(param.isInstanceOf(grammarAccess.getProvidedDelegationConnectorRule().getType().getClassifier())) {
-				type = AssignmentType.PARSER_RULE_CALL;
-				element = grammarAccess.getComposedStructureAssemblyAccess().getProvidedDelegationConnectorsProvidedDelegationConnectorParserRuleCall_5_3_1_0(); 
-				consumed = obj;
-				return param;
-			}
-		}
-		return null;
-	}
-
-    @Override
-	public AbstractToken createFollowerAfterReturn(AbstractToken next,	int actIndex, int index, IEObjectConsumer inst) {
-		if(value == inst.getEObject() && !inst.isConsumed()) return null;
-		switch(index) {
-			case 0: return new ComposedStructureAssembly_CommaKeyword_5_3_0(lastRuleCallOrigin, next, actIndex, consumed);
-			default: return null;
-		}	
-	}	
-}
-
-
-// "}"
-protected class ComposedStructureAssembly_RightCurlyBracketKeyword_5_4 extends KeywordToken  {
-	
-	public ComposedStructureAssembly_RightCurlyBracketKeyword_5_4(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getComposedStructureAssemblyAccess().getRightCurlyBracketKeyword_5_4();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new ComposedStructureAssembly_Group_5_3(lastRuleCallOrigin, this, 0, inst);
-			case 1: return new ComposedStructureAssembly_ProvidedDelegationConnectorsAssignment_5_2(lastRuleCallOrigin, this, 1, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-
-// ("requiredDelegationConnectors" "{" requiredDelegationConnectors+=RequiredDelegationConnector (","
-// 
-// requiredDelegationConnectors+=RequiredDelegationConnector)* "}")?
-protected class ComposedStructureAssembly_Group_6 extends GroupToken {
-	
-	public ComposedStructureAssembly_Group_6(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Group getGrammarElement() {
-		return grammarAccess.getComposedStructureAssemblyAccess().getGroup_6();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new ComposedStructureAssembly_RightCurlyBracketKeyword_6_4(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// "requiredDelegationConnectors"
-protected class ComposedStructureAssembly_RequiredDelegationConnectorsKeyword_6_0 extends KeywordToken  {
-	
-	public ComposedStructureAssembly_RequiredDelegationConnectorsKeyword_6_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getComposedStructureAssemblyAccess().getRequiredDelegationConnectorsKeyword_6_0();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new ComposedStructureAssembly_Group_5(lastRuleCallOrigin, this, 0, inst);
-			case 1: return new ComposedStructureAssembly_Group_4(lastRuleCallOrigin, this, 1, inst);
-			case 2: return new ComposedStructureAssembly_Group_3(lastRuleCallOrigin, this, 2, inst);
-			case 3: return new ComposedStructureAssembly_LeftCurlyBracketKeyword_2(lastRuleCallOrigin, this, 3, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// "{"
-protected class ComposedStructureAssembly_LeftCurlyBracketKeyword_6_1 extends KeywordToken  {
-	
-	public ComposedStructureAssembly_LeftCurlyBracketKeyword_6_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getComposedStructureAssemblyAccess().getLeftCurlyBracketKeyword_6_1();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new ComposedStructureAssembly_RequiredDelegationConnectorsKeyword_6_0(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// requiredDelegationConnectors+=RequiredDelegationConnector
-protected class ComposedStructureAssembly_RequiredDelegationConnectorsAssignment_6_2 extends AssignmentToken  {
-	
-	public ComposedStructureAssembly_RequiredDelegationConnectorsAssignment_6_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Assignment getGrammarElement() {
-		return grammarAccess.getComposedStructureAssemblyAccess().getRequiredDelegationConnectorsAssignment_6_2();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new RequiredDelegationConnector_Group(this, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override	
-	public IEObjectConsumer tryConsume() {
-		if((value = eObjectConsumer.getConsumable("requiredDelegationConnectors",true)) == null) return null;
-		IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("requiredDelegationConnectors");
-		if(value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl
-			IEObjectConsumer param = createEObjectConsumer((EObject)value);
-			if(param.isInstanceOf(grammarAccess.getRequiredDelegationConnectorRule().getType().getClassifier())) {
-				type = AssignmentType.PARSER_RULE_CALL;
-				element = grammarAccess.getComposedStructureAssemblyAccess().getRequiredDelegationConnectorsRequiredDelegationConnectorParserRuleCall_6_2_0(); 
-				consumed = obj;
-				return param;
-			}
-		}
-		return null;
-	}
-
-    @Override
-	public AbstractToken createFollowerAfterReturn(AbstractToken next,	int actIndex, int index, IEObjectConsumer inst) {
-		if(value == inst.getEObject() && !inst.isConsumed()) return null;
-		switch(index) {
-			case 0: return new ComposedStructureAssembly_LeftCurlyBracketKeyword_6_1(lastRuleCallOrigin, next, actIndex, consumed);
-			default: return null;
-		}	
-	}	
-}
-
-// ("," requiredDelegationConnectors+=RequiredDelegationConnector)*
-protected class ComposedStructureAssembly_Group_6_3 extends GroupToken {
-	
-	public ComposedStructureAssembly_Group_6_3(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Group getGrammarElement() {
-		return grammarAccess.getComposedStructureAssemblyAccess().getGroup_6_3();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new ComposedStructureAssembly_RequiredDelegationConnectorsAssignment_6_3_1(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// ","
-protected class ComposedStructureAssembly_CommaKeyword_6_3_0 extends KeywordToken  {
-	
-	public ComposedStructureAssembly_CommaKeyword_6_3_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getComposedStructureAssemblyAccess().getCommaKeyword_6_3_0();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new ComposedStructureAssembly_Group_6_3(lastRuleCallOrigin, this, 0, inst);
-			case 1: return new ComposedStructureAssembly_RequiredDelegationConnectorsAssignment_6_2(lastRuleCallOrigin, this, 1, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// requiredDelegationConnectors+=RequiredDelegationConnector
-protected class ComposedStructureAssembly_RequiredDelegationConnectorsAssignment_6_3_1 extends AssignmentToken  {
-	
-	public ComposedStructureAssembly_RequiredDelegationConnectorsAssignment_6_3_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Assignment getGrammarElement() {
-		return grammarAccess.getComposedStructureAssemblyAccess().getRequiredDelegationConnectorsAssignment_6_3_1();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new RequiredDelegationConnector_Group(this, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override	
-	public IEObjectConsumer tryConsume() {
-		if((value = eObjectConsumer.getConsumable("requiredDelegationConnectors",false)) == null) return null;
-		IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("requiredDelegationConnectors");
-		if(value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl
-			IEObjectConsumer param = createEObjectConsumer((EObject)value);
-			if(param.isInstanceOf(grammarAccess.getRequiredDelegationConnectorRule().getType().getClassifier())) {
-				type = AssignmentType.PARSER_RULE_CALL;
-				element = grammarAccess.getComposedStructureAssemblyAccess().getRequiredDelegationConnectorsRequiredDelegationConnectorParserRuleCall_6_3_1_0(); 
-				consumed = obj;
-				return param;
-			}
-		}
-		return null;
-	}
-
-    @Override
-	public AbstractToken createFollowerAfterReturn(AbstractToken next,	int actIndex, int index, IEObjectConsumer inst) {
-		if(value == inst.getEObject() && !inst.isConsumed()) return null;
-		switch(index) {
-			case 0: return new ComposedStructureAssembly_CommaKeyword_6_3_0(lastRuleCallOrigin, next, actIndex, consumed);
-			default: return null;
-		}	
-	}	
-}
-
-
-// "}"
-protected class ComposedStructureAssembly_RightCurlyBracketKeyword_6_4 extends KeywordToken  {
-	
-	public ComposedStructureAssembly_RightCurlyBracketKeyword_6_4(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getComposedStructureAssemblyAccess().getRightCurlyBracketKeyword_6_4();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new ComposedStructureAssembly_Group_6_3(lastRuleCallOrigin, this, 0, inst);
-			case 1: return new ComposedStructureAssembly_RequiredDelegationConnectorsAssignment_6_2(lastRuleCallOrigin, this, 1, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-
-// "}"
-protected class ComposedStructureAssembly_RightCurlyBracketKeyword_7 extends KeywordToken  {
-	
-	public ComposedStructureAssembly_RightCurlyBracketKeyword_7(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getComposedStructureAssemblyAccess().getRightCurlyBracketKeyword_7();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new ComposedStructureAssembly_Group_6(lastRuleCallOrigin, this, 0, inst);
-			case 1: return new ComposedStructureAssembly_Group_5(lastRuleCallOrigin, this, 1, inst);
-			case 2: return new ComposedStructureAssembly_Group_4(lastRuleCallOrigin, this, 2, inst);
-			case 3: return new ComposedStructureAssembly_Group_3(lastRuleCallOrigin, this, 3, inst);
-			case 4: return new ComposedStructureAssembly_LeftCurlyBracketKeyword_2(lastRuleCallOrigin, this, 4, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-
-/************ end Rule ComposedStructureAssembly ****************/
-
-
-/************ begin Rule AssemblyContext ****************
- *
- * AssemblyContext returns repository_composites::AssemblyContext:
- * 
- * 	"AssemblyContext" name=EString "{" "encapsulatedComponent"
- * 
- * 	encapsulatedComponent=[repository::RepositoryComponent|EString] "}";
- *
- **/
-
-// "AssemblyContext" name=EString "{" "encapsulatedComponent"
-// 
-// encapsulatedComponent=[repository::RepositoryComponent|EString] "}"
-protected class AssemblyContext_Group extends GroupToken {
-	
-	public AssemblyContext_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Group getGrammarElement() {
-		return grammarAccess.getAssemblyContextAccess().getGroup();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new AssemblyContext_RightCurlyBracketKeyword_5(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override
-	public IEObjectConsumer tryConsume() {
-		if(getEObject().eClass() != grammarAccess.getAssemblyContextRule().getType().getClassifier())
-			return null;
-		return eObjectConsumer;
-	}
-
-}
-
-// "AssemblyContext"
-protected class AssemblyContext_AssemblyContextKeyword_0 extends KeywordToken  {
-	
-	public AssemblyContext_AssemblyContextKeyword_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getAssemblyContextAccess().getAssemblyContextKeyword_0();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			default: return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst);
-		}	
-	}
-
-}
-
-// name=EString
-protected class AssemblyContext_NameAssignment_1 extends AssignmentToken  {
-	
-	public AssemblyContext_NameAssignment_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Assignment getGrammarElement() {
-		return grammarAccess.getAssemblyContextAccess().getNameAssignment_1();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new AssemblyContext_AssemblyContextKeyword_0(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override	
-	public IEObjectConsumer tryConsume() {
-		if((value = eObjectConsumer.getConsumable("name",true)) == null) return null;
-		IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("name");
-		if(valueSerializer.isValid(obj.getEObject(), grammarAccess.getAssemblyContextAccess().getNameEStringParserRuleCall_1_0(), value, null)) {
-			type = AssignmentType.DATATYPE_RULE_CALL;
-			element = grammarAccess.getAssemblyContextAccess().getNameEStringParserRuleCall_1_0();
-			return obj;
-		}
-		return null;
-	}
-
-}
-
-// "{"
-protected class AssemblyContext_LeftCurlyBracketKeyword_2 extends KeywordToken  {
-	
-	public AssemblyContext_LeftCurlyBracketKeyword_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getAssemblyContextAccess().getLeftCurlyBracketKeyword_2();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new AssemblyContext_NameAssignment_1(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// "encapsulatedComponent"
-protected class AssemblyContext_EncapsulatedComponentKeyword_3 extends KeywordToken  {
-	
-	public AssemblyContext_EncapsulatedComponentKeyword_3(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getAssemblyContextAccess().getEncapsulatedComponentKeyword_3();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new AssemblyContext_LeftCurlyBracketKeyword_2(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// encapsulatedComponent=[repository::RepositoryComponent|EString]
-protected class AssemblyContext_EncapsulatedComponentAssignment_4 extends AssignmentToken  {
-	
-	public AssemblyContext_EncapsulatedComponentAssignment_4(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Assignment getGrammarElement() {
-		return grammarAccess.getAssemblyContextAccess().getEncapsulatedComponentAssignment_4();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new AssemblyContext_EncapsulatedComponentKeyword_3(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override	
-	public IEObjectConsumer tryConsume() {
-		if((value = eObjectConsumer.getConsumable("encapsulatedComponent",true)) == null) return null;
-		IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("encapsulatedComponent");
-		if(value instanceof EObject) { // org::eclipse::xtext::impl::CrossReferenceImpl
-			IEObjectConsumer param = createEObjectConsumer((EObject)value);
-			if(param.isInstanceOf(grammarAccess.getAssemblyContextAccess().getEncapsulatedComponentRepositoryComponentCrossReference_4_0().getType().getClassifier())) {
-				type = AssignmentType.CROSS_REFERENCE;
-				element = grammarAccess.getAssemblyContextAccess().getEncapsulatedComponentRepositoryComponentCrossReference_4_0(); 
-				return obj;
-			}
-		}
-		return null;
-	}
-
-}
-
-// "}"
-protected class AssemblyContext_RightCurlyBracketKeyword_5 extends KeywordToken  {
-	
-	public AssemblyContext_RightCurlyBracketKeyword_5(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getAssemblyContextAccess().getRightCurlyBracketKeyword_5();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new AssemblyContext_EncapsulatedComponentAssignment_4(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-
-/************ end Rule AssemblyContext ****************/
-
-
-/************ begin Rule AssemblyConnector ****************
- *
- * AssemblyConnector returns repository_composites::AssemblyConnector:
- * 
- * 	"AssemblyConnector" name=EString "{" "requiredRole" requiredRole=[repository::RequiredRole|EString] "providedRole"
- * 
- * 	providedRole=[repository::ProvidedRole|EString] "providingAssemblyContext"
- * 
- * 	providingAssemblyContext=[repository_composites::AssemblyContext|EString] "requiringAssemblyContext"
- * 
- * 	requiringAssemblyContext=[repository_composites::AssemblyContext|EString] "}";
- *
- **/
-
-// "AssemblyConnector" name=EString "{" "requiredRole" requiredRole=[repository::RequiredRole|EString] "providedRole"
-// 
-// providedRole=[repository::ProvidedRole|EString] "providingAssemblyContext"
-// 
-// providingAssemblyContext=[repository_composites::AssemblyContext|EString] "requiringAssemblyContext"
-// 
-// requiringAssemblyContext=[repository_composites::AssemblyContext|EString] "}"
-protected class AssemblyConnector_Group extends GroupToken {
-	
-	public AssemblyConnector_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Group getGrammarElement() {
-		return grammarAccess.getAssemblyConnectorAccess().getGroup();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new AssemblyConnector_RightCurlyBracketKeyword_11(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override
-	public IEObjectConsumer tryConsume() {
-		if(getEObject().eClass() != grammarAccess.getAssemblyConnectorRule().getType().getClassifier())
-			return null;
-		return eObjectConsumer;
-	}
-
-}
-
-// "AssemblyConnector"
-protected class AssemblyConnector_AssemblyConnectorKeyword_0 extends KeywordToken  {
-	
-	public AssemblyConnector_AssemblyConnectorKeyword_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getAssemblyConnectorAccess().getAssemblyConnectorKeyword_0();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			default: return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst);
-		}	
-	}
-
-}
-
-// name=EString
-protected class AssemblyConnector_NameAssignment_1 extends AssignmentToken  {
-	
-	public AssemblyConnector_NameAssignment_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Assignment getGrammarElement() {
-		return grammarAccess.getAssemblyConnectorAccess().getNameAssignment_1();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new AssemblyConnector_AssemblyConnectorKeyword_0(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override	
-	public IEObjectConsumer tryConsume() {
-		if((value = eObjectConsumer.getConsumable("name",true)) == null) return null;
-		IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("name");
-		if(valueSerializer.isValid(obj.getEObject(), grammarAccess.getAssemblyConnectorAccess().getNameEStringParserRuleCall_1_0(), value, null)) {
-			type = AssignmentType.DATATYPE_RULE_CALL;
-			element = grammarAccess.getAssemblyConnectorAccess().getNameEStringParserRuleCall_1_0();
-			return obj;
-		}
-		return null;
-	}
-
-}
-
-// "{"
-protected class AssemblyConnector_LeftCurlyBracketKeyword_2 extends KeywordToken  {
-	
-	public AssemblyConnector_LeftCurlyBracketKeyword_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getAssemblyConnectorAccess().getLeftCurlyBracketKeyword_2();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new AssemblyConnector_NameAssignment_1(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// "requiredRole"
-protected class AssemblyConnector_RequiredRoleKeyword_3 extends KeywordToken  {
-	
-	public AssemblyConnector_RequiredRoleKeyword_3(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getAssemblyConnectorAccess().getRequiredRoleKeyword_3();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new AssemblyConnector_LeftCurlyBracketKeyword_2(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// requiredRole=[repository::RequiredRole|EString]
-protected class AssemblyConnector_RequiredRoleAssignment_4 extends AssignmentToken  {
-	
-	public AssemblyConnector_RequiredRoleAssignment_4(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Assignment getGrammarElement() {
-		return grammarAccess.getAssemblyConnectorAccess().getRequiredRoleAssignment_4();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new AssemblyConnector_RequiredRoleKeyword_3(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override	
-	public IEObjectConsumer tryConsume() {
-		if((value = eObjectConsumer.getConsumable("requiredRole",true)) == null) return null;
-		IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("requiredRole");
-		if(value instanceof EObject) { // org::eclipse::xtext::impl::CrossReferenceImpl
-			IEObjectConsumer param = createEObjectConsumer((EObject)value);
-			if(param.isInstanceOf(grammarAccess.getAssemblyConnectorAccess().getRequiredRoleRequiredRoleCrossReference_4_0().getType().getClassifier())) {
-				type = AssignmentType.CROSS_REFERENCE;
-				element = grammarAccess.getAssemblyConnectorAccess().getRequiredRoleRequiredRoleCrossReference_4_0(); 
-				return obj;
-			}
-		}
-		return null;
-	}
-
-}
-
-// "providedRole"
-protected class AssemblyConnector_ProvidedRoleKeyword_5 extends KeywordToken  {
-	
-	public AssemblyConnector_ProvidedRoleKeyword_5(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getAssemblyConnectorAccess().getProvidedRoleKeyword_5();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new AssemblyConnector_RequiredRoleAssignment_4(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// providedRole=[repository::ProvidedRole|EString]
-protected class AssemblyConnector_ProvidedRoleAssignment_6 extends AssignmentToken  {
-	
-	public AssemblyConnector_ProvidedRoleAssignment_6(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Assignment getGrammarElement() {
-		return grammarAccess.getAssemblyConnectorAccess().getProvidedRoleAssignment_6();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new AssemblyConnector_ProvidedRoleKeyword_5(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override	
-	public IEObjectConsumer tryConsume() {
-		if((value = eObjectConsumer.getConsumable("providedRole",true)) == null) return null;
-		IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("providedRole");
-		if(value instanceof EObject) { // org::eclipse::xtext::impl::CrossReferenceImpl
-			IEObjectConsumer param = createEObjectConsumer((EObject)value);
-			if(param.isInstanceOf(grammarAccess.getAssemblyConnectorAccess().getProvidedRoleProvidedRoleCrossReference_6_0().getType().getClassifier())) {
-				type = AssignmentType.CROSS_REFERENCE;
-				element = grammarAccess.getAssemblyConnectorAccess().getProvidedRoleProvidedRoleCrossReference_6_0(); 
-				return obj;
-			}
-		}
-		return null;
-	}
-
-}
-
-// "providingAssemblyContext"
-protected class AssemblyConnector_ProvidingAssemblyContextKeyword_7 extends KeywordToken  {
-	
-	public AssemblyConnector_ProvidingAssemblyContextKeyword_7(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getAssemblyConnectorAccess().getProvidingAssemblyContextKeyword_7();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new AssemblyConnector_ProvidedRoleAssignment_6(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// providingAssemblyContext=[repository_composites::AssemblyContext|EString]
-protected class AssemblyConnector_ProvidingAssemblyContextAssignment_8 extends AssignmentToken  {
-	
-	public AssemblyConnector_ProvidingAssemblyContextAssignment_8(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Assignment getGrammarElement() {
-		return grammarAccess.getAssemblyConnectorAccess().getProvidingAssemblyContextAssignment_8();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new AssemblyConnector_ProvidingAssemblyContextKeyword_7(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override	
-	public IEObjectConsumer tryConsume() {
-		if((value = eObjectConsumer.getConsumable("providingAssemblyContext",true)) == null) return null;
-		IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("providingAssemblyContext");
-		if(value instanceof EObject) { // org::eclipse::xtext::impl::CrossReferenceImpl
-			IEObjectConsumer param = createEObjectConsumer((EObject)value);
-			if(param.isInstanceOf(grammarAccess.getAssemblyConnectorAccess().getProvidingAssemblyContextAssemblyContextCrossReference_8_0().getType().getClassifier())) {
-				type = AssignmentType.CROSS_REFERENCE;
-				element = grammarAccess.getAssemblyConnectorAccess().getProvidingAssemblyContextAssemblyContextCrossReference_8_0(); 
-				return obj;
-			}
-		}
-		return null;
-	}
-
-}
-
-// "requiringAssemblyContext"
-protected class AssemblyConnector_RequiringAssemblyContextKeyword_9 extends KeywordToken  {
-	
-	public AssemblyConnector_RequiringAssemblyContextKeyword_9(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getAssemblyConnectorAccess().getRequiringAssemblyContextKeyword_9();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new AssemblyConnector_ProvidingAssemblyContextAssignment_8(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// requiringAssemblyContext=[repository_composites::AssemblyContext|EString]
-protected class AssemblyConnector_RequiringAssemblyContextAssignment_10 extends AssignmentToken  {
-	
-	public AssemblyConnector_RequiringAssemblyContextAssignment_10(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Assignment getGrammarElement() {
-		return grammarAccess.getAssemblyConnectorAccess().getRequiringAssemblyContextAssignment_10();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new AssemblyConnector_RequiringAssemblyContextKeyword_9(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override	
-	public IEObjectConsumer tryConsume() {
-		if((value = eObjectConsumer.getConsumable("requiringAssemblyContext",true)) == null) return null;
-		IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("requiringAssemblyContext");
-		if(value instanceof EObject) { // org::eclipse::xtext::impl::CrossReferenceImpl
-			IEObjectConsumer param = createEObjectConsumer((EObject)value);
-			if(param.isInstanceOf(grammarAccess.getAssemblyConnectorAccess().getRequiringAssemblyContextAssemblyContextCrossReference_10_0().getType().getClassifier())) {
-				type = AssignmentType.CROSS_REFERENCE;
-				element = grammarAccess.getAssemblyConnectorAccess().getRequiringAssemblyContextAssemblyContextCrossReference_10_0(); 
-				return obj;
-			}
-		}
-		return null;
-	}
-
-}
-
-// "}"
-protected class AssemblyConnector_RightCurlyBracketKeyword_11 extends KeywordToken  {
-	
-	public AssemblyConnector_RightCurlyBracketKeyword_11(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getAssemblyConnectorAccess().getRightCurlyBracketKeyword_11();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new AssemblyConnector_RequiringAssemblyContextAssignment_10(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-
-/************ end Rule AssemblyConnector ****************/
-
-
-/************ begin Rule ProvidedDelegationConnector ****************
- *
- * ProvidedDelegationConnector returns repository_composites::ProvidedDelegationConnector:
- * 
- * 	"ProvidedDelegationConnector" name=EString "{" "assemblyContext"
- * 
- * 	assemblyContext=[repository_composites::AssemblyContext|EString] "innerProvidedRole"
- * 
- * 	innerProvidedRole=[repository::ProvidedRole|EString] "outerProvidedRole"
- * 
- * 	outerProvidedRole=[repository::ProvidedRole|EString] "}";
- *
- **/
-
-// "ProvidedDelegationConnector" name=EString "{" "assemblyContext"
-// 
-// assemblyContext=[repository_composites::AssemblyContext|EString] "innerProvidedRole"
-// 
-// innerProvidedRole=[repository::ProvidedRole|EString] "outerProvidedRole"
-// 
-// outerProvidedRole=[repository::ProvidedRole|EString] "}"
-protected class ProvidedDelegationConnector_Group extends GroupToken {
-	
-	public ProvidedDelegationConnector_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Group getGrammarElement() {
-		return grammarAccess.getProvidedDelegationConnectorAccess().getGroup();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new ProvidedDelegationConnector_RightCurlyBracketKeyword_9(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override
-	public IEObjectConsumer tryConsume() {
-		if(getEObject().eClass() != grammarAccess.getProvidedDelegationConnectorRule().getType().getClassifier())
-			return null;
-		return eObjectConsumer;
-	}
-
-}
-
-// "ProvidedDelegationConnector"
-protected class ProvidedDelegationConnector_ProvidedDelegationConnectorKeyword_0 extends KeywordToken  {
-	
-	public ProvidedDelegationConnector_ProvidedDelegationConnectorKeyword_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getProvidedDelegationConnectorAccess().getProvidedDelegationConnectorKeyword_0();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			default: return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst);
-		}	
-	}
-
-}
-
-// name=EString
-protected class ProvidedDelegationConnector_NameAssignment_1 extends AssignmentToken  {
-	
-	public ProvidedDelegationConnector_NameAssignment_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Assignment getGrammarElement() {
-		return grammarAccess.getProvidedDelegationConnectorAccess().getNameAssignment_1();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new ProvidedDelegationConnector_ProvidedDelegationConnectorKeyword_0(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override	
-	public IEObjectConsumer tryConsume() {
-		if((value = eObjectConsumer.getConsumable("name",true)) == null) return null;
-		IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("name");
-		if(valueSerializer.isValid(obj.getEObject(), grammarAccess.getProvidedDelegationConnectorAccess().getNameEStringParserRuleCall_1_0(), value, null)) {
-			type = AssignmentType.DATATYPE_RULE_CALL;
-			element = grammarAccess.getProvidedDelegationConnectorAccess().getNameEStringParserRuleCall_1_0();
-			return obj;
-		}
-		return null;
-	}
-
-}
-
-// "{"
-protected class ProvidedDelegationConnector_LeftCurlyBracketKeyword_2 extends KeywordToken  {
-	
-	public ProvidedDelegationConnector_LeftCurlyBracketKeyword_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getProvidedDelegationConnectorAccess().getLeftCurlyBracketKeyword_2();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new ProvidedDelegationConnector_NameAssignment_1(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// "assemblyContext"
-protected class ProvidedDelegationConnector_AssemblyContextKeyword_3 extends KeywordToken  {
-	
-	public ProvidedDelegationConnector_AssemblyContextKeyword_3(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getProvidedDelegationConnectorAccess().getAssemblyContextKeyword_3();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new ProvidedDelegationConnector_LeftCurlyBracketKeyword_2(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// assemblyContext=[repository_composites::AssemblyContext|EString]
-protected class ProvidedDelegationConnector_AssemblyContextAssignment_4 extends AssignmentToken  {
-	
-	public ProvidedDelegationConnector_AssemblyContextAssignment_4(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Assignment getGrammarElement() {
-		return grammarAccess.getProvidedDelegationConnectorAccess().getAssemblyContextAssignment_4();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new ProvidedDelegationConnector_AssemblyContextKeyword_3(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override	
-	public IEObjectConsumer tryConsume() {
-		if((value = eObjectConsumer.getConsumable("assemblyContext",true)) == null) return null;
-		IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("assemblyContext");
-		if(value instanceof EObject) { // org::eclipse::xtext::impl::CrossReferenceImpl
-			IEObjectConsumer param = createEObjectConsumer((EObject)value);
-			if(param.isInstanceOf(grammarAccess.getProvidedDelegationConnectorAccess().getAssemblyContextAssemblyContextCrossReference_4_0().getType().getClassifier())) {
-				type = AssignmentType.CROSS_REFERENCE;
-				element = grammarAccess.getProvidedDelegationConnectorAccess().getAssemblyContextAssemblyContextCrossReference_4_0(); 
-				return obj;
-			}
-		}
-		return null;
-	}
-
-}
-
-// "innerProvidedRole"
-protected class ProvidedDelegationConnector_InnerProvidedRoleKeyword_5 extends KeywordToken  {
-	
-	public ProvidedDelegationConnector_InnerProvidedRoleKeyword_5(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getProvidedDelegationConnectorAccess().getInnerProvidedRoleKeyword_5();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new ProvidedDelegationConnector_AssemblyContextAssignment_4(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// innerProvidedRole=[repository::ProvidedRole|EString]
-protected class ProvidedDelegationConnector_InnerProvidedRoleAssignment_6 extends AssignmentToken  {
-	
-	public ProvidedDelegationConnector_InnerProvidedRoleAssignment_6(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Assignment getGrammarElement() {
-		return grammarAccess.getProvidedDelegationConnectorAccess().getInnerProvidedRoleAssignment_6();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new ProvidedDelegationConnector_InnerProvidedRoleKeyword_5(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override	
-	public IEObjectConsumer tryConsume() {
-		if((value = eObjectConsumer.getConsumable("innerProvidedRole",true)) == null) return null;
-		IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("innerProvidedRole");
-		if(value instanceof EObject) { // org::eclipse::xtext::impl::CrossReferenceImpl
-			IEObjectConsumer param = createEObjectConsumer((EObject)value);
-			if(param.isInstanceOf(grammarAccess.getProvidedDelegationConnectorAccess().getInnerProvidedRoleProvidedRoleCrossReference_6_0().getType().getClassifier())) {
-				type = AssignmentType.CROSS_REFERENCE;
-				element = grammarAccess.getProvidedDelegationConnectorAccess().getInnerProvidedRoleProvidedRoleCrossReference_6_0(); 
-				return obj;
-			}
-		}
-		return null;
-	}
-
-}
-
-// "outerProvidedRole"
-protected class ProvidedDelegationConnector_OuterProvidedRoleKeyword_7 extends KeywordToken  {
-	
-	public ProvidedDelegationConnector_OuterProvidedRoleKeyword_7(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getProvidedDelegationConnectorAccess().getOuterProvidedRoleKeyword_7();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new ProvidedDelegationConnector_InnerProvidedRoleAssignment_6(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// outerProvidedRole=[repository::ProvidedRole|EString]
-protected class ProvidedDelegationConnector_OuterProvidedRoleAssignment_8 extends AssignmentToken  {
-	
-	public ProvidedDelegationConnector_OuterProvidedRoleAssignment_8(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Assignment getGrammarElement() {
-		return grammarAccess.getProvidedDelegationConnectorAccess().getOuterProvidedRoleAssignment_8();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new ProvidedDelegationConnector_OuterProvidedRoleKeyword_7(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override	
-	public IEObjectConsumer tryConsume() {
-		if((value = eObjectConsumer.getConsumable("outerProvidedRole",true)) == null) return null;
-		IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("outerProvidedRole");
-		if(value instanceof EObject) { // org::eclipse::xtext::impl::CrossReferenceImpl
-			IEObjectConsumer param = createEObjectConsumer((EObject)value);
-			if(param.isInstanceOf(grammarAccess.getProvidedDelegationConnectorAccess().getOuterProvidedRoleProvidedRoleCrossReference_8_0().getType().getClassifier())) {
-				type = AssignmentType.CROSS_REFERENCE;
-				element = grammarAccess.getProvidedDelegationConnectorAccess().getOuterProvidedRoleProvidedRoleCrossReference_8_0(); 
-				return obj;
-			}
-		}
-		return null;
-	}
-
-}
-
-// "}"
-protected class ProvidedDelegationConnector_RightCurlyBracketKeyword_9 extends KeywordToken  {
-	
-	public ProvidedDelegationConnector_RightCurlyBracketKeyword_9(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getProvidedDelegationConnectorAccess().getRightCurlyBracketKeyword_9();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new ProvidedDelegationConnector_OuterProvidedRoleAssignment_8(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-
-/************ end Rule ProvidedDelegationConnector ****************/
-
-
-/************ begin Rule RequiredDelegationConnector ****************
- *
- * RequiredDelegationConnector returns repository_composites::RequiredDelegationConnector:
- * 
- * 	"RequiredDelegationConnector" name=EString "{" "assemblyContext"
- * 
- * 	assemblyContext=[repository_composites::AssemblyContext|EString] "innerRequiredRole"
- * 
- * 	innerRequiredRole=[repository::RequiredRole|EString] "outerRequiredRole"
- * 
- * 	outerRequiredRole=[repository::RequiredRole|EString] "}";
- *
- **/
-
-// "RequiredDelegationConnector" name=EString "{" "assemblyContext"
-// 
-// assemblyContext=[repository_composites::AssemblyContext|EString] "innerRequiredRole"
-// 
-// innerRequiredRole=[repository::RequiredRole|EString] "outerRequiredRole"
-// 
-// outerRequiredRole=[repository::RequiredRole|EString] "}"
-protected class RequiredDelegationConnector_Group extends GroupToken {
-	
-	public RequiredDelegationConnector_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Group getGrammarElement() {
-		return grammarAccess.getRequiredDelegationConnectorAccess().getGroup();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new RequiredDelegationConnector_RightCurlyBracketKeyword_9(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override
-	public IEObjectConsumer tryConsume() {
-		if(getEObject().eClass() != grammarAccess.getRequiredDelegationConnectorRule().getType().getClassifier())
-			return null;
-		return eObjectConsumer;
-	}
-
-}
-
-// "RequiredDelegationConnector"
-protected class RequiredDelegationConnector_RequiredDelegationConnectorKeyword_0 extends KeywordToken  {
-	
-	public RequiredDelegationConnector_RequiredDelegationConnectorKeyword_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getRequiredDelegationConnectorAccess().getRequiredDelegationConnectorKeyword_0();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			default: return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst);
-		}	
-	}
-
-}
-
-// name=EString
-protected class RequiredDelegationConnector_NameAssignment_1 extends AssignmentToken  {
-	
-	public RequiredDelegationConnector_NameAssignment_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Assignment getGrammarElement() {
-		return grammarAccess.getRequiredDelegationConnectorAccess().getNameAssignment_1();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new RequiredDelegationConnector_RequiredDelegationConnectorKeyword_0(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override	
-	public IEObjectConsumer tryConsume() {
-		if((value = eObjectConsumer.getConsumable("name",true)) == null) return null;
-		IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("name");
-		if(valueSerializer.isValid(obj.getEObject(), grammarAccess.getRequiredDelegationConnectorAccess().getNameEStringParserRuleCall_1_0(), value, null)) {
-			type = AssignmentType.DATATYPE_RULE_CALL;
-			element = grammarAccess.getRequiredDelegationConnectorAccess().getNameEStringParserRuleCall_1_0();
-			return obj;
-		}
-		return null;
-	}
-
-}
-
-// "{"
-protected class RequiredDelegationConnector_LeftCurlyBracketKeyword_2 extends KeywordToken  {
-	
-	public RequiredDelegationConnector_LeftCurlyBracketKeyword_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getRequiredDelegationConnectorAccess().getLeftCurlyBracketKeyword_2();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new RequiredDelegationConnector_NameAssignment_1(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// "assemblyContext"
-protected class RequiredDelegationConnector_AssemblyContextKeyword_3 extends KeywordToken  {
-	
-	public RequiredDelegationConnector_AssemblyContextKeyword_3(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getRequiredDelegationConnectorAccess().getAssemblyContextKeyword_3();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new RequiredDelegationConnector_LeftCurlyBracketKeyword_2(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// assemblyContext=[repository_composites::AssemblyContext|EString]
-protected class RequiredDelegationConnector_AssemblyContextAssignment_4 extends AssignmentToken  {
-	
-	public RequiredDelegationConnector_AssemblyContextAssignment_4(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Assignment getGrammarElement() {
-		return grammarAccess.getRequiredDelegationConnectorAccess().getAssemblyContextAssignment_4();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new RequiredDelegationConnector_AssemblyContextKeyword_3(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override	
-	public IEObjectConsumer tryConsume() {
-		if((value = eObjectConsumer.getConsumable("assemblyContext",true)) == null) return null;
-		IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("assemblyContext");
-		if(value instanceof EObject) { // org::eclipse::xtext::impl::CrossReferenceImpl
-			IEObjectConsumer param = createEObjectConsumer((EObject)value);
-			if(param.isInstanceOf(grammarAccess.getRequiredDelegationConnectorAccess().getAssemblyContextAssemblyContextCrossReference_4_0().getType().getClassifier())) {
-				type = AssignmentType.CROSS_REFERENCE;
-				element = grammarAccess.getRequiredDelegationConnectorAccess().getAssemblyContextAssemblyContextCrossReference_4_0(); 
-				return obj;
-			}
-		}
-		return null;
-	}
-
-}
-
-// "innerRequiredRole"
-protected class RequiredDelegationConnector_InnerRequiredRoleKeyword_5 extends KeywordToken  {
-	
-	public RequiredDelegationConnector_InnerRequiredRoleKeyword_5(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getRequiredDelegationConnectorAccess().getInnerRequiredRoleKeyword_5();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new RequiredDelegationConnector_AssemblyContextAssignment_4(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// innerRequiredRole=[repository::RequiredRole|EString]
-protected class RequiredDelegationConnector_InnerRequiredRoleAssignment_6 extends AssignmentToken  {
-	
-	public RequiredDelegationConnector_InnerRequiredRoleAssignment_6(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Assignment getGrammarElement() {
-		return grammarAccess.getRequiredDelegationConnectorAccess().getInnerRequiredRoleAssignment_6();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new RequiredDelegationConnector_InnerRequiredRoleKeyword_5(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override	
-	public IEObjectConsumer tryConsume() {
-		if((value = eObjectConsumer.getConsumable("innerRequiredRole",true)) == null) return null;
-		IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("innerRequiredRole");
-		if(value instanceof EObject) { // org::eclipse::xtext::impl::CrossReferenceImpl
-			IEObjectConsumer param = createEObjectConsumer((EObject)value);
-			if(param.isInstanceOf(grammarAccess.getRequiredDelegationConnectorAccess().getInnerRequiredRoleRequiredRoleCrossReference_6_0().getType().getClassifier())) {
-				type = AssignmentType.CROSS_REFERENCE;
-				element = grammarAccess.getRequiredDelegationConnectorAccess().getInnerRequiredRoleRequiredRoleCrossReference_6_0(); 
-				return obj;
-			}
-		}
-		return null;
-	}
-
-}
-
-// "outerRequiredRole"
-protected class RequiredDelegationConnector_OuterRequiredRoleKeyword_7 extends KeywordToken  {
-	
-	public RequiredDelegationConnector_OuterRequiredRoleKeyword_7(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getRequiredDelegationConnectorAccess().getOuterRequiredRoleKeyword_7();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new RequiredDelegationConnector_InnerRequiredRoleAssignment_6(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// outerRequiredRole=[repository::RequiredRole|EString]
-protected class RequiredDelegationConnector_OuterRequiredRoleAssignment_8 extends AssignmentToken  {
-	
-	public RequiredDelegationConnector_OuterRequiredRoleAssignment_8(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Assignment getGrammarElement() {
-		return grammarAccess.getRequiredDelegationConnectorAccess().getOuterRequiredRoleAssignment_8();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new RequiredDelegationConnector_OuterRequiredRoleKeyword_7(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override	
-	public IEObjectConsumer tryConsume() {
-		if((value = eObjectConsumer.getConsumable("outerRequiredRole",true)) == null) return null;
-		IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("outerRequiredRole");
-		if(value instanceof EObject) { // org::eclipse::xtext::impl::CrossReferenceImpl
-			IEObjectConsumer param = createEObjectConsumer((EObject)value);
-			if(param.isInstanceOf(grammarAccess.getRequiredDelegationConnectorAccess().getOuterRequiredRoleRequiredRoleCrossReference_8_0().getType().getClassifier())) {
-				type = AssignmentType.CROSS_REFERENCE;
-				element = grammarAccess.getRequiredDelegationConnectorAccess().getOuterRequiredRoleRequiredRoleCrossReference_8_0(); 
-				return obj;
-			}
-		}
-		return null;
-	}
-
-}
-
-// "}"
-protected class RequiredDelegationConnector_RightCurlyBracketKeyword_9 extends KeywordToken  {
-	
-	public RequiredDelegationConnector_RightCurlyBracketKeyword_9(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getRequiredDelegationConnectorAccess().getRightCurlyBracketKeyword_9();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new RequiredDelegationConnector_OuterRequiredRoleAssignment_8(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-
-/************ end Rule RequiredDelegationConnector ****************/
-
-}
diff --git a/org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/MyDslTestAntlrTokenFileProvider.java b/org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/MyDslTestAntlrTokenFileProvider.java
deleted file mode 100644
index a59a10ee..00000000
--- a/org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/MyDslTestAntlrTokenFileProvider.java
+++ /dev/null
@@ -1,15 +0,0 @@
-/*
-* generated by Xtext
-*/
-package org.xtext.example.mydsl.parser.antlr;
-
-import java.io.InputStream;
-import org.eclipse.xtext.parser.antlr.IAntlrTokenFileProvider;
-
-public class MyDslTestAntlrTokenFileProvider implements IAntlrTokenFileProvider {
-	
-	public InputStream getAntlrTokenFile() {
-		ClassLoader classLoader = getClass().getClassLoader();
-    	return classLoader.getResourceAsStream("org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.tokens");
-	}
-}
diff --git a/org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/MyDslTestParser.java b/org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/MyDslTestParser.java
deleted file mode 100644
index 1cb8e661..00000000
--- a/org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/MyDslTestParser.java
+++ /dev/null
@@ -1,39 +0,0 @@
-/*
-* generated by Xtext
-*/
-package org.xtext.example.mydsl.parser.antlr;
-
-import com.google.inject.Inject;
-
-import org.eclipse.xtext.parser.antlr.XtextTokenStream;
-import org.xtext.example.mydsl.services.MyDslTestGrammarAccess;
-
-public class MyDslTestParser extends org.eclipse.xtext.parser.antlr.AbstractAntlrParser {
-	
-	@Inject
-	private MyDslTestGrammarAccess grammarAccess;
-	
-	@Override
-	protected void setInitialHiddenTokens(XtextTokenStream tokenStream) {
-		tokenStream.setInitialHiddenTokens("RULE_WS", "RULE_ML_COMMENT", "RULE_SL_COMMENT");
-	}
-	
-	@Override
-	protected org.xtext.example.mydsl.parser.antlr.internal.InternalMyDslTestParser createParser(XtextTokenStream stream) {
-		return new org.xtext.example.mydsl.parser.antlr.internal.InternalMyDslTestParser(stream, getGrammarAccess());
-	}
-	
-	@Override 
-	protected String getDefaultRuleName() {
-		return "Repository";
-	}
-	
-	public MyDslTestGrammarAccess getGrammarAccess() {
-		return this.grammarAccess;
-	}
-	
-	public void setGrammarAccess(MyDslTestGrammarAccess grammarAccess) {
-		this.grammarAccess = grammarAccess;
-	}
-	
-}
diff --git a/org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g b/org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g
deleted file mode 100644
index 28244a63..00000000
--- a/org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g
+++ /dev/null
@@ -1,2875 +0,0 @@
-/*
-* generated by Xtext
-*/
-grammar InternalMyDslTest;
-
-options {
-	superClass=AbstractInternalAntlrParser;
-	
-}
-
-@lexer::header {
-package org.xtext.example.mydsl.parser.antlr.internal;
-
-// Hack: Use our own Lexer superclass by means of import. 
-// Currently there is no other way to specify the superclass for the lexer.
-import org.eclipse.xtext.parser.antlr.Lexer;
-}
-
-@parser::header {
-package org.xtext.example.mydsl.parser.antlr.internal; 
-
-import org.eclipse.xtext.*;
-import org.eclipse.xtext.parser.*;
-import org.eclipse.xtext.parser.impl.*;
-import org.eclipse.emf.ecore.util.EcoreUtil;
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.emf.common.util.Enumerator;
-import org.eclipse.xtext.parser.antlr.AbstractInternalAntlrParser;
-import org.eclipse.xtext.parser.antlr.XtextTokenStream;
-import org.eclipse.xtext.parser.antlr.XtextTokenStream.HiddenTokens;
-import org.eclipse.xtext.parser.antlr.AntlrDatatypeRuleToken;
-import org.xtext.example.mydsl.services.MyDslTestGrammarAccess;
-
-}
-
-@parser::members {
-
- 	private MyDslTestGrammarAccess grammarAccess;
- 	
-    public InternalMyDslTestParser(TokenStream input, MyDslTestGrammarAccess grammarAccess) {
-        this(input);
-        this.grammarAccess = grammarAccess;
-        registerRules(grammarAccess.getGrammar());
-    }
-    
-    @Override
-    protected String getFirstRuleName() {
-    	return "Repository";	
-   	}
-   	
-   	@Override
-   	protected MyDslTestGrammarAccess getGrammarAccess() {
-   		return grammarAccess;
-   	}
-}
-
-@rulecatch { 
-    catch (RecognitionException re) { 
-        recover(input,re); 
-        appendSkippedTokens();
-    } 
-}
-
-
-
-
-// Entry rule entryRuleRepository
-entryRuleRepository returns [EObject current=null] 
-	:
-	{ newCompositeNode(grammarAccess.getRepositoryRule()); }
-	 iv_ruleRepository=ruleRepository 
-	 { $current=$iv_ruleRepository.current; } 
-	 EOF 
-;
-
-// Rule Repository
-ruleRepository returns [EObject current=null] 
-    @init { enterRule(); 
-    }
-    @after { leaveRule(); }:
-(	otherlv_0='Repository' 
-    {
-    	newLeafNode(otherlv_0, grammarAccess.getRepositoryAccess().getRepositoryKeyword_0());
-    }
-(
-(
-		{ 
-	        newCompositeNode(grammarAccess.getRepositoryAccess().getNameQualifiedNameParserRuleCall_1_0()); 
-	    }
-		lv_name_1_0=ruleQualifiedName		{
-	        if ($current==null) {
-	            $current = createModelElementForParent(grammarAccess.getRepositoryRule());
-	        }
-       		set(
-       			$current, 
-       			"name",
-        		lv_name_1_0, 
-        		"QualifiedName");
-	        afterParserOrEnumRuleCall();
-	    }
-
-)
-)	otherlv_2='{' 
-    {
-    	newLeafNode(otherlv_2, grammarAccess.getRepositoryAccess().getLeftCurlyBracketKeyword_2());
-    }
-(	otherlv_3='imports' 
-    {
-    	newLeafNode(otherlv_3, grammarAccess.getRepositoryAccess().getImportsKeyword_3_0());
-    }
-	otherlv_4='{' 
-    {
-    	newLeafNode(otherlv_4, grammarAccess.getRepositoryAccess().getLeftCurlyBracketKeyword_3_1());
-    }
-(
-(
-		{ 
-	        newCompositeNode(grammarAccess.getRepositoryAccess().getImportsImportParserRuleCall_3_2_0()); 
-	    }
-		lv_imports_5_0=ruleImport		{
-	        if ($current==null) {
-	            $current = createModelElementForParent(grammarAccess.getRepositoryRule());
-	        }
-       		add(
-       			$current, 
-       			"imports",
-        		lv_imports_5_0, 
-        		"Import");
-	        afterParserOrEnumRuleCall();
-	    }
-
-)
-)(	otherlv_6=',' 
-    {
-    	newLeafNode(otherlv_6, grammarAccess.getRepositoryAccess().getCommaKeyword_3_3_0());
-    }
-(
-(
-		{ 
-	        newCompositeNode(grammarAccess.getRepositoryAccess().getImportsImportParserRuleCall_3_3_1_0()); 
-	    }
-		lv_imports_7_0=ruleImport		{
-	        if ($current==null) {
-	            $current = createModelElementForParent(grammarAccess.getRepositoryRule());
-	        }
-       		add(
-       			$current, 
-       			"imports",
-        		lv_imports_7_0, 
-        		"Import");
-	        afterParserOrEnumRuleCall();
-	    }
-
-)
-))*	otherlv_8='}' 
-    {
-    	newLeafNode(otherlv_8, grammarAccess.getRepositoryAccess().getRightCurlyBracketKeyword_3_4());
-    }
-)?(	otherlv_9='datatypes' 
-    {
-    	newLeafNode(otherlv_9, grammarAccess.getRepositoryAccess().getDatatypesKeyword_4_0());
-    }
-	otherlv_10='{' 
-    {
-    	newLeafNode(otherlv_10, grammarAccess.getRepositoryAccess().getLeftCurlyBracketKeyword_4_1());
-    }
-(
-(
-		{ 
-	        newCompositeNode(grammarAccess.getRepositoryAccess().getDatatypesDataTypeParserRuleCall_4_2_0()); 
-	    }
-		lv_datatypes_11_0=ruleDataType		{
-	        if ($current==null) {
-	            $current = createModelElementForParent(grammarAccess.getRepositoryRule());
-	        }
-       		add(
-       			$current, 
-       			"datatypes",
-        		lv_datatypes_11_0, 
-        		"DataType");
-	        afterParserOrEnumRuleCall();
-	    }
-
-)
-)(	otherlv_12=',' 
-    {
-    	newLeafNode(otherlv_12, grammarAccess.getRepositoryAccess().getCommaKeyword_4_3_0());
-    }
-(
-(
-		{ 
-	        newCompositeNode(grammarAccess.getRepositoryAccess().getDatatypesDataTypeParserRuleCall_4_3_1_0()); 
-	    }
-		lv_datatypes_13_0=ruleDataType		{
-	        if ($current==null) {
-	            $current = createModelElementForParent(grammarAccess.getRepositoryRule());
-	        }
-       		add(
-       			$current, 
-       			"datatypes",
-        		lv_datatypes_13_0, 
-        		"DataType");
-	        afterParserOrEnumRuleCall();
-	    }
-
-)
-))*	otherlv_14='}' 
-    {
-    	newLeafNode(otherlv_14, grammarAccess.getRepositoryAccess().getRightCurlyBracketKeyword_4_4());
-    }
-)?(	otherlv_15='components' 
-    {
-    	newLeafNode(otherlv_15, grammarAccess.getRepositoryAccess().getComponentsKeyword_5_0());
-    }
-	otherlv_16='{' 
-    {
-    	newLeafNode(otherlv_16, grammarAccess.getRepositoryAccess().getLeftCurlyBracketKeyword_5_1());
-    }
-(
-(
-		{ 
-	        newCompositeNode(grammarAccess.getRepositoryAccess().getComponentsRepositoryComponentParserRuleCall_5_2_0()); 
-	    }
-		lv_components_17_0=ruleRepositoryComponent		{
-	        if ($current==null) {
-	            $current = createModelElementForParent(grammarAccess.getRepositoryRule());
-	        }
-       		add(
-       			$current, 
-       			"components",
-        		lv_components_17_0, 
-        		"RepositoryComponent");
-	        afterParserOrEnumRuleCall();
-	    }
-
-)
-)(	otherlv_18=';' 
-    {
-    	newLeafNode(otherlv_18, grammarAccess.getRepositoryAccess().getSemicolonKeyword_5_3_0());
-    }
-(
-(
-		{ 
-	        newCompositeNode(grammarAccess.getRepositoryAccess().getComponentsRepositoryComponentParserRuleCall_5_3_1_0()); 
-	    }
-		lv_components_19_0=ruleRepositoryComponent		{
-	        if ($current==null) {
-	            $current = createModelElementForParent(grammarAccess.getRepositoryRule());
-	        }
-       		add(
-       			$current, 
-       			"components",
-        		lv_components_19_0, 
-        		"RepositoryComponent");
-	        afterParserOrEnumRuleCall();
-	    }
-
-)
-))*	otherlv_20='}' 
-    {
-    	newLeafNode(otherlv_20, grammarAccess.getRepositoryAccess().getRightCurlyBracketKeyword_5_4());
-    }
-)?(	otherlv_21='interfaces' 
-    {
-    	newLeafNode(otherlv_21, grammarAccess.getRepositoryAccess().getInterfacesKeyword_6_0());
-    }
-	otherlv_22='{' 
-    {
-    	newLeafNode(otherlv_22, grammarAccess.getRepositoryAccess().getLeftCurlyBracketKeyword_6_1());
-    }
-(
-(
-		{ 
-	        newCompositeNode(grammarAccess.getRepositoryAccess().getInterfacesInterfaceParserRuleCall_6_2_0()); 
-	    }
-		lv_interfaces_23_0=ruleInterface		{
-	        if ($current==null) {
-	            $current = createModelElementForParent(grammarAccess.getRepositoryRule());
-	        }
-       		add(
-       			$current, 
-       			"interfaces",
-        		lv_interfaces_23_0, 
-        		"Interface");
-	        afterParserOrEnumRuleCall();
-	    }
-
-)
-)(	otherlv_24=',' 
-    {
-    	newLeafNode(otherlv_24, grammarAccess.getRepositoryAccess().getCommaKeyword_6_3_0());
-    }
-(
-(
-		{ 
-	        newCompositeNode(grammarAccess.getRepositoryAccess().getInterfacesInterfaceParserRuleCall_6_3_1_0()); 
-	    }
-		lv_interfaces_25_0=ruleInterface		{
-	        if ($current==null) {
-	            $current = createModelElementForParent(grammarAccess.getRepositoryRule());
-	        }
-       		add(
-       			$current, 
-       			"interfaces",
-        		lv_interfaces_25_0, 
-        		"Interface");
-	        afterParserOrEnumRuleCall();
-	    }
-
-)
-))*	otherlv_26='}' 
-    {
-    	newLeafNode(otherlv_26, grammarAccess.getRepositoryAccess().getRightCurlyBracketKeyword_6_4());
-    }
-)?	otherlv_27='}' 
-    {
-    	newLeafNode(otherlv_27, grammarAccess.getRepositoryAccess().getRightCurlyBracketKeyword_7());
-    }
-)
-;
-
-
-
-
-
-// Entry rule entryRuleImport
-entryRuleImport returns [EObject current=null] 
-	:
-	{ newCompositeNode(grammarAccess.getImportRule()); }
-	 iv_ruleImport=ruleImport 
-	 { $current=$iv_ruleImport.current; } 
-	 EOF 
-;
-
-// Rule Import
-ruleImport returns [EObject current=null] 
-    @init { enterRule(); 
-    }
-    @after { leaveRule(); }:
-(	otherlv_0='import' 
-    {
-    	newLeafNode(otherlv_0, grammarAccess.getImportAccess().getImportKeyword_0());
-    }
-(
-(
-		{ 
-	        newCompositeNode(grammarAccess.getImportAccess().getImportedNamespaceQualifiedNameWithWildCardParserRuleCall_1_0()); 
-	    }
-		lv_importedNamespace_1_0=ruleQualifiedNameWithWildCard		{
-	        if ($current==null) {
-	            $current = createModelElementForParent(grammarAccess.getImportRule());
-	        }
-       		set(
-       			$current, 
-       			"importedNamespace",
-        		lv_importedNamespace_1_0, 
-        		"QualifiedNameWithWildCard");
-	        afterParserOrEnumRuleCall();
-	    }
-
-)
-))
-;
-
-
-
-
-
-// Entry rule entryRuleQualifiedNameWithWildCard
-entryRuleQualifiedNameWithWildCard returns [String current=null] 
-	:
-	{ newCompositeNode(grammarAccess.getQualifiedNameWithWildCardRule()); } 
-	 iv_ruleQualifiedNameWithWildCard=ruleQualifiedNameWithWildCard 
-	 { $current=$iv_ruleQualifiedNameWithWildCard.current.getText(); }  
-	 EOF 
-;
-
-// Rule QualifiedNameWithWildCard
-ruleQualifiedNameWithWildCard returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] 
-    @init { enterRule(); 
-    }
-    @after { leaveRule(); }:
-(
-    { 
-        newCompositeNode(grammarAccess.getQualifiedNameWithWildCardAccess().getQualifiedNameParserRuleCall_0()); 
-    }
-    this_QualifiedName_0=ruleQualifiedName    {
-		$current.merge(this_QualifiedName_0);
-    }
-
-    { 
-        afterParserOrEnumRuleCall();
-    }
-(
-	kw='.' 
-    {
-        $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getQualifiedNameWithWildCardAccess().getFullStopKeyword_1_0()); 
-    }
-
-	kw='*' 
-    {
-        $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getQualifiedNameWithWildCardAccess().getAsteriskKeyword_1_1()); 
-    }
-)?)
-    ;
-
-
-
-
-
-// Entry rule entryRuleQualifiedName
-entryRuleQualifiedName returns [String current=null] 
-	:
-	{ newCompositeNode(grammarAccess.getQualifiedNameRule()); } 
-	 iv_ruleQualifiedName=ruleQualifiedName 
-	 { $current=$iv_ruleQualifiedName.current.getText(); }  
-	 EOF 
-;
-
-// Rule QualifiedName
-ruleQualifiedName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] 
-    @init { enterRule(); 
-    }
-    @after { leaveRule(); }:
-(    this_ID_0=RULE_ID    {
-		$current.merge(this_ID_0);
-    }
-
-    { 
-    newLeafNode(this_ID_0, grammarAccess.getQualifiedNameAccess().getIDTerminalRuleCall_0()); 
-    }
-(
-	kw='.' 
-    {
-        $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getQualifiedNameAccess().getFullStopKeyword_1_0()); 
-    }
-    this_ID_2=RULE_ID    {
-		$current.merge(this_ID_2);
-    }
-
-    { 
-    newLeafNode(this_ID_2, grammarAccess.getQualifiedNameAccess().getIDTerminalRuleCall_1_1()); 
-    }
-)*)
-    ;
-
-
-
-
-
-// Entry rule entryRuleDataType
-entryRuleDataType returns [EObject current=null] 
-	:
-	{ newCompositeNode(grammarAccess.getDataTypeRule()); }
-	 iv_ruleDataType=ruleDataType 
-	 { $current=$iv_ruleDataType.current; } 
-	 EOF 
-;
-
-// Rule DataType
-ruleDataType returns [EObject current=null] 
-    @init { enterRule(); 
-    }
-    @after { leaveRule(); }:
-(
-    { 
-        newCompositeNode(grammarAccess.getDataTypeAccess().getCollectionDataTypeParserRuleCall_0()); 
-    }
-    this_CollectionDataType_0=ruleCollectionDataType
-    { 
-        $current = $this_CollectionDataType_0.current; 
-        afterParserOrEnumRuleCall();
-    }
-
-    |
-    { 
-        newCompositeNode(grammarAccess.getDataTypeAccess().getCompositeDataTypeParserRuleCall_1()); 
-    }
-    this_CompositeDataType_1=ruleCompositeDataType
-    { 
-        $current = $this_CompositeDataType_1.current; 
-        afterParserOrEnumRuleCall();
-    }
-
-    |
-    { 
-        newCompositeNode(grammarAccess.getDataTypeAccess().getPrimitiveDataTypeParserRuleCall_2()); 
-    }
-    this_PrimitiveDataType_2=rulePrimitiveDataType
-    { 
-        $current = $this_PrimitiveDataType_2.current; 
-        afterParserOrEnumRuleCall();
-    }
-)
-;
-
-
-
-
-
-// Entry rule entryRuleRepositoryComponent
-entryRuleRepositoryComponent returns [EObject current=null] 
-	:
-	{ newCompositeNode(grammarAccess.getRepositoryComponentRule()); }
-	 iv_ruleRepositoryComponent=ruleRepositoryComponent 
-	 { $current=$iv_ruleRepositoryComponent.current; } 
-	 EOF 
-;
-
-// Rule RepositoryComponent
-ruleRepositoryComponent returns [EObject current=null] 
-    @init { enterRule(); 
-    }
-    @after { leaveRule(); }:
-(
-    { 
-        newCompositeNode(grammarAccess.getRepositoryComponentAccess().getRepositoryComponent_ImplParserRuleCall_0()); 
-    }
-    this_RepositoryComponent_Impl_0=ruleRepositoryComponent_Impl
-    { 
-        $current = $this_RepositoryComponent_Impl_0.current; 
-        afterParserOrEnumRuleCall();
-    }
-
-    |
-    { 
-        newCompositeNode(grammarAccess.getRepositoryComponentAccess().getBasicComponentParserRuleCall_1()); 
-    }
-    this_BasicComponent_1=ruleBasicComponent
-    { 
-        $current = $this_BasicComponent_1.current; 
-        afterParserOrEnumRuleCall();
-    }
-
-    |
-    { 
-        newCompositeNode(grammarAccess.getRepositoryComponentAccess().getCompositeComponentParserRuleCall_2()); 
-    }
-    this_CompositeComponent_2=ruleCompositeComponent
-    { 
-        $current = $this_CompositeComponent_2.current; 
-        afterParserOrEnumRuleCall();
-    }
-
-    |
-    { 
-        newCompositeNode(grammarAccess.getRepositoryComponentAccess().getSubSystemParserRuleCall_3()); 
-    }
-    this_SubSystem_3=ruleSubSystem
-    { 
-        $current = $this_SubSystem_3.current; 
-        afterParserOrEnumRuleCall();
-    }
-)
-;
-
-
-
-
-
-// Entry rule entryRuleEString
-entryRuleEString returns [String current=null] 
-	:
-	{ newCompositeNode(grammarAccess.getEStringRule()); } 
-	 iv_ruleEString=ruleEString 
-	 { $current=$iv_ruleEString.current.getText(); }  
-	 EOF 
-;
-
-// Rule EString
-ruleEString returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] 
-    @init { enterRule(); 
-    }
-    @after { leaveRule(); }:
-(    this_STRING_0=RULE_STRING    {
-		$current.merge(this_STRING_0);
-    }
-
-    { 
-    newLeafNode(this_STRING_0, grammarAccess.getEStringAccess().getSTRINGTerminalRuleCall_0()); 
-    }
-
-    |    this_ID_1=RULE_ID    {
-		$current.merge(this_ID_1);
-    }
-
-    { 
-    newLeafNode(this_ID_1, grammarAccess.getEStringAccess().getIDTerminalRuleCall_1()); 
-    }
-)
-    ;
-
-
-
-
-
-// Entry rule entryRuleInterface
-entryRuleInterface returns [EObject current=null] 
-	:
-	{ newCompositeNode(grammarAccess.getInterfaceRule()); }
-	 iv_ruleInterface=ruleInterface 
-	 { $current=$iv_ruleInterface.current; } 
-	 EOF 
-;
-
-// Rule Interface
-ruleInterface returns [EObject current=null] 
-    @init { enterRule(); 
-    }
-    @after { leaveRule(); }:
-(	otherlv_0='Interface' 
-    {
-    	newLeafNode(otherlv_0, grammarAccess.getInterfaceAccess().getInterfaceKeyword_0());
-    }
-(
-(
-		{ 
-	        newCompositeNode(grammarAccess.getInterfaceAccess().getNameEStringParserRuleCall_1_0()); 
-	    }
-		lv_name_1_0=ruleEString		{
-	        if ($current==null) {
-	            $current = createModelElementForParent(grammarAccess.getInterfaceRule());
-	        }
-       		set(
-       			$current, 
-       			"name",
-        		lv_name_1_0, 
-        		"EString");
-	        afterParserOrEnumRuleCall();
-	    }
-
-)
-)	otherlv_2='{' 
-    {
-    	newLeafNode(otherlv_2, grammarAccess.getInterfaceAccess().getLeftCurlyBracketKeyword_2());
-    }
-(	otherlv_3='parentInterfaces' 
-    {
-    	newLeafNode(otherlv_3, grammarAccess.getInterfaceAccess().getParentInterfacesKeyword_3_0());
-    }
-	otherlv_4='(' 
-    {
-    	newLeafNode(otherlv_4, grammarAccess.getInterfaceAccess().getLeftParenthesisKeyword_3_1());
-    }
-(
-(
-		{
-			if ($current==null) {
-	            $current = createModelElement(grammarAccess.getInterfaceRule());
-	        }
-        }
-		{ 
-	        newCompositeNode(grammarAccess.getInterfaceAccess().getParentInterfacesInterfaceCrossReference_3_2_0()); 
-	    }
-		ruleEString		{ 
-	        afterParserOrEnumRuleCall();
-	    }
-
-)
-)(	otherlv_6=',' 
-    {
-    	newLeafNode(otherlv_6, grammarAccess.getInterfaceAccess().getCommaKeyword_3_3_0());
-    }
-(
-(
-		{
-			if ($current==null) {
-	            $current = createModelElement(grammarAccess.getInterfaceRule());
-	        }
-        }
-		{ 
-	        newCompositeNode(grammarAccess.getInterfaceAccess().getParentInterfacesInterfaceCrossReference_3_3_1_0()); 
-	    }
-		ruleEString		{ 
-	        afterParserOrEnumRuleCall();
-	    }
-
-)
-))*	otherlv_8=')' 
-    {
-    	newLeafNode(otherlv_8, grammarAccess.getInterfaceAccess().getRightParenthesisKeyword_3_4());
-    }
-)?((
-(
-		{ 
-	        newCompositeNode(grammarAccess.getInterfaceAccess().getSignaturesSignatureParserRuleCall_4_0_0()); 
-	    }
-		lv_signatures_9_0=ruleSignature		{
-	        if ($current==null) {
-	            $current = createModelElementForParent(grammarAccess.getInterfaceRule());
-	        }
-       		add(
-       			$current, 
-       			"signatures",
-        		lv_signatures_9_0, 
-        		"Signature");
-	        afterParserOrEnumRuleCall();
-	    }
-
-)
-)(	otherlv_10=',' 
-    {
-    	newLeafNode(otherlv_10, grammarAccess.getInterfaceAccess().getCommaKeyword_4_1_0());
-    }
-(
-(
-		{ 
-	        newCompositeNode(grammarAccess.getInterfaceAccess().getSignaturesSignatureParserRuleCall_4_1_1_0()); 
-	    }
-		lv_signatures_11_0=ruleSignature		{
-	        if ($current==null) {
-	            $current = createModelElementForParent(grammarAccess.getInterfaceRule());
-	        }
-       		add(
-       			$current, 
-       			"signatures",
-        		lv_signatures_11_0, 
-        		"Signature");
-	        afterParserOrEnumRuleCall();
-	    }
-
-)
-))*)?	otherlv_12='}' 
-    {
-    	newLeafNode(otherlv_12, grammarAccess.getInterfaceAccess().getRightCurlyBracketKeyword_5());
-    }
-)
-;
-
-
-
-
-
-// Entry rule entryRuleRepositoryComponent_Impl
-entryRuleRepositoryComponent_Impl returns [EObject current=null] 
-	:
-	{ newCompositeNode(grammarAccess.getRepositoryComponent_ImplRule()); }
-	 iv_ruleRepositoryComponent_Impl=ruleRepositoryComponent_Impl 
-	 { $current=$iv_ruleRepositoryComponent_Impl.current; } 
-	 EOF 
-;
-
-// Rule RepositoryComponent_Impl
-ruleRepositoryComponent_Impl returns [EObject current=null] 
-    @init { enterRule(); 
-    }
-    @after { leaveRule(); }:
-(	otherlv_0='RepositoryComponent' 
-    {
-    	newLeafNode(otherlv_0, grammarAccess.getRepositoryComponent_ImplAccess().getRepositoryComponentKeyword_0());
-    }
-(
-(
-		{ 
-	        newCompositeNode(grammarAccess.getRepositoryComponent_ImplAccess().getNameEStringParserRuleCall_1_0()); 
-	    }
-		lv_name_1_0=ruleEString		{
-	        if ($current==null) {
-	            $current = createModelElementForParent(grammarAccess.getRepositoryComponent_ImplRule());
-	        }
-       		set(
-       			$current, 
-       			"name",
-        		lv_name_1_0, 
-        		"EString");
-	        afterParserOrEnumRuleCall();
-	    }
-
-)
-)	otherlv_2='{' 
-    {
-    	newLeafNode(otherlv_2, grammarAccess.getRepositoryComponent_ImplAccess().getLeftCurlyBracketKeyword_2());
-    }
-(	otherlv_3='relationship' 
-    {
-    	newLeafNode(otherlv_3, grammarAccess.getRepositoryComponent_ImplAccess().getRelationshipKeyword_3_0());
-    }
-	otherlv_4='(' 
-    {
-    	newLeafNode(otherlv_4, grammarAccess.getRepositoryComponent_ImplAccess().getLeftParenthesisKeyword_3_1());
-    }
-(
-(
-		{
-			if ($current==null) {
-	            $current = createModelElement(grammarAccess.getRepositoryComponent_ImplRule());
-	        }
-        }
-		{ 
-	        newCompositeNode(grammarAccess.getRepositoryComponent_ImplAccess().getRelationshipRelationshipCrossReference_3_2_0()); 
-	    }
-		ruleEString		{ 
-	        afterParserOrEnumRuleCall();
-	    }
-
-)
-)(	otherlv_6=',' 
-    {
-    	newLeafNode(otherlv_6, grammarAccess.getRepositoryComponent_ImplAccess().getCommaKeyword_3_3_0());
-    }
-(
-(
-		{
-			if ($current==null) {
-	            $current = createModelElement(grammarAccess.getRepositoryComponent_ImplRule());
-	        }
-        }
-		{ 
-	        newCompositeNode(grammarAccess.getRepositoryComponent_ImplAccess().getRelationshipRelationshipCrossReference_3_3_1_0()); 
-	    }
-		ruleEString		{ 
-	        afterParserOrEnumRuleCall();
-	    }
-
-)
-))*	otherlv_8=')' 
-    {
-    	newLeafNode(otherlv_8, grammarAccess.getRepositoryComponent_ImplAccess().getRightParenthesisKeyword_3_4());
-    }
-)?(	otherlv_9='providedRoles' 
-    {
-    	newLeafNode(otherlv_9, grammarAccess.getRepositoryComponent_ImplAccess().getProvidedRolesKeyword_4_0());
-    }
-	otherlv_10='{' 
-    {
-    	newLeafNode(otherlv_10, grammarAccess.getRepositoryComponent_ImplAccess().getLeftCurlyBracketKeyword_4_1());
-    }
-(
-(
-		{ 
-	        newCompositeNode(grammarAccess.getRepositoryComponent_ImplAccess().getProvidedRolesProvidedRoleParserRuleCall_4_2_0()); 
-	    }
-		lv_providedRoles_11_0=ruleProvidedRole		{
-	        if ($current==null) {
-	            $current = createModelElementForParent(grammarAccess.getRepositoryComponent_ImplRule());
-	        }
-       		add(
-       			$current, 
-       			"providedRoles",
-        		lv_providedRoles_11_0, 
-        		"ProvidedRole");
-	        afterParserOrEnumRuleCall();
-	    }
-
-)
-)(	otherlv_12=',' 
-    {
-    	newLeafNode(otherlv_12, grammarAccess.getRepositoryComponent_ImplAccess().getCommaKeyword_4_3_0());
-    }
-(
-(
-		{ 
-	        newCompositeNode(grammarAccess.getRepositoryComponent_ImplAccess().getProvidedRolesProvidedRoleParserRuleCall_4_3_1_0()); 
-	    }
-		lv_providedRoles_13_0=ruleProvidedRole		{
-	        if ($current==null) {
-	            $current = createModelElementForParent(grammarAccess.getRepositoryComponent_ImplRule());
-	        }
-       		add(
-       			$current, 
-       			"providedRoles",
-        		lv_providedRoles_13_0, 
-        		"ProvidedRole");
-	        afterParserOrEnumRuleCall();
-	    }
-
-)
-))*	otherlv_14='}' 
-    {
-    	newLeafNode(otherlv_14, grammarAccess.getRepositoryComponent_ImplAccess().getRightCurlyBracketKeyword_4_4());
-    }
-)?(	otherlv_15='requiredRoles' 
-    {
-    	newLeafNode(otherlv_15, grammarAccess.getRepositoryComponent_ImplAccess().getRequiredRolesKeyword_5_0());
-    }
-	otherlv_16='{' 
-    {
-    	newLeafNode(otherlv_16, grammarAccess.getRepositoryComponent_ImplAccess().getLeftCurlyBracketKeyword_5_1());
-    }
-(
-(
-		{ 
-	        newCompositeNode(grammarAccess.getRepositoryComponent_ImplAccess().getRequiredRolesRequiredRoleParserRuleCall_5_2_0()); 
-	    }
-		lv_requiredRoles_17_0=ruleRequiredRole		{
-	        if ($current==null) {
-	            $current = createModelElementForParent(grammarAccess.getRepositoryComponent_ImplRule());
-	        }
-       		add(
-       			$current, 
-       			"requiredRoles",
-        		lv_requiredRoles_17_0, 
-        		"RequiredRole");
-	        afterParserOrEnumRuleCall();
-	    }
-
-)
-)(	otherlv_18=',' 
-    {
-    	newLeafNode(otherlv_18, grammarAccess.getRepositoryComponent_ImplAccess().getCommaKeyword_5_3_0());
-    }
-(
-(
-		{ 
-	        newCompositeNode(grammarAccess.getRepositoryComponent_ImplAccess().getRequiredRolesRequiredRoleParserRuleCall_5_3_1_0()); 
-	    }
-		lv_requiredRoles_19_0=ruleRequiredRole		{
-	        if ($current==null) {
-	            $current = createModelElementForParent(grammarAccess.getRepositoryComponent_ImplRule());
-	        }
-       		add(
-       			$current, 
-       			"requiredRoles",
-        		lv_requiredRoles_19_0, 
-        		"RequiredRole");
-	        afterParserOrEnumRuleCall();
-	    }
-
-)
-))*	otherlv_20='}' 
-    {
-    	newLeafNode(otherlv_20, grammarAccess.getRepositoryComponent_ImplAccess().getRightCurlyBracketKeyword_5_4());
-    }
-)?	otherlv_21='}' 
-    {
-    	newLeafNode(otherlv_21, grammarAccess.getRepositoryComponent_ImplAccess().getRightCurlyBracketKeyword_6());
-    }
-)
-;
-
-
-
-
-
-// Entry rule entryRuleCollectionDataType
-entryRuleCollectionDataType returns [EObject current=null] 
-	:
-	{ newCompositeNode(grammarAccess.getCollectionDataTypeRule()); }
-	 iv_ruleCollectionDataType=ruleCollectionDataType 
-	 { $current=$iv_ruleCollectionDataType.current; } 
-	 EOF 
-;
-
-// Rule CollectionDataType
-ruleCollectionDataType returns [EObject current=null] 
-    @init { enterRule(); 
-    }
-    @after { leaveRule(); }:
-(	otherlv_0='CollectionDataType' 
-    {
-    	newLeafNode(otherlv_0, grammarAccess.getCollectionDataTypeAccess().getCollectionDataTypeKeyword_0());
-    }
-(
-(
-		{ 
-	        newCompositeNode(grammarAccess.getCollectionDataTypeAccess().getNameEStringParserRuleCall_1_0()); 
-	    }
-		lv_name_1_0=ruleEString		{
-	        if ($current==null) {
-	            $current = createModelElementForParent(grammarAccess.getCollectionDataTypeRule());
-	        }
-       		set(
-       			$current, 
-       			"name",
-        		lv_name_1_0, 
-        		"EString");
-	        afterParserOrEnumRuleCall();
-	    }
-
-)
-)	otherlv_2='{' 
-    {
-    	newLeafNode(otherlv_2, grammarAccess.getCollectionDataTypeAccess().getLeftCurlyBracketKeyword_2());
-    }
-	otherlv_3='innerType' 
-    {
-    	newLeafNode(otherlv_3, grammarAccess.getCollectionDataTypeAccess().getInnerTypeKeyword_3());
-    }
-(
-(
-		{
-			if ($current==null) {
-	            $current = createModelElement(grammarAccess.getCollectionDataTypeRule());
-	        }
-        }
-		{ 
-	        newCompositeNode(grammarAccess.getCollectionDataTypeAccess().getInnerTypeDataTypeCrossReference_4_0()); 
-	    }
-		ruleEString		{ 
-	        afterParserOrEnumRuleCall();
-	    }
-
-)
-)	otherlv_5='}' 
-    {
-    	newLeafNode(otherlv_5, grammarAccess.getCollectionDataTypeAccess().getRightCurlyBracketKeyword_5());
-    }
-)
-;
-
-
-
-
-
-// Entry rule entryRuleCompositeDataType
-entryRuleCompositeDataType returns [EObject current=null] 
-	:
-	{ newCompositeNode(grammarAccess.getCompositeDataTypeRule()); }
-	 iv_ruleCompositeDataType=ruleCompositeDataType 
-	 { $current=$iv_ruleCompositeDataType.current; } 
-	 EOF 
-;
-
-// Rule CompositeDataType
-ruleCompositeDataType returns [EObject current=null] 
-    @init { enterRule(); 
-    }
-    @after { leaveRule(); }:
-(	otherlv_0='CompositeDataType' 
-    {
-    	newLeafNode(otherlv_0, grammarAccess.getCompositeDataTypeAccess().getCompositeDataTypeKeyword_0());
-    }
-(
-(
-		{ 
-	        newCompositeNode(grammarAccess.getCompositeDataTypeAccess().getNameEStringParserRuleCall_1_0()); 
-	    }
-		lv_name_1_0=ruleEString		{
-	        if ($current==null) {
-	            $current = createModelElementForParent(grammarAccess.getCompositeDataTypeRule());
-	        }
-       		set(
-       			$current, 
-       			"name",
-        		lv_name_1_0, 
-        		"EString");
-	        afterParserOrEnumRuleCall();
-	    }
-
-)
-)	otherlv_2='{' 
-    {
-    	newLeafNode(otherlv_2, grammarAccess.getCompositeDataTypeAccess().getLeftCurlyBracketKeyword_2());
-    }
-(	otherlv_3='parentTypes' 
-    {
-    	newLeafNode(otherlv_3, grammarAccess.getCompositeDataTypeAccess().getParentTypesKeyword_3_0());
-    }
-	otherlv_4='(' 
-    {
-    	newLeafNode(otherlv_4, grammarAccess.getCompositeDataTypeAccess().getLeftParenthesisKeyword_3_1());
-    }
-(
-(
-		{
-			if ($current==null) {
-	            $current = createModelElement(grammarAccess.getCompositeDataTypeRule());
-	        }
-        }
-		{ 
-	        newCompositeNode(grammarAccess.getCompositeDataTypeAccess().getParentTypesCompositeDataTypeCrossReference_3_2_0()); 
-	    }
-		ruleEString		{ 
-	        afterParserOrEnumRuleCall();
-	    }
-
-)
-)(	otherlv_6=',' 
-    {
-    	newLeafNode(otherlv_6, grammarAccess.getCompositeDataTypeAccess().getCommaKeyword_3_3_0());
-    }
-(
-(
-		{
-			if ($current==null) {
-	            $current = createModelElement(grammarAccess.getCompositeDataTypeRule());
-	        }
-        }
-		{ 
-	        newCompositeNode(grammarAccess.getCompositeDataTypeAccess().getParentTypesCompositeDataTypeCrossReference_3_3_1_0()); 
-	    }
-		ruleEString		{ 
-	        afterParserOrEnumRuleCall();
-	    }
-
-)
-))*	otherlv_8=')' 
-    {
-    	newLeafNode(otherlv_8, grammarAccess.getCompositeDataTypeAccess().getRightParenthesisKeyword_3_4());
-    }
-)?(	otherlv_9='innerDeclarations' 
-    {
-    	newLeafNode(otherlv_9, grammarAccess.getCompositeDataTypeAccess().getInnerDeclarationsKeyword_4_0());
-    }
-	otherlv_10='{' 
-    {
-    	newLeafNode(otherlv_10, grammarAccess.getCompositeDataTypeAccess().getLeftCurlyBracketKeyword_4_1());
-    }
-(
-(
-		{ 
-	        newCompositeNode(grammarAccess.getCompositeDataTypeAccess().getInnerDeclarationsInnerDeclarationParserRuleCall_4_2_0()); 
-	    }
-		lv_innerDeclarations_11_0=ruleInnerDeclaration		{
-	        if ($current==null) {
-	            $current = createModelElementForParent(grammarAccess.getCompositeDataTypeRule());
-	        }
-       		add(
-       			$current, 
-       			"innerDeclarations",
-        		lv_innerDeclarations_11_0, 
-        		"InnerDeclaration");
-	        afterParserOrEnumRuleCall();
-	    }
-
-)
-)(	otherlv_12=',' 
-    {
-    	newLeafNode(otherlv_12, grammarAccess.getCompositeDataTypeAccess().getCommaKeyword_4_3_0());
-    }
-(
-(
-		{ 
-	        newCompositeNode(grammarAccess.getCompositeDataTypeAccess().getInnerDeclarationsInnerDeclarationParserRuleCall_4_3_1_0()); 
-	    }
-		lv_innerDeclarations_13_0=ruleInnerDeclaration		{
-	        if ($current==null) {
-	            $current = createModelElementForParent(grammarAccess.getCompositeDataTypeRule());
-	        }
-       		add(
-       			$current, 
-       			"innerDeclarations",
-        		lv_innerDeclarations_13_0, 
-        		"InnerDeclaration");
-	        afterParserOrEnumRuleCall();
-	    }
-
-)
-))*	otherlv_14='}' 
-    {
-    	newLeafNode(otherlv_14, grammarAccess.getCompositeDataTypeAccess().getRightCurlyBracketKeyword_4_4());
-    }
-)?	otherlv_15='}' 
-    {
-    	newLeafNode(otherlv_15, grammarAccess.getCompositeDataTypeAccess().getRightCurlyBracketKeyword_5());
-    }
-)
-;
-
-
-
-
-
-// Entry rule entryRulePrimitiveDataType
-entryRulePrimitiveDataType returns [EObject current=null] 
-	:
-	{ newCompositeNode(grammarAccess.getPrimitiveDataTypeRule()); }
-	 iv_rulePrimitiveDataType=rulePrimitiveDataType 
-	 { $current=$iv_rulePrimitiveDataType.current; } 
-	 EOF 
-;
-
-// Rule PrimitiveDataType
-rulePrimitiveDataType returns [EObject current=null] 
-    @init { enterRule(); 
-    }
-    @after { leaveRule(); }:
-(	otherlv_0='PrimitiveDataType' 
-    {
-    	newLeafNode(otherlv_0, grammarAccess.getPrimitiveDataTypeAccess().getPrimitiveDataTypeKeyword_0());
-    }
-	otherlv_1='{' 
-    {
-    	newLeafNode(otherlv_1, grammarAccess.getPrimitiveDataTypeAccess().getLeftCurlyBracketKeyword_1());
-    }
-	otherlv_2='type' 
-    {
-    	newLeafNode(otherlv_2, grammarAccess.getPrimitiveDataTypeAccess().getTypeKeyword_2());
-    }
-(
-(
-		{ 
-	        newCompositeNode(grammarAccess.getPrimitiveDataTypeAccess().getTypePrimitiveTypeEnumEnumRuleCall_3_0()); 
-	    }
-		lv_type_3_0=rulePrimitiveTypeEnum		{
-	        if ($current==null) {
-	            $current = createModelElementForParent(grammarAccess.getPrimitiveDataTypeRule());
-	        }
-       		set(
-       			$current, 
-       			"type",
-        		lv_type_3_0, 
-        		"PrimitiveTypeEnum");
-	        afterParserOrEnumRuleCall();
-	    }
-
-)
-)	otherlv_4='ref' 
-    {
-    	newLeafNode(otherlv_4, grammarAccess.getPrimitiveDataTypeAccess().getRefKeyword_4());
-    }
-(
-(
-		{ 
-	        newCompositeNode(grammarAccess.getPrimitiveDataTypeAccess().getNameEStringParserRuleCall_5_0()); 
-	    }
-		lv_name_5_0=ruleEString		{
-	        if ($current==null) {
-	            $current = createModelElementForParent(grammarAccess.getPrimitiveDataTypeRule());
-	        }
-       		set(
-       			$current, 
-       			"name",
-        		lv_name_5_0, 
-        		"EString");
-	        afterParserOrEnumRuleCall();
-	    }
-
-)
-)	otherlv_6='}' 
-    {
-    	newLeafNode(otherlv_6, grammarAccess.getPrimitiveDataTypeAccess().getRightCurlyBracketKeyword_6());
-    }
-)
-;
-
-
-
-
-
-// Entry rule entryRuleInnerDeclaration
-entryRuleInnerDeclaration returns [EObject current=null] 
-	:
-	{ newCompositeNode(grammarAccess.getInnerDeclarationRule()); }
-	 iv_ruleInnerDeclaration=ruleInnerDeclaration 
-	 { $current=$iv_ruleInnerDeclaration.current; } 
-	 EOF 
-;
-
-// Rule InnerDeclaration
-ruleInnerDeclaration returns [EObject current=null] 
-    @init { enterRule(); 
-    }
-    @after { leaveRule(); }:
-(	otherlv_0='InnerDeclaration' 
-    {
-    	newLeafNode(otherlv_0, grammarAccess.getInnerDeclarationAccess().getInnerDeclarationKeyword_0());
-    }
-(
-(
-		{ 
-	        newCompositeNode(grammarAccess.getInnerDeclarationAccess().getNameEStringParserRuleCall_1_0()); 
-	    }
-		lv_name_1_0=ruleEString		{
-	        if ($current==null) {
-	            $current = createModelElementForParent(grammarAccess.getInnerDeclarationRule());
-	        }
-       		set(
-       			$current, 
-       			"name",
-        		lv_name_1_0, 
-        		"EString");
-	        afterParserOrEnumRuleCall();
-	    }
-
-)
-)	otherlv_2='{' 
-    {
-    	newLeafNode(otherlv_2, grammarAccess.getInnerDeclarationAccess().getLeftCurlyBracketKeyword_2());
-    }
-	otherlv_3='dataType' 
-    {
-    	newLeafNode(otherlv_3, grammarAccess.getInnerDeclarationAccess().getDataTypeKeyword_3());
-    }
-(
-(
-		{
-			if ($current==null) {
-	            $current = createModelElement(grammarAccess.getInnerDeclarationRule());
-	        }
-        }
-		{ 
-	        newCompositeNode(grammarAccess.getInnerDeclarationAccess().getDataTypeDataTypeCrossReference_4_0()); 
-	    }
-		ruleEString		{ 
-	        afterParserOrEnumRuleCall();
-	    }
-
-)
-)	otherlv_5='}' 
-    {
-    	newLeafNode(otherlv_5, grammarAccess.getInnerDeclarationAccess().getRightCurlyBracketKeyword_5());
-    }
-)
-;
-
-
-
-
-
-// Entry rule entryRuleSignature
-entryRuleSignature returns [EObject current=null] 
-	:
-	{ newCompositeNode(grammarAccess.getSignatureRule()); }
-	 iv_ruleSignature=ruleSignature 
-	 { $current=$iv_ruleSignature.current; } 
-	 EOF 
-;
-
-// Rule Signature
-ruleSignature returns [EObject current=null] 
-    @init { enterRule(); 
-    }
-    @after { leaveRule(); }:
-(((
-(
-		{
-			if ($current==null) {
-	            $current = createModelElement(grammarAccess.getSignatureRule());
-	        }
-        }
-		{ 
-	        newCompositeNode(grammarAccess.getSignatureAccess().getReturnTypeDataTypeCrossReference_0_0_0()); 
-	    }
-		ruleEString		{ 
-	        afterParserOrEnumRuleCall();
-	    }
-
-)
-)
-    |	otherlv_1='void' 
-    {
-    	newLeafNode(otherlv_1, grammarAccess.getSignatureAccess().getVoidKeyword_0_1());
-    }
-)(
-(
-		{ 
-	        newCompositeNode(grammarAccess.getSignatureAccess().getNameEStringParserRuleCall_1_0()); 
-	    }
-		lv_name_2_0=ruleEString		{
-	        if ($current==null) {
-	            $current = createModelElementForParent(grammarAccess.getSignatureRule());
-	        }
-       		set(
-       			$current, 
-       			"name",
-        		lv_name_2_0, 
-        		"EString");
-	        afterParserOrEnumRuleCall();
-	    }
-
-)
-)	otherlv_3='(' 
-    {
-    	newLeafNode(otherlv_3, grammarAccess.getSignatureAccess().getLeftParenthesisKeyword_2());
-    }
-((
-(
-		{ 
-	        newCompositeNode(grammarAccess.getSignatureAccess().getParametersParameterParserRuleCall_3_0_0()); 
-	    }
-		lv_parameters_4_0=ruleParameter		{
-	        if ($current==null) {
-	            $current = createModelElementForParent(grammarAccess.getSignatureRule());
-	        }
-       		add(
-       			$current, 
-       			"parameters",
-        		lv_parameters_4_0, 
-        		"Parameter");
-	        afterParserOrEnumRuleCall();
-	    }
-
-)
-)(	otherlv_5=',' 
-    {
-    	newLeafNode(otherlv_5, grammarAccess.getSignatureAccess().getCommaKeyword_3_1_0());
-    }
-(
-(
-		{ 
-	        newCompositeNode(grammarAccess.getSignatureAccess().getParametersParameterParserRuleCall_3_1_1_0()); 
-	    }
-		lv_parameters_6_0=ruleParameter		{
-	        if ($current==null) {
-	            $current = createModelElementForParent(grammarAccess.getSignatureRule());
-	        }
-       		add(
-       			$current, 
-       			"parameters",
-        		lv_parameters_6_0, 
-        		"Parameter");
-	        afterParserOrEnumRuleCall();
-	    }
-
-)
-))*)?	otherlv_7=')' 
-    {
-    	newLeafNode(otherlv_7, grammarAccess.getSignatureAccess().getRightParenthesisKeyword_4());
-    }
-)
-;
-
-
-
-
-
-// Entry rule entryRuleParameter
-entryRuleParameter returns [EObject current=null] 
-	:
-	{ newCompositeNode(grammarAccess.getParameterRule()); }
-	 iv_ruleParameter=ruleParameter 
-	 { $current=$iv_ruleParameter.current; } 
-	 EOF 
-;
-
-// Rule Parameter
-ruleParameter returns [EObject current=null] 
-    @init { enterRule(); 
-    }
-    @after { leaveRule(); }:
-((
-(
-		{
-			if ($current==null) {
-	            $current = createModelElement(grammarAccess.getParameterRule());
-	        }
-        }
-		{ 
-	        newCompositeNode(grammarAccess.getParameterAccess().getDataTypeDataTypeCrossReference_0_0()); 
-	    }
-		ruleEString		{ 
-	        afterParserOrEnumRuleCall();
-	    }
-
-)
-)(
-(
-		{ 
-	        newCompositeNode(grammarAccess.getParameterAccess().getNameEStringParserRuleCall_1_0()); 
-	    }
-		lv_name_1_0=ruleEString		{
-	        if ($current==null) {
-	            $current = createModelElementForParent(grammarAccess.getParameterRule());
-	        }
-       		set(
-       			$current, 
-       			"name",
-        		lv_name_1_0, 
-        		"EString");
-	        afterParserOrEnumRuleCall();
-	    }
-
-)
-))
-;
-
-
-
-
-
-// Entry rule entryRuleProvidedRole
-entryRuleProvidedRole returns [EObject current=null] 
-	:
-	{ newCompositeNode(grammarAccess.getProvidedRoleRule()); }
-	 iv_ruleProvidedRole=ruleProvidedRole 
-	 { $current=$iv_ruleProvidedRole.current; } 
-	 EOF 
-;
-
-// Rule ProvidedRole
-ruleProvidedRole returns [EObject current=null] 
-    @init { enterRule(); 
-    }
-    @after { leaveRule(); }:
-(	otherlv_0='ProvidedRole' 
-    {
-    	newLeafNode(otherlv_0, grammarAccess.getProvidedRoleAccess().getProvidedRoleKeyword_0());
-    }
-(
-(
-		{
-			if ($current==null) {
-	            $current = createModelElement(grammarAccess.getProvidedRoleRule());
-	        }
-        }
-		{ 
-	        newCompositeNode(grammarAccess.getProvidedRoleAccess().getInterfaceInterfaceCrossReference_1_0()); 
-	    }
-		ruleEString		{ 
-	        afterParserOrEnumRuleCall();
-	    }
-
-)
-)(	otherlv_2=',' 
-    {
-    	newLeafNode(otherlv_2, grammarAccess.getProvidedRoleAccess().getCommaKeyword_2());
-    }
-)?)
-;
-
-
-
-
-
-// Entry rule entryRuleRequiredRole
-entryRuleRequiredRole returns [EObject current=null] 
-	:
-	{ newCompositeNode(grammarAccess.getRequiredRoleRule()); }
-	 iv_ruleRequiredRole=ruleRequiredRole 
-	 { $current=$iv_ruleRequiredRole.current; } 
-	 EOF 
-;
-
-// Rule RequiredRole
-ruleRequiredRole returns [EObject current=null] 
-    @init { enterRule(); 
-    }
-    @after { leaveRule(); }:
-(	otherlv_0='RequiredRole' 
-    {
-    	newLeafNode(otherlv_0, grammarAccess.getRequiredRoleAccess().getRequiredRoleKeyword_0());
-    }
-(
-(
-		{
-			if ($current==null) {
-	            $current = createModelElement(grammarAccess.getRequiredRoleRule());
-	        }
-        }
-		{ 
-	        newCompositeNode(grammarAccess.getRequiredRoleAccess().getInterfaceInterfaceCrossReference_1_0()); 
-	    }
-		ruleEString		{ 
-	        afterParserOrEnumRuleCall();
-	    }
-
-)
-)(	otherlv_2=',' 
-    {
-    	newLeafNode(otherlv_2, grammarAccess.getRequiredRoleAccess().getCommaKeyword_2());
-    }
-)?)
-;
-
-
-
-
-
-// Entry rule entryRuleBasicComponent
-entryRuleBasicComponent returns [EObject current=null] 
-	:
-	{ newCompositeNode(grammarAccess.getBasicComponentRule()); }
-	 iv_ruleBasicComponent=ruleBasicComponent 
-	 { $current=$iv_ruleBasicComponent.current; } 
-	 EOF 
-;
-
-// Rule BasicComponent
-ruleBasicComponent returns [EObject current=null] 
-    @init { enterRule(); 
-    }
-    @after { leaveRule(); }:
-(	otherlv_0='BasicComponent' 
-    {
-    	newLeafNode(otherlv_0, grammarAccess.getBasicComponentAccess().getBasicComponentKeyword_0());
-    }
-(
-(
-		{ 
-	        newCompositeNode(grammarAccess.getBasicComponentAccess().getNameEStringParserRuleCall_1_0()); 
-	    }
-		lv_name_1_0=ruleEString		{
-	        if ($current==null) {
-	            $current = createModelElementForParent(grammarAccess.getBasicComponentRule());
-	        }
-       		set(
-       			$current, 
-       			"name",
-        		lv_name_1_0, 
-        		"EString");
-	        afterParserOrEnumRuleCall();
-	    }
-
-)
-)((
-(
-		{ 
-	        newCompositeNode(grammarAccess.getBasicComponentAccess().getProvidedRolesProvidedRoleParserRuleCall_2_0_0()); 
-	    }
-		lv_providedRoles_2_0=ruleProvidedRole		{
-	        if ($current==null) {
-	            $current = createModelElementForParent(grammarAccess.getBasicComponentRule());
-	        }
-       		add(
-       			$current, 
-       			"providedRoles",
-        		lv_providedRoles_2_0, 
-        		"ProvidedRole");
-	        afterParserOrEnumRuleCall();
-	    }
-
-)
-)(	otherlv_3=',' 
-    {
-    	newLeafNode(otherlv_3, grammarAccess.getBasicComponentAccess().getCommaKeyword_2_1_0());
-    }
-(
-(
-		{ 
-	        newCompositeNode(grammarAccess.getBasicComponentAccess().getProvidedRolesProvidedRoleParserRuleCall_2_1_1_0()); 
-	    }
-		lv_providedRoles_4_0=ruleProvidedRole		{
-	        if ($current==null) {
-	            $current = createModelElementForParent(grammarAccess.getBasicComponentRule());
-	        }
-       		add(
-       			$current, 
-       			"providedRoles",
-        		lv_providedRoles_4_0, 
-        		"ProvidedRole");
-	        afterParserOrEnumRuleCall();
-	    }
-
-)
-))*)?((
-(
-		{ 
-	        newCompositeNode(grammarAccess.getBasicComponentAccess().getRequiredRolesRequiredRoleParserRuleCall_3_0_0()); 
-	    }
-		lv_requiredRoles_5_0=ruleRequiredRole		{
-	        if ($current==null) {
-	            $current = createModelElementForParent(grammarAccess.getBasicComponentRule());
-	        }
-       		add(
-       			$current, 
-       			"requiredRoles",
-        		lv_requiredRoles_5_0, 
-        		"RequiredRole");
-	        afterParserOrEnumRuleCall();
-	    }
-
-)
-)(	otherlv_6=',' 
-    {
-    	newLeafNode(otherlv_6, grammarAccess.getBasicComponentAccess().getCommaKeyword_3_1_0());
-    }
-(
-(
-		{ 
-	        newCompositeNode(grammarAccess.getBasicComponentAccess().getRequiredRolesRequiredRoleParserRuleCall_3_1_1_0()); 
-	    }
-		lv_requiredRoles_7_0=ruleRequiredRole		{
-	        if ($current==null) {
-	            $current = createModelElementForParent(grammarAccess.getBasicComponentRule());
-	        }
-       		add(
-       			$current, 
-       			"requiredRoles",
-        		lv_requiredRoles_7_0, 
-        		"RequiredRole");
-	        afterParserOrEnumRuleCall();
-	    }
-
-)
-))*)?	otherlv_8='{' 
-    {
-    	newLeafNode(otherlv_8, grammarAccess.getBasicComponentAccess().getLeftCurlyBracketKeyword_4());
-    }
-(	otherlv_9='relationship' 
-    {
-    	newLeafNode(otherlv_9, grammarAccess.getBasicComponentAccess().getRelationshipKeyword_5_0());
-    }
-	otherlv_10='(' 
-    {
-    	newLeafNode(otherlv_10, grammarAccess.getBasicComponentAccess().getLeftParenthesisKeyword_5_1());
-    }
-(
-(
-		{
-			if ($current==null) {
-	            $current = createModelElement(grammarAccess.getBasicComponentRule());
-	        }
-        }
-		{ 
-	        newCompositeNode(grammarAccess.getBasicComponentAccess().getRelationshipRelationshipCrossReference_5_2_0()); 
-	    }
-		ruleEString		{ 
-	        afterParserOrEnumRuleCall();
-	    }
-
-)
-)(	otherlv_12=',' 
-    {
-    	newLeafNode(otherlv_12, grammarAccess.getBasicComponentAccess().getCommaKeyword_5_3_0());
-    }
-(
-(
-		{
-			if ($current==null) {
-	            $current = createModelElement(grammarAccess.getBasicComponentRule());
-	        }
-        }
-		{ 
-	        newCompositeNode(grammarAccess.getBasicComponentAccess().getRelationshipRelationshipCrossReference_5_3_1_0()); 
-	    }
-		ruleEString		{ 
-	        afterParserOrEnumRuleCall();
-	    }
-
-)
-))*	otherlv_14=')' 
-    {
-    	newLeafNode(otherlv_14, grammarAccess.getBasicComponentAccess().getRightParenthesisKeyword_5_4());
-    }
-)?	otherlv_15='}' 
-    {
-    	newLeafNode(otherlv_15, grammarAccess.getBasicComponentAccess().getRightCurlyBracketKeyword_6());
-    }
-)
-;
-
-
-
-
-
-// Entry rule entryRuleCompositeComponent
-entryRuleCompositeComponent returns [EObject current=null] 
-	:
-	{ newCompositeNode(grammarAccess.getCompositeComponentRule()); }
-	 iv_ruleCompositeComponent=ruleCompositeComponent 
-	 { $current=$iv_ruleCompositeComponent.current; } 
-	 EOF 
-;
-
-// Rule CompositeComponent
-ruleCompositeComponent returns [EObject current=null] 
-    @init { enterRule(); 
-    }
-    @after { leaveRule(); }:
-(	otherlv_0='CompositeComponent' 
-    {
-    	newLeafNode(otherlv_0, grammarAccess.getCompositeComponentAccess().getCompositeComponentKeyword_0());
-    }
-(
-(
-		{ 
-	        newCompositeNode(grammarAccess.getCompositeComponentAccess().getNameEStringParserRuleCall_1_0()); 
-	    }
-		lv_name_1_0=ruleEString		{
-	        if ($current==null) {
-	            $current = createModelElementForParent(grammarAccess.getCompositeComponentRule());
-	        }
-       		set(
-       			$current, 
-       			"name",
-        		lv_name_1_0, 
-        		"EString");
-	        afterParserOrEnumRuleCall();
-	    }
-
-)
-)((
-(
-		{ 
-	        newCompositeNode(grammarAccess.getCompositeComponentAccess().getProvidedRolesProvidedRoleParserRuleCall_2_0_0()); 
-	    }
-		lv_providedRoles_2_0=ruleProvidedRole		{
-	        if ($current==null) {
-	            $current = createModelElementForParent(grammarAccess.getCompositeComponentRule());
-	        }
-       		add(
-       			$current, 
-       			"providedRoles",
-        		lv_providedRoles_2_0, 
-        		"ProvidedRole");
-	        afterParserOrEnumRuleCall();
-	    }
-
-)
-)(	otherlv_3=',' 
-    {
-    	newLeafNode(otherlv_3, grammarAccess.getCompositeComponentAccess().getCommaKeyword_2_1_0());
-    }
-(
-(
-		{ 
-	        newCompositeNode(grammarAccess.getCompositeComponentAccess().getProvidedRolesProvidedRoleParserRuleCall_2_1_1_0()); 
-	    }
-		lv_providedRoles_4_0=ruleProvidedRole		{
-	        if ($current==null) {
-	            $current = createModelElementForParent(grammarAccess.getCompositeComponentRule());
-	        }
-       		add(
-       			$current, 
-       			"providedRoles",
-        		lv_providedRoles_4_0, 
-        		"ProvidedRole");
-	        afterParserOrEnumRuleCall();
-	    }
-
-)
-))*)?((
-(
-		{ 
-	        newCompositeNode(grammarAccess.getCompositeComponentAccess().getRequiredRolesRequiredRoleParserRuleCall_3_0_0()); 
-	    }
-		lv_requiredRoles_5_0=ruleRequiredRole		{
-	        if ($current==null) {
-	            $current = createModelElementForParent(grammarAccess.getCompositeComponentRule());
-	        }
-       		add(
-       			$current, 
-       			"requiredRoles",
-        		lv_requiredRoles_5_0, 
-        		"RequiredRole");
-	        afterParserOrEnumRuleCall();
-	    }
-
-)
-)(	otherlv_6=',' 
-    {
-    	newLeafNode(otherlv_6, grammarAccess.getCompositeComponentAccess().getCommaKeyword_3_1_0());
-    }
-(
-(
-		{ 
-	        newCompositeNode(grammarAccess.getCompositeComponentAccess().getRequiredRolesRequiredRoleParserRuleCall_3_1_1_0()); 
-	    }
-		lv_requiredRoles_7_0=ruleRequiredRole		{
-	        if ($current==null) {
-	            $current = createModelElementForParent(grammarAccess.getCompositeComponentRule());
-	        }
-       		add(
-       			$current, 
-       			"requiredRoles",
-        		lv_requiredRoles_7_0, 
-        		"RequiredRole");
-	        afterParserOrEnumRuleCall();
-	    }
-
-)
-))*)?	otherlv_8='{' 
-    {
-    	newLeafNode(otherlv_8, grammarAccess.getCompositeComponentAccess().getLeftCurlyBracketKeyword_4());
-    }
-(	otherlv_9='relationship' 
-    {
-    	newLeafNode(otherlv_9, grammarAccess.getCompositeComponentAccess().getRelationshipKeyword_5_0());
-    }
-	otherlv_10='(' 
-    {
-    	newLeafNode(otherlv_10, grammarAccess.getCompositeComponentAccess().getLeftParenthesisKeyword_5_1());
-    }
-(
-(
-		{
-			if ($current==null) {
-	            $current = createModelElement(grammarAccess.getCompositeComponentRule());
-	        }
-        }
-		{ 
-	        newCompositeNode(grammarAccess.getCompositeComponentAccess().getRelationshipRelationshipCrossReference_5_2_0()); 
-	    }
-		ruleEString		{ 
-	        afterParserOrEnumRuleCall();
-	    }
-
-)
-)(	otherlv_12=',' 
-    {
-    	newLeafNode(otherlv_12, grammarAccess.getCompositeComponentAccess().getCommaKeyword_5_3_0());
-    }
-(
-(
-		{
-			if ($current==null) {
-	            $current = createModelElement(grammarAccess.getCompositeComponentRule());
-	        }
-        }
-		{ 
-	        newCompositeNode(grammarAccess.getCompositeComponentAccess().getRelationshipRelationshipCrossReference_5_3_1_0()); 
-	    }
-		ruleEString		{ 
-	        afterParserOrEnumRuleCall();
-	    }
-
-)
-))*	otherlv_14=')' 
-    {
-    	newLeafNode(otherlv_14, grammarAccess.getCompositeComponentAccess().getRightParenthesisKeyword_5_4());
-    }
-)?(	otherlv_15='assembly' 
-    {
-    	newLeafNode(otherlv_15, grammarAccess.getCompositeComponentAccess().getAssemblyKeyword_6_0());
-    }
-(
-(
-		{ 
-	        newCompositeNode(grammarAccess.getCompositeComponentAccess().getAssemblyComposedStructureAssemblyParserRuleCall_6_1_0()); 
-	    }
-		lv_assembly_16_0=ruleComposedStructureAssembly		{
-	        if ($current==null) {
-	            $current = createModelElementForParent(grammarAccess.getCompositeComponentRule());
-	        }
-       		set(
-       			$current, 
-       			"assembly",
-        		lv_assembly_16_0, 
-        		"ComposedStructureAssembly");
-	        afterParserOrEnumRuleCall();
-	    }
-
-)
-))?	otherlv_17='}' 
-    {
-    	newLeafNode(otherlv_17, grammarAccess.getCompositeComponentAccess().getRightCurlyBracketKeyword_7());
-    }
-)
-;
-
-
-
-
-
-// Entry rule entryRuleSubSystem
-entryRuleSubSystem returns [EObject current=null] 
-	:
-	{ newCompositeNode(grammarAccess.getSubSystemRule()); }
-	 iv_ruleSubSystem=ruleSubSystem 
-	 { $current=$iv_ruleSubSystem.current; } 
-	 EOF 
-;
-
-// Rule SubSystem
-ruleSubSystem returns [EObject current=null] 
-    @init { enterRule(); 
-    }
-    @after { leaveRule(); }:
-(	otherlv_0='SubSystem' 
-    {
-    	newLeafNode(otherlv_0, grammarAccess.getSubSystemAccess().getSubSystemKeyword_0());
-    }
-(
-(
-		{ 
-	        newCompositeNode(grammarAccess.getSubSystemAccess().getNameEStringParserRuleCall_1_0()); 
-	    }
-		lv_name_1_0=ruleEString		{
-	        if ($current==null) {
-	            $current = createModelElementForParent(grammarAccess.getSubSystemRule());
-	        }
-       		set(
-       			$current, 
-       			"name",
-        		lv_name_1_0, 
-        		"EString");
-	        afterParserOrEnumRuleCall();
-	    }
-
-)
-)(	otherlv_2='providedRoles' 
-    {
-    	newLeafNode(otherlv_2, grammarAccess.getSubSystemAccess().getProvidedRolesKeyword_2_0());
-    }
-	otherlv_3='{' 
-    {
-    	newLeafNode(otherlv_3, grammarAccess.getSubSystemAccess().getLeftCurlyBracketKeyword_2_1());
-    }
-(
-(
-		{ 
-	        newCompositeNode(grammarAccess.getSubSystemAccess().getProvidedRolesProvidedRoleParserRuleCall_2_2_0()); 
-	    }
-		lv_providedRoles_4_0=ruleProvidedRole		{
-	        if ($current==null) {
-	            $current = createModelElementForParent(grammarAccess.getSubSystemRule());
-	        }
-       		add(
-       			$current, 
-       			"providedRoles",
-        		lv_providedRoles_4_0, 
-        		"ProvidedRole");
-	        afterParserOrEnumRuleCall();
-	    }
-
-)
-)(	otherlv_5=',' 
-    {
-    	newLeafNode(otherlv_5, grammarAccess.getSubSystemAccess().getCommaKeyword_2_3_0());
-    }
-(
-(
-		{ 
-	        newCompositeNode(grammarAccess.getSubSystemAccess().getProvidedRolesProvidedRoleParserRuleCall_2_3_1_0()); 
-	    }
-		lv_providedRoles_6_0=ruleProvidedRole		{
-	        if ($current==null) {
-	            $current = createModelElementForParent(grammarAccess.getSubSystemRule());
-	        }
-       		add(
-       			$current, 
-       			"providedRoles",
-        		lv_providedRoles_6_0, 
-        		"ProvidedRole");
-	        afterParserOrEnumRuleCall();
-	    }
-
-)
-))*	otherlv_7='}' 
-    {
-    	newLeafNode(otherlv_7, grammarAccess.getSubSystemAccess().getRightCurlyBracketKeyword_2_4());
-    }
-)?(	otherlv_8='requiredRoles' 
-    {
-    	newLeafNode(otherlv_8, grammarAccess.getSubSystemAccess().getRequiredRolesKeyword_3_0());
-    }
-	otherlv_9='{' 
-    {
-    	newLeafNode(otherlv_9, grammarAccess.getSubSystemAccess().getLeftCurlyBracketKeyword_3_1());
-    }
-(
-(
-		{ 
-	        newCompositeNode(grammarAccess.getSubSystemAccess().getRequiredRolesRequiredRoleParserRuleCall_3_2_0()); 
-	    }
-		lv_requiredRoles_10_0=ruleRequiredRole		{
-	        if ($current==null) {
-	            $current = createModelElementForParent(grammarAccess.getSubSystemRule());
-	        }
-       		add(
-       			$current, 
-       			"requiredRoles",
-        		lv_requiredRoles_10_0, 
-        		"RequiredRole");
-	        afterParserOrEnumRuleCall();
-	    }
-
-)
-)(	otherlv_11=',' 
-    {
-    	newLeafNode(otherlv_11, grammarAccess.getSubSystemAccess().getCommaKeyword_3_3_0());
-    }
-(
-(
-		{ 
-	        newCompositeNode(grammarAccess.getSubSystemAccess().getRequiredRolesRequiredRoleParserRuleCall_3_3_1_0()); 
-	    }
-		lv_requiredRoles_12_0=ruleRequiredRole		{
-	        if ($current==null) {
-	            $current = createModelElementForParent(grammarAccess.getSubSystemRule());
-	        }
-       		add(
-       			$current, 
-       			"requiredRoles",
-        		lv_requiredRoles_12_0, 
-        		"RequiredRole");
-	        afterParserOrEnumRuleCall();
-	    }
-
-)
-))*	otherlv_13='}' 
-    {
-    	newLeafNode(otherlv_13, grammarAccess.getSubSystemAccess().getRightCurlyBracketKeyword_3_4());
-    }
-)?	otherlv_14='{' 
-    {
-    	newLeafNode(otherlv_14, grammarAccess.getSubSystemAccess().getLeftCurlyBracketKeyword_4());
-    }
-(	otherlv_15='relationship' 
-    {
-    	newLeafNode(otherlv_15, grammarAccess.getSubSystemAccess().getRelationshipKeyword_5_0());
-    }
-	otherlv_16='(' 
-    {
-    	newLeafNode(otherlv_16, grammarAccess.getSubSystemAccess().getLeftParenthesisKeyword_5_1());
-    }
-(
-(
-		{
-			if ($current==null) {
-	            $current = createModelElement(grammarAccess.getSubSystemRule());
-	        }
-        }
-		{ 
-	        newCompositeNode(grammarAccess.getSubSystemAccess().getRelationshipRelationshipCrossReference_5_2_0()); 
-	    }
-		ruleEString		{ 
-	        afterParserOrEnumRuleCall();
-	    }
-
-)
-)(	otherlv_18=',' 
-    {
-    	newLeafNode(otherlv_18, grammarAccess.getSubSystemAccess().getCommaKeyword_5_3_0());
-    }
-(
-(
-		{
-			if ($current==null) {
-	            $current = createModelElement(grammarAccess.getSubSystemRule());
-	        }
-        }
-		{ 
-	        newCompositeNode(grammarAccess.getSubSystemAccess().getRelationshipRelationshipCrossReference_5_3_1_0()); 
-	    }
-		ruleEString		{ 
-	        afterParserOrEnumRuleCall();
-	    }
-
-)
-))*	otherlv_20=')' 
-    {
-    	newLeafNode(otherlv_20, grammarAccess.getSubSystemAccess().getRightParenthesisKeyword_5_4());
-    }
-)?(	otherlv_21='assembly' 
-    {
-    	newLeafNode(otherlv_21, grammarAccess.getSubSystemAccess().getAssemblyKeyword_6_0());
-    }
-(
-(
-		{ 
-	        newCompositeNode(grammarAccess.getSubSystemAccess().getAssemblyComposedStructureAssemblyParserRuleCall_6_1_0()); 
-	    }
-		lv_assembly_22_0=ruleComposedStructureAssembly		{
-	        if ($current==null) {
-	            $current = createModelElementForParent(grammarAccess.getSubSystemRule());
-	        }
-       		set(
-       			$current, 
-       			"assembly",
-        		lv_assembly_22_0, 
-        		"ComposedStructureAssembly");
-	        afterParserOrEnumRuleCall();
-	    }
-
-)
-))?	otherlv_23='}' 
-    {
-    	newLeafNode(otherlv_23, grammarAccess.getSubSystemAccess().getRightCurlyBracketKeyword_7());
-    }
-)
-;
-
-
-
-
-
-// Entry rule entryRuleComposedStructureAssembly
-entryRuleComposedStructureAssembly returns [EObject current=null] 
-	:
-	{ newCompositeNode(grammarAccess.getComposedStructureAssemblyRule()); }
-	 iv_ruleComposedStructureAssembly=ruleComposedStructureAssembly 
-	 { $current=$iv_ruleComposedStructureAssembly.current; } 
-	 EOF 
-;
-
-// Rule ComposedStructureAssembly
-ruleComposedStructureAssembly returns [EObject current=null] 
-    @init { enterRule(); 
-    }
-    @after { leaveRule(); }:
-((
-    {
-        $current = forceCreateModelElement(
-            grammarAccess.getComposedStructureAssemblyAccess().getComposedStructureAssemblyAction_0(),
-            $current);
-    }
-)	otherlv_1='ComposedStructureAssembly' 
-    {
-    	newLeafNode(otherlv_1, grammarAccess.getComposedStructureAssemblyAccess().getComposedStructureAssemblyKeyword_1());
-    }
-	otherlv_2='{' 
-    {
-    	newLeafNode(otherlv_2, grammarAccess.getComposedStructureAssemblyAccess().getLeftCurlyBracketKeyword_2());
-    }
-(	otherlv_3='assemblyContexts' 
-    {
-    	newLeafNode(otherlv_3, grammarAccess.getComposedStructureAssemblyAccess().getAssemblyContextsKeyword_3_0());
-    }
-	otherlv_4='{' 
-    {
-    	newLeafNode(otherlv_4, grammarAccess.getComposedStructureAssemblyAccess().getLeftCurlyBracketKeyword_3_1());
-    }
-(
-(
-		{ 
-	        newCompositeNode(grammarAccess.getComposedStructureAssemblyAccess().getAssemblyContextsAssemblyContextParserRuleCall_3_2_0()); 
-	    }
-		lv_assemblyContexts_5_0=ruleAssemblyContext		{
-	        if ($current==null) {
-	            $current = createModelElementForParent(grammarAccess.getComposedStructureAssemblyRule());
-	        }
-       		add(
-       			$current, 
-       			"assemblyContexts",
-        		lv_assemblyContexts_5_0, 
-        		"AssemblyContext");
-	        afterParserOrEnumRuleCall();
-	    }
-
-)
-)(	otherlv_6=',' 
-    {
-    	newLeafNode(otherlv_6, grammarAccess.getComposedStructureAssemblyAccess().getCommaKeyword_3_3_0());
-    }
-(
-(
-		{ 
-	        newCompositeNode(grammarAccess.getComposedStructureAssemblyAccess().getAssemblyContextsAssemblyContextParserRuleCall_3_3_1_0()); 
-	    }
-		lv_assemblyContexts_7_0=ruleAssemblyContext		{
-	        if ($current==null) {
-	            $current = createModelElementForParent(grammarAccess.getComposedStructureAssemblyRule());
-	        }
-       		add(
-       			$current, 
-       			"assemblyContexts",
-        		lv_assemblyContexts_7_0, 
-        		"AssemblyContext");
-	        afterParserOrEnumRuleCall();
-	    }
-
-)
-))*	otherlv_8='}' 
-    {
-    	newLeafNode(otherlv_8, grammarAccess.getComposedStructureAssemblyAccess().getRightCurlyBracketKeyword_3_4());
-    }
-)?(	otherlv_9='assemblyConnectors' 
-    {
-    	newLeafNode(otherlv_9, grammarAccess.getComposedStructureAssemblyAccess().getAssemblyConnectorsKeyword_4_0());
-    }
-	otherlv_10='{' 
-    {
-    	newLeafNode(otherlv_10, grammarAccess.getComposedStructureAssemblyAccess().getLeftCurlyBracketKeyword_4_1());
-    }
-(
-(
-		{ 
-	        newCompositeNode(grammarAccess.getComposedStructureAssemblyAccess().getAssemblyConnectorsAssemblyConnectorParserRuleCall_4_2_0()); 
-	    }
-		lv_assemblyConnectors_11_0=ruleAssemblyConnector		{
-	        if ($current==null) {
-	            $current = createModelElementForParent(grammarAccess.getComposedStructureAssemblyRule());
-	        }
-       		add(
-       			$current, 
-       			"assemblyConnectors",
-        		lv_assemblyConnectors_11_0, 
-        		"AssemblyConnector");
-	        afterParserOrEnumRuleCall();
-	    }
-
-)
-)(	otherlv_12=',' 
-    {
-    	newLeafNode(otherlv_12, grammarAccess.getComposedStructureAssemblyAccess().getCommaKeyword_4_3_0());
-    }
-(
-(
-		{ 
-	        newCompositeNode(grammarAccess.getComposedStructureAssemblyAccess().getAssemblyConnectorsAssemblyConnectorParserRuleCall_4_3_1_0()); 
-	    }
-		lv_assemblyConnectors_13_0=ruleAssemblyConnector		{
-	        if ($current==null) {
-	            $current = createModelElementForParent(grammarAccess.getComposedStructureAssemblyRule());
-	        }
-       		add(
-       			$current, 
-       			"assemblyConnectors",
-        		lv_assemblyConnectors_13_0, 
-        		"AssemblyConnector");
-	        afterParserOrEnumRuleCall();
-	    }
-
-)
-))*	otherlv_14='}' 
-    {
-    	newLeafNode(otherlv_14, grammarAccess.getComposedStructureAssemblyAccess().getRightCurlyBracketKeyword_4_4());
-    }
-)?(	otherlv_15='providedDelegationConnectors' 
-    {
-    	newLeafNode(otherlv_15, grammarAccess.getComposedStructureAssemblyAccess().getProvidedDelegationConnectorsKeyword_5_0());
-    }
-	otherlv_16='{' 
-    {
-    	newLeafNode(otherlv_16, grammarAccess.getComposedStructureAssemblyAccess().getLeftCurlyBracketKeyword_5_1());
-    }
-(
-(
-		{ 
-	        newCompositeNode(grammarAccess.getComposedStructureAssemblyAccess().getProvidedDelegationConnectorsProvidedDelegationConnectorParserRuleCall_5_2_0()); 
-	    }
-		lv_providedDelegationConnectors_17_0=ruleProvidedDelegationConnector		{
-	        if ($current==null) {
-	            $current = createModelElementForParent(grammarAccess.getComposedStructureAssemblyRule());
-	        }
-       		add(
-       			$current, 
-       			"providedDelegationConnectors",
-        		lv_providedDelegationConnectors_17_0, 
-        		"ProvidedDelegationConnector");
-	        afterParserOrEnumRuleCall();
-	    }
-
-)
-)(	otherlv_18=',' 
-    {
-    	newLeafNode(otherlv_18, grammarAccess.getComposedStructureAssemblyAccess().getCommaKeyword_5_3_0());
-    }
-(
-(
-		{ 
-	        newCompositeNode(grammarAccess.getComposedStructureAssemblyAccess().getProvidedDelegationConnectorsProvidedDelegationConnectorParserRuleCall_5_3_1_0()); 
-	    }
-		lv_providedDelegationConnectors_19_0=ruleProvidedDelegationConnector		{
-	        if ($current==null) {
-	            $current = createModelElementForParent(grammarAccess.getComposedStructureAssemblyRule());
-	        }
-       		add(
-       			$current, 
-       			"providedDelegationConnectors",
-        		lv_providedDelegationConnectors_19_0, 
-        		"ProvidedDelegationConnector");
-	        afterParserOrEnumRuleCall();
-	    }
-
-)
-))*	otherlv_20='}' 
-    {
-    	newLeafNode(otherlv_20, grammarAccess.getComposedStructureAssemblyAccess().getRightCurlyBracketKeyword_5_4());
-    }
-)?(	otherlv_21='requiredDelegationConnectors' 
-    {
-    	newLeafNode(otherlv_21, grammarAccess.getComposedStructureAssemblyAccess().getRequiredDelegationConnectorsKeyword_6_0());
-    }
-	otherlv_22='{' 
-    {
-    	newLeafNode(otherlv_22, grammarAccess.getComposedStructureAssemblyAccess().getLeftCurlyBracketKeyword_6_1());
-    }
-(
-(
-		{ 
-	        newCompositeNode(grammarAccess.getComposedStructureAssemblyAccess().getRequiredDelegationConnectorsRequiredDelegationConnectorParserRuleCall_6_2_0()); 
-	    }
-		lv_requiredDelegationConnectors_23_0=ruleRequiredDelegationConnector		{
-	        if ($current==null) {
-	            $current = createModelElementForParent(grammarAccess.getComposedStructureAssemblyRule());
-	        }
-       		add(
-       			$current, 
-       			"requiredDelegationConnectors",
-        		lv_requiredDelegationConnectors_23_0, 
-        		"RequiredDelegationConnector");
-	        afterParserOrEnumRuleCall();
-	    }
-
-)
-)(	otherlv_24=',' 
-    {
-    	newLeafNode(otherlv_24, grammarAccess.getComposedStructureAssemblyAccess().getCommaKeyword_6_3_0());
-    }
-(
-(
-		{ 
-	        newCompositeNode(grammarAccess.getComposedStructureAssemblyAccess().getRequiredDelegationConnectorsRequiredDelegationConnectorParserRuleCall_6_3_1_0()); 
-	    }
-		lv_requiredDelegationConnectors_25_0=ruleRequiredDelegationConnector		{
-	        if ($current==null) {
-	            $current = createModelElementForParent(grammarAccess.getComposedStructureAssemblyRule());
-	        }
-       		add(
-       			$current, 
-       			"requiredDelegationConnectors",
-        		lv_requiredDelegationConnectors_25_0, 
-        		"RequiredDelegationConnector");
-	        afterParserOrEnumRuleCall();
-	    }
-
-)
-))*	otherlv_26='}' 
-    {
-    	newLeafNode(otherlv_26, grammarAccess.getComposedStructureAssemblyAccess().getRightCurlyBracketKeyword_6_4());
-    }
-)?	otherlv_27='}' 
-    {
-    	newLeafNode(otherlv_27, grammarAccess.getComposedStructureAssemblyAccess().getRightCurlyBracketKeyword_7());
-    }
-)
-;
-
-
-
-
-
-// Entry rule entryRuleAssemblyContext
-entryRuleAssemblyContext returns [EObject current=null] 
-	:
-	{ newCompositeNode(grammarAccess.getAssemblyContextRule()); }
-	 iv_ruleAssemblyContext=ruleAssemblyContext 
-	 { $current=$iv_ruleAssemblyContext.current; } 
-	 EOF 
-;
-
-// Rule AssemblyContext
-ruleAssemblyContext returns [EObject current=null] 
-    @init { enterRule(); 
-    }
-    @after { leaveRule(); }:
-(	otherlv_0='AssemblyContext' 
-    {
-    	newLeafNode(otherlv_0, grammarAccess.getAssemblyContextAccess().getAssemblyContextKeyword_0());
-    }
-(
-(
-		{ 
-	        newCompositeNode(grammarAccess.getAssemblyContextAccess().getNameEStringParserRuleCall_1_0()); 
-	    }
-		lv_name_1_0=ruleEString		{
-	        if ($current==null) {
-	            $current = createModelElementForParent(grammarAccess.getAssemblyContextRule());
-	        }
-       		set(
-       			$current, 
-       			"name",
-        		lv_name_1_0, 
-        		"EString");
-	        afterParserOrEnumRuleCall();
-	    }
-
-)
-)	otherlv_2='{' 
-    {
-    	newLeafNode(otherlv_2, grammarAccess.getAssemblyContextAccess().getLeftCurlyBracketKeyword_2());
-    }
-	otherlv_3='encapsulatedComponent' 
-    {
-    	newLeafNode(otherlv_3, grammarAccess.getAssemblyContextAccess().getEncapsulatedComponentKeyword_3());
-    }
-(
-(
-		{
-			if ($current==null) {
-	            $current = createModelElement(grammarAccess.getAssemblyContextRule());
-	        }
-        }
-		{ 
-	        newCompositeNode(grammarAccess.getAssemblyContextAccess().getEncapsulatedComponentRepositoryComponentCrossReference_4_0()); 
-	    }
-		ruleEString		{ 
-	        afterParserOrEnumRuleCall();
-	    }
-
-)
-)	otherlv_5='}' 
-    {
-    	newLeafNode(otherlv_5, grammarAccess.getAssemblyContextAccess().getRightCurlyBracketKeyword_5());
-    }
-)
-;
-
-
-
-
-
-// Entry rule entryRuleAssemblyConnector
-entryRuleAssemblyConnector returns [EObject current=null] 
-	:
-	{ newCompositeNode(grammarAccess.getAssemblyConnectorRule()); }
-	 iv_ruleAssemblyConnector=ruleAssemblyConnector 
-	 { $current=$iv_ruleAssemblyConnector.current; } 
-	 EOF 
-;
-
-// Rule AssemblyConnector
-ruleAssemblyConnector returns [EObject current=null] 
-    @init { enterRule(); 
-    }
-    @after { leaveRule(); }:
-(	otherlv_0='AssemblyConnector' 
-    {
-    	newLeafNode(otherlv_0, grammarAccess.getAssemblyConnectorAccess().getAssemblyConnectorKeyword_0());
-    }
-(
-(
-		{ 
-	        newCompositeNode(grammarAccess.getAssemblyConnectorAccess().getNameEStringParserRuleCall_1_0()); 
-	    }
-		lv_name_1_0=ruleEString		{
-	        if ($current==null) {
-	            $current = createModelElementForParent(grammarAccess.getAssemblyConnectorRule());
-	        }
-       		set(
-       			$current, 
-       			"name",
-        		lv_name_1_0, 
-        		"EString");
-	        afterParserOrEnumRuleCall();
-	    }
-
-)
-)	otherlv_2='{' 
-    {
-    	newLeafNode(otherlv_2, grammarAccess.getAssemblyConnectorAccess().getLeftCurlyBracketKeyword_2());
-    }
-	otherlv_3='requiredRole' 
-    {
-    	newLeafNode(otherlv_3, grammarAccess.getAssemblyConnectorAccess().getRequiredRoleKeyword_3());
-    }
-(
-(
-		{
-			if ($current==null) {
-	            $current = createModelElement(grammarAccess.getAssemblyConnectorRule());
-	        }
-        }
-		{ 
-	        newCompositeNode(grammarAccess.getAssemblyConnectorAccess().getRequiredRoleRequiredRoleCrossReference_4_0()); 
-	    }
-		ruleEString		{ 
-	        afterParserOrEnumRuleCall();
-	    }
-
-)
-)	otherlv_5='providedRole' 
-    {
-    	newLeafNode(otherlv_5, grammarAccess.getAssemblyConnectorAccess().getProvidedRoleKeyword_5());
-    }
-(
-(
-		{
-			if ($current==null) {
-	            $current = createModelElement(grammarAccess.getAssemblyConnectorRule());
-	        }
-        }
-		{ 
-	        newCompositeNode(grammarAccess.getAssemblyConnectorAccess().getProvidedRoleProvidedRoleCrossReference_6_0()); 
-	    }
-		ruleEString		{ 
-	        afterParserOrEnumRuleCall();
-	    }
-
-)
-)	otherlv_7='providingAssemblyContext' 
-    {
-    	newLeafNode(otherlv_7, grammarAccess.getAssemblyConnectorAccess().getProvidingAssemblyContextKeyword_7());
-    }
-(
-(
-		{
-			if ($current==null) {
-	            $current = createModelElement(grammarAccess.getAssemblyConnectorRule());
-	        }
-        }
-		{ 
-	        newCompositeNode(grammarAccess.getAssemblyConnectorAccess().getProvidingAssemblyContextAssemblyContextCrossReference_8_0()); 
-	    }
-		ruleEString		{ 
-	        afterParserOrEnumRuleCall();
-	    }
-
-)
-)	otherlv_9='requiringAssemblyContext' 
-    {
-    	newLeafNode(otherlv_9, grammarAccess.getAssemblyConnectorAccess().getRequiringAssemblyContextKeyword_9());
-    }
-(
-(
-		{
-			if ($current==null) {
-	            $current = createModelElement(grammarAccess.getAssemblyConnectorRule());
-	        }
-        }
-		{ 
-	        newCompositeNode(grammarAccess.getAssemblyConnectorAccess().getRequiringAssemblyContextAssemblyContextCrossReference_10_0()); 
-	    }
-		ruleEString		{ 
-	        afterParserOrEnumRuleCall();
-	    }
-
-)
-)	otherlv_11='}' 
-    {
-    	newLeafNode(otherlv_11, grammarAccess.getAssemblyConnectorAccess().getRightCurlyBracketKeyword_11());
-    }
-)
-;
-
-
-
-
-
-// Entry rule entryRuleProvidedDelegationConnector
-entryRuleProvidedDelegationConnector returns [EObject current=null] 
-	:
-	{ newCompositeNode(grammarAccess.getProvidedDelegationConnectorRule()); }
-	 iv_ruleProvidedDelegationConnector=ruleProvidedDelegationConnector 
-	 { $current=$iv_ruleProvidedDelegationConnector.current; } 
-	 EOF 
-;
-
-// Rule ProvidedDelegationConnector
-ruleProvidedDelegationConnector returns [EObject current=null] 
-    @init { enterRule(); 
-    }
-    @after { leaveRule(); }:
-(	otherlv_0='ProvidedDelegationConnector' 
-    {
-    	newLeafNode(otherlv_0, grammarAccess.getProvidedDelegationConnectorAccess().getProvidedDelegationConnectorKeyword_0());
-    }
-(
-(
-		{ 
-	        newCompositeNode(grammarAccess.getProvidedDelegationConnectorAccess().getNameEStringParserRuleCall_1_0()); 
-	    }
-		lv_name_1_0=ruleEString		{
-	        if ($current==null) {
-	            $current = createModelElementForParent(grammarAccess.getProvidedDelegationConnectorRule());
-	        }
-       		set(
-       			$current, 
-       			"name",
-        		lv_name_1_0, 
-        		"EString");
-	        afterParserOrEnumRuleCall();
-	    }
-
-)
-)	otherlv_2='{' 
-    {
-    	newLeafNode(otherlv_2, grammarAccess.getProvidedDelegationConnectorAccess().getLeftCurlyBracketKeyword_2());
-    }
-	otherlv_3='assemblyContext' 
-    {
-    	newLeafNode(otherlv_3, grammarAccess.getProvidedDelegationConnectorAccess().getAssemblyContextKeyword_3());
-    }
-(
-(
-		{
-			if ($current==null) {
-	            $current = createModelElement(grammarAccess.getProvidedDelegationConnectorRule());
-	        }
-        }
-		{ 
-	        newCompositeNode(grammarAccess.getProvidedDelegationConnectorAccess().getAssemblyContextAssemblyContextCrossReference_4_0()); 
-	    }
-		ruleEString		{ 
-	        afterParserOrEnumRuleCall();
-	    }
-
-)
-)	otherlv_5='innerProvidedRole' 
-    {
-    	newLeafNode(otherlv_5, grammarAccess.getProvidedDelegationConnectorAccess().getInnerProvidedRoleKeyword_5());
-    }
-(
-(
-		{
-			if ($current==null) {
-	            $current = createModelElement(grammarAccess.getProvidedDelegationConnectorRule());
-	        }
-        }
-		{ 
-	        newCompositeNode(grammarAccess.getProvidedDelegationConnectorAccess().getInnerProvidedRoleProvidedRoleCrossReference_6_0()); 
-	    }
-		ruleEString		{ 
-	        afterParserOrEnumRuleCall();
-	    }
-
-)
-)	otherlv_7='outerProvidedRole' 
-    {
-    	newLeafNode(otherlv_7, grammarAccess.getProvidedDelegationConnectorAccess().getOuterProvidedRoleKeyword_7());
-    }
-(
-(
-		{
-			if ($current==null) {
-	            $current = createModelElement(grammarAccess.getProvidedDelegationConnectorRule());
-	        }
-        }
-		{ 
-	        newCompositeNode(grammarAccess.getProvidedDelegationConnectorAccess().getOuterProvidedRoleProvidedRoleCrossReference_8_0()); 
-	    }
-		ruleEString		{ 
-	        afterParserOrEnumRuleCall();
-	    }
-
-)
-)	otherlv_9='}' 
-    {
-    	newLeafNode(otherlv_9, grammarAccess.getProvidedDelegationConnectorAccess().getRightCurlyBracketKeyword_9());
-    }
-)
-;
-
-
-
-
-
-// Entry rule entryRuleRequiredDelegationConnector
-entryRuleRequiredDelegationConnector returns [EObject current=null] 
-	:
-	{ newCompositeNode(grammarAccess.getRequiredDelegationConnectorRule()); }
-	 iv_ruleRequiredDelegationConnector=ruleRequiredDelegationConnector 
-	 { $current=$iv_ruleRequiredDelegationConnector.current; } 
-	 EOF 
-;
-
-// Rule RequiredDelegationConnector
-ruleRequiredDelegationConnector returns [EObject current=null] 
-    @init { enterRule(); 
-    }
-    @after { leaveRule(); }:
-(	otherlv_0='RequiredDelegationConnector' 
-    {
-    	newLeafNode(otherlv_0, grammarAccess.getRequiredDelegationConnectorAccess().getRequiredDelegationConnectorKeyword_0());
-    }
-(
-(
-		{ 
-	        newCompositeNode(grammarAccess.getRequiredDelegationConnectorAccess().getNameEStringParserRuleCall_1_0()); 
-	    }
-		lv_name_1_0=ruleEString		{
-	        if ($current==null) {
-	            $current = createModelElementForParent(grammarAccess.getRequiredDelegationConnectorRule());
-	        }
-       		set(
-       			$current, 
-       			"name",
-        		lv_name_1_0, 
-        		"EString");
-	        afterParserOrEnumRuleCall();
-	    }
-
-)
-)	otherlv_2='{' 
-    {
-    	newLeafNode(otherlv_2, grammarAccess.getRequiredDelegationConnectorAccess().getLeftCurlyBracketKeyword_2());
-    }
-	otherlv_3='assemblyContext' 
-    {
-    	newLeafNode(otherlv_3, grammarAccess.getRequiredDelegationConnectorAccess().getAssemblyContextKeyword_3());
-    }
-(
-(
-		{
-			if ($current==null) {
-	            $current = createModelElement(grammarAccess.getRequiredDelegationConnectorRule());
-	        }
-        }
-		{ 
-	        newCompositeNode(grammarAccess.getRequiredDelegationConnectorAccess().getAssemblyContextAssemblyContextCrossReference_4_0()); 
-	    }
-		ruleEString		{ 
-	        afterParserOrEnumRuleCall();
-	    }
-
-)
-)	otherlv_5='innerRequiredRole' 
-    {
-    	newLeafNode(otherlv_5, grammarAccess.getRequiredDelegationConnectorAccess().getInnerRequiredRoleKeyword_5());
-    }
-(
-(
-		{
-			if ($current==null) {
-	            $current = createModelElement(grammarAccess.getRequiredDelegationConnectorRule());
-	        }
-        }
-		{ 
-	        newCompositeNode(grammarAccess.getRequiredDelegationConnectorAccess().getInnerRequiredRoleRequiredRoleCrossReference_6_0()); 
-	    }
-		ruleEString		{ 
-	        afterParserOrEnumRuleCall();
-	    }
-
-)
-)	otherlv_7='outerRequiredRole' 
-    {
-    	newLeafNode(otherlv_7, grammarAccess.getRequiredDelegationConnectorAccess().getOuterRequiredRoleKeyword_7());
-    }
-(
-(
-		{
-			if ($current==null) {
-	            $current = createModelElement(grammarAccess.getRequiredDelegationConnectorRule());
-	        }
-        }
-		{ 
-	        newCompositeNode(grammarAccess.getRequiredDelegationConnectorAccess().getOuterRequiredRoleRequiredRoleCrossReference_8_0()); 
-	    }
-		ruleEString		{ 
-	        afterParserOrEnumRuleCall();
-	    }
-
-)
-)	otherlv_9='}' 
-    {
-    	newLeafNode(otherlv_9, grammarAccess.getRequiredDelegationConnectorAccess().getRightCurlyBracketKeyword_9());
-    }
-)
-;
-
-
-
-
-
-// Rule PrimitiveTypeEnum
-rulePrimitiveTypeEnum returns [Enumerator current=null] 
-    @init { enterRule(); }
-    @after { leaveRule(); }:
-((	enumLiteral_0='INT' 
-	{
-        $current = grammarAccess.getPrimitiveTypeEnumAccess().getINTEnumLiteralDeclaration_0().getEnumLiteral().getInstance();
-        newLeafNode(enumLiteral_0, grammarAccess.getPrimitiveTypeEnumAccess().getINTEnumLiteralDeclaration_0()); 
-    }
-)
-    |(	enumLiteral_1='STRING' 
-	{
-        $current = grammarAccess.getPrimitiveTypeEnumAccess().getSTRINGEnumLiteralDeclaration_1().getEnumLiteral().getInstance();
-        newLeafNode(enumLiteral_1, grammarAccess.getPrimitiveTypeEnumAccess().getSTRINGEnumLiteralDeclaration_1()); 
-    }
-)
-    |(	enumLiteral_2='BOOL' 
-	{
-        $current = grammarAccess.getPrimitiveTypeEnumAccess().getBOOLEnumLiteralDeclaration_2().getEnumLiteral().getInstance();
-        newLeafNode(enumLiteral_2, grammarAccess.getPrimitiveTypeEnumAccess().getBOOLEnumLiteralDeclaration_2()); 
-    }
-)
-    |(	enumLiteral_3='DOUBLE' 
-	{
-        $current = grammarAccess.getPrimitiveTypeEnumAccess().getDOUBLEEnumLiteralDeclaration_3().getEnumLiteral().getInstance();
-        newLeafNode(enumLiteral_3, grammarAccess.getPrimitiveTypeEnumAccess().getDOUBLEEnumLiteralDeclaration_3()); 
-    }
-)
-    |(	enumLiteral_4='CHAR' 
-	{
-        $current = grammarAccess.getPrimitiveTypeEnumAccess().getCHAREnumLiteralDeclaration_4().getEnumLiteral().getInstance();
-        newLeafNode(enumLiteral_4, grammarAccess.getPrimitiveTypeEnumAccess().getCHAREnumLiteralDeclaration_4()); 
-    }
-)
-    |(	enumLiteral_5='BYTE' 
-	{
-        $current = grammarAccess.getPrimitiveTypeEnumAccess().getBYTEEnumLiteralDeclaration_5().getEnumLiteral().getInstance();
-        newLeafNode(enumLiteral_5, grammarAccess.getPrimitiveTypeEnumAccess().getBYTEEnumLiteralDeclaration_5()); 
-    }
-)
-    |(	enumLiteral_6='LONG' 
-	{
-        $current = grammarAccess.getPrimitiveTypeEnumAccess().getLONGEnumLiteralDeclaration_6().getEnumLiteral().getInstance();
-        newLeafNode(enumLiteral_6, grammarAccess.getPrimitiveTypeEnumAccess().getLONGEnumLiteralDeclaration_6()); 
-    }
-));
-
-
-
-RULE_ID : '^'? ('a'..'z'|'A'..'Z'|'_') ('a'..'z'|'A'..'Z'|'_'|'0'..'9')*;
-
-RULE_INT : ('0'..'9')+;
-
-RULE_STRING : ('"' ('\\' ('b'|'t'|'n'|'f'|'r'|'u'|'"'|'\''|'\\')|~(('\\'|'"')))* '"'|'\'' ('\\' ('b'|'t'|'n'|'f'|'r'|'u'|'"'|'\''|'\\')|~(('\\'|'\'')))* '\'');
-
-RULE_ML_COMMENT : '/*' ( options {greedy=false;} : . )*'*/';
-
-RULE_SL_COMMENT : '//' ~(('\n'|'\r'))* ('\r'? '\n')?;
-
-RULE_WS : (' '|'\t'|'\r'|'\n')+;
-
-RULE_ANY_OTHER : .;
-
-
diff --git a/org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.tokens b/org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.tokens
deleted file mode 100644
index f1b56586..00000000
--- a/org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.tokens
+++ /dev/null
@@ -1,133 +0,0 @@
-T__68=68
-T__69=69
-RULE_ID=4
-T__66=66
-T__67=67
-T__64=64
-T__29=29
-T__65=65
-T__28=28
-T__62=62
-T__27=27
-T__63=63
-T__26=26
-T__25=25
-T__24=24
-T__23=23
-T__22=22
-RULE_ANY_OTHER=10
-T__21=21
-T__20=20
-T__61=61
-T__60=60
-T__55=55
-T__56=56
-T__19=19
-T__57=57
-T__58=58
-T__51=51
-T__16=16
-T__52=52
-T__15=15
-T__53=53
-T__18=18
-T__54=54
-T__17=17
-T__12=12
-T__11=11
-T__14=14
-T__13=13
-T__59=59
-RULE_INT=6
-T__50=50
-T__42=42
-T__43=43
-T__40=40
-T__41=41
-T__46=46
-T__47=47
-T__44=44
-T__45=45
-T__48=48
-T__49=49
-RULE_SL_COMMENT=8
-RULE_ML_COMMENT=7
-T__30=30
-T__31=31
-RULE_STRING=5
-T__32=32
-T__71=71
-T__33=33
-T__72=72
-T__34=34
-T__35=35
-T__70=70
-T__36=36
-T__37=37
-T__38=38
-T__39=39
-RULE_WS=9
-T__73=73
-'requiredRole'=56
-'type'=37
-'DOUBLE'=70
-'providedRoles'=29
-'outerProvidedRole'=63
-'requiringAssemblyContext'=59
-';'=18
-'BasicComponent'=44
-'innerType'=32
-'CompositeComponent'=45
-'InnerDeclaration'=39
-'.'=21
-'imports'=13
-'import'=20
-'CompositeDataType'=33
-'components'=17
-'RequiredRole'=43
-'innerRequiredRole'=65
-'assembly'=46
-'encapsulatedComponent'=54
-'RequiredDelegationConnector'=64
-'{'=12
-'assemblyConnectors'=50
-'Interface'=23
-'void'=41
-'parentInterfaces'=24
-'('=25
-'ref'=38
-'innerProvidedRole'=62
-','=14
-'SubSystem'=47
-'BOOL'=69
-'INT'=67
-'ComposedStructureAssembly'=48
-'providedRole'=57
-'providingAssemblyContext'=58
-'relationship'=28
-'PrimitiveDataType'=36
-'assemblyContexts'=49
-'dataType'=40
-'requiredRoles'=30
-'Repository'=11
-'interfaces'=19
-'CHAR'=71
-')'=26
-'LONG'=73
-'outerRequiredRole'=66
-'parentTypes'=34
-'AssemblyContext'=53
-'innerDeclarations'=35
-'}'=15
-'datatypes'=16
-'AssemblyConnector'=55
-'ProvidedRole'=42
-'ProvidedDelegationConnector'=60
-'CollectionDataType'=31
-'STRING'=68
-'RepositoryComponent'=27
-'providedDelegationConnectors'=51
-'assemblyContext'=61
-'*'=22
-'BYTE'=72
-'requiredDelegationConnectors'=52
diff --git a/org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTestLexer.java b/org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTestLexer.java
deleted file mode 100644
index 77c23f5c..00000000
--- a/org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTestLexer.java
+++ /dev/null
@@ -1,3362 +0,0 @@
-package org.xtext.example.mydsl.parser.antlr.internal;
-
-// Hack: Use our own Lexer superclass by means of import. 
-// Currently there is no other way to specify the superclass for the lexer.
-import org.eclipse.xtext.parser.antlr.Lexer;
-
-
-import org.antlr.runtime.*;
-import java.util.Stack;
-import java.util.List;
-import java.util.ArrayList;
-
-@SuppressWarnings("all")
-public class InternalMyDslTestLexer extends Lexer {
-    public static final int T__68=68;
-    public static final int T__69=69;
-    public static final int RULE_ID=4;
-    public static final int T__66=66;
-    public static final int T__67=67;
-    public static final int T__29=29;
-    public static final int T__64=64;
-    public static final int T__28=28;
-    public static final int T__65=65;
-    public static final int T__27=27;
-    public static final int T__62=62;
-    public static final int T__26=26;
-    public static final int T__63=63;
-    public static final int T__25=25;
-    public static final int T__24=24;
-    public static final int T__23=23;
-    public static final int T__22=22;
-    public static final int RULE_ANY_OTHER=10;
-    public static final int T__21=21;
-    public static final int T__20=20;
-    public static final int T__61=61;
-    public static final int EOF=-1;
-    public static final int T__60=60;
-    public static final int T__55=55;
-    public static final int T__56=56;
-    public static final int T__19=19;
-    public static final int T__57=57;
-    public static final int T__58=58;
-    public static final int T__51=51;
-    public static final int T__16=16;
-    public static final int T__52=52;
-    public static final int T__15=15;
-    public static final int T__53=53;
-    public static final int T__18=18;
-    public static final int T__54=54;
-    public static final int T__17=17;
-    public static final int T__12=12;
-    public static final int T__11=11;
-    public static final int T__14=14;
-    public static final int T__13=13;
-    public static final int T__59=59;
-    public static final int RULE_INT=6;
-    public static final int T__50=50;
-    public static final int T__42=42;
-    public static final int T__43=43;
-    public static final int T__40=40;
-    public static final int T__41=41;
-    public static final int T__46=46;
-    public static final int T__47=47;
-    public static final int T__44=44;
-    public static final int T__45=45;
-    public static final int T__48=48;
-    public static final int T__49=49;
-    public static final int RULE_SL_COMMENT=8;
-    public static final int RULE_ML_COMMENT=7;
-    public static final int T__30=30;
-    public static final int T__31=31;
-    public static final int T__32=32;
-    public static final int RULE_STRING=5;
-    public static final int T__33=33;
-    public static final int T__71=71;
-    public static final int T__34=34;
-    public static final int T__72=72;
-    public static final int T__35=35;
-    public static final int T__36=36;
-    public static final int T__70=70;
-    public static final int T__37=37;
-    public static final int T__38=38;
-    public static final int T__39=39;
-    public static final int RULE_WS=9;
-    public static final int T__73=73;
-
-    // delegates
-    // delegators
-
-    public InternalMyDslTestLexer() {;} 
-    public InternalMyDslTestLexer(CharStream input) {
-        this(input, new RecognizerSharedState());
-    }
-    public InternalMyDslTestLexer(CharStream input, RecognizerSharedState state) {
-        super(input,state);
-
-    }
-    public String getGrammarFileName() { return "../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g"; }
-
-    // $ANTLR start "T__11"
-    public final void mT__11() throws RecognitionException {
-        try {
-            int _type = T__11;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:11:7: ( 'Repository' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:11:9: 'Repository'
-            {
-            match("Repository"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__11"
-
-    // $ANTLR start "T__12"
-    public final void mT__12() throws RecognitionException {
-        try {
-            int _type = T__12;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:12:7: ( '{' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:12:9: '{'
-            {
-            match('{'); 
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__12"
-
-    // $ANTLR start "T__13"
-    public final void mT__13() throws RecognitionException {
-        try {
-            int _type = T__13;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:13:7: ( 'imports' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:13:9: 'imports'
-            {
-            match("imports"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__13"
-
-    // $ANTLR start "T__14"
-    public final void mT__14() throws RecognitionException {
-        try {
-            int _type = T__14;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:14:7: ( ',' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:14:9: ','
-            {
-            match(','); 
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__14"
-
-    // $ANTLR start "T__15"
-    public final void mT__15() throws RecognitionException {
-        try {
-            int _type = T__15;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:15:7: ( '}' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:15:9: '}'
-            {
-            match('}'); 
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__15"
-
-    // $ANTLR start "T__16"
-    public final void mT__16() throws RecognitionException {
-        try {
-            int _type = T__16;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:16:7: ( 'datatypes' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:16:9: 'datatypes'
-            {
-            match("datatypes"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__16"
-
-    // $ANTLR start "T__17"
-    public final void mT__17() throws RecognitionException {
-        try {
-            int _type = T__17;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:17:7: ( 'components' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:17:9: 'components'
-            {
-            match("components"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__17"
-
-    // $ANTLR start "T__18"
-    public final void mT__18() throws RecognitionException {
-        try {
-            int _type = T__18;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:18:7: ( ';' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:18:9: ';'
-            {
-            match(';'); 
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__18"
-
-    // $ANTLR start "T__19"
-    public final void mT__19() throws RecognitionException {
-        try {
-            int _type = T__19;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:19:7: ( 'interfaces' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:19:9: 'interfaces'
-            {
-            match("interfaces"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__19"
-
-    // $ANTLR start "T__20"
-    public final void mT__20() throws RecognitionException {
-        try {
-            int _type = T__20;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:20:7: ( 'import' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:20:9: 'import'
-            {
-            match("import"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__20"
-
-    // $ANTLR start "T__21"
-    public final void mT__21() throws RecognitionException {
-        try {
-            int _type = T__21;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:21:7: ( '.' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:21:9: '.'
-            {
-            match('.'); 
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__21"
-
-    // $ANTLR start "T__22"
-    public final void mT__22() throws RecognitionException {
-        try {
-            int _type = T__22;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:22:7: ( '*' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:22:9: '*'
-            {
-            match('*'); 
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__22"
-
-    // $ANTLR start "T__23"
-    public final void mT__23() throws RecognitionException {
-        try {
-            int _type = T__23;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:23:7: ( 'Interface' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:23:9: 'Interface'
-            {
-            match("Interface"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__23"
-
-    // $ANTLR start "T__24"
-    public final void mT__24() throws RecognitionException {
-        try {
-            int _type = T__24;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:24:7: ( 'parentInterfaces' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:24:9: 'parentInterfaces'
-            {
-            match("parentInterfaces"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__24"
-
-    // $ANTLR start "T__25"
-    public final void mT__25() throws RecognitionException {
-        try {
-            int _type = T__25;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:25:7: ( '(' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:25:9: '('
-            {
-            match('('); 
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__25"
-
-    // $ANTLR start "T__26"
-    public final void mT__26() throws RecognitionException {
-        try {
-            int _type = T__26;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:26:7: ( ')' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:26:9: ')'
-            {
-            match(')'); 
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__26"
-
-    // $ANTLR start "T__27"
-    public final void mT__27() throws RecognitionException {
-        try {
-            int _type = T__27;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:27:7: ( 'RepositoryComponent' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:27:9: 'RepositoryComponent'
-            {
-            match("RepositoryComponent"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__27"
-
-    // $ANTLR start "T__28"
-    public final void mT__28() throws RecognitionException {
-        try {
-            int _type = T__28;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:28:7: ( 'relationship' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:28:9: 'relationship'
-            {
-            match("relationship"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__28"
-
-    // $ANTLR start "T__29"
-    public final void mT__29() throws RecognitionException {
-        try {
-            int _type = T__29;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:29:7: ( 'providedRoles' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:29:9: 'providedRoles'
-            {
-            match("providedRoles"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__29"
-
-    // $ANTLR start "T__30"
-    public final void mT__30() throws RecognitionException {
-        try {
-            int _type = T__30;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:30:7: ( 'requiredRoles' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:30:9: 'requiredRoles'
-            {
-            match("requiredRoles"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__30"
-
-    // $ANTLR start "T__31"
-    public final void mT__31() throws RecognitionException {
-        try {
-            int _type = T__31;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:31:7: ( 'CollectionDataType' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:31:9: 'CollectionDataType'
-            {
-            match("CollectionDataType"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__31"
-
-    // $ANTLR start "T__32"
-    public final void mT__32() throws RecognitionException {
-        try {
-            int _type = T__32;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:32:7: ( 'innerType' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:32:9: 'innerType'
-            {
-            match("innerType"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__32"
-
-    // $ANTLR start "T__33"
-    public final void mT__33() throws RecognitionException {
-        try {
-            int _type = T__33;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:33:7: ( 'CompositeDataType' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:33:9: 'CompositeDataType'
-            {
-            match("CompositeDataType"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__33"
-
-    // $ANTLR start "T__34"
-    public final void mT__34() throws RecognitionException {
-        try {
-            int _type = T__34;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:34:7: ( 'parentTypes' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:34:9: 'parentTypes'
-            {
-            match("parentTypes"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__34"
-
-    // $ANTLR start "T__35"
-    public final void mT__35() throws RecognitionException {
-        try {
-            int _type = T__35;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:35:7: ( 'innerDeclarations' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:35:9: 'innerDeclarations'
-            {
-            match("innerDeclarations"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__35"
-
-    // $ANTLR start "T__36"
-    public final void mT__36() throws RecognitionException {
-        try {
-            int _type = T__36;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:36:7: ( 'PrimitiveDataType' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:36:9: 'PrimitiveDataType'
-            {
-            match("PrimitiveDataType"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__36"
-
-    // $ANTLR start "T__37"
-    public final void mT__37() throws RecognitionException {
-        try {
-            int _type = T__37;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:37:7: ( 'type' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:37:9: 'type'
-            {
-            match("type"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__37"
-
-    // $ANTLR start "T__38"
-    public final void mT__38() throws RecognitionException {
-        try {
-            int _type = T__38;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:38:7: ( 'ref' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:38:9: 'ref'
-            {
-            match("ref"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__38"
-
-    // $ANTLR start "T__39"
-    public final void mT__39() throws RecognitionException {
-        try {
-            int _type = T__39;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:39:7: ( 'InnerDeclaration' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:39:9: 'InnerDeclaration'
-            {
-            match("InnerDeclaration"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__39"
-
-    // $ANTLR start "T__40"
-    public final void mT__40() throws RecognitionException {
-        try {
-            int _type = T__40;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:40:7: ( 'dataType' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:40:9: 'dataType'
-            {
-            match("dataType"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__40"
-
-    // $ANTLR start "T__41"
-    public final void mT__41() throws RecognitionException {
-        try {
-            int _type = T__41;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:41:7: ( 'void' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:41:9: 'void'
-            {
-            match("void"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__41"
-
-    // $ANTLR start "T__42"
-    public final void mT__42() throws RecognitionException {
-        try {
-            int _type = T__42;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:42:7: ( 'ProvidedRole' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:42:9: 'ProvidedRole'
-            {
-            match("ProvidedRole"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__42"
-
-    // $ANTLR start "T__43"
-    public final void mT__43() throws RecognitionException {
-        try {
-            int _type = T__43;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:43:7: ( 'RequiredRole' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:43:9: 'RequiredRole'
-            {
-            match("RequiredRole"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__43"
-
-    // $ANTLR start "T__44"
-    public final void mT__44() throws RecognitionException {
-        try {
-            int _type = T__44;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:44:7: ( 'BasicComponent' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:44:9: 'BasicComponent'
-            {
-            match("BasicComponent"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__44"
-
-    // $ANTLR start "T__45"
-    public final void mT__45() throws RecognitionException {
-        try {
-            int _type = T__45;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:45:7: ( 'CompositeComponent' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:45:9: 'CompositeComponent'
-            {
-            match("CompositeComponent"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__45"
-
-    // $ANTLR start "T__46"
-    public final void mT__46() throws RecognitionException {
-        try {
-            int _type = T__46;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:46:7: ( 'assembly' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:46:9: 'assembly'
-            {
-            match("assembly"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__46"
-
-    // $ANTLR start "T__47"
-    public final void mT__47() throws RecognitionException {
-        try {
-            int _type = T__47;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:47:7: ( 'SubSystem' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:47:9: 'SubSystem'
-            {
-            match("SubSystem"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__47"
-
-    // $ANTLR start "T__48"
-    public final void mT__48() throws RecognitionException {
-        try {
-            int _type = T__48;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:48:7: ( 'ComposedStructureAssembly' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:48:9: 'ComposedStructureAssembly'
-            {
-            match("ComposedStructureAssembly"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__48"
-
-    // $ANTLR start "T__49"
-    public final void mT__49() throws RecognitionException {
-        try {
-            int _type = T__49;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:49:7: ( 'assemblyContexts' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:49:9: 'assemblyContexts'
-            {
-            match("assemblyContexts"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__49"
-
-    // $ANTLR start "T__50"
-    public final void mT__50() throws RecognitionException {
-        try {
-            int _type = T__50;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:50:7: ( 'assemblyConnectors' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:50:9: 'assemblyConnectors'
-            {
-            match("assemblyConnectors"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__50"
-
-    // $ANTLR start "T__51"
-    public final void mT__51() throws RecognitionException {
-        try {
-            int _type = T__51;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:51:7: ( 'providedDelegationConnectors' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:51:9: 'providedDelegationConnectors'
-            {
-            match("providedDelegationConnectors"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__51"
-
-    // $ANTLR start "T__52"
-    public final void mT__52() throws RecognitionException {
-        try {
-            int _type = T__52;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:52:7: ( 'requiredDelegationConnectors' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:52:9: 'requiredDelegationConnectors'
-            {
-            match("requiredDelegationConnectors"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__52"
-
-    // $ANTLR start "T__53"
-    public final void mT__53() throws RecognitionException {
-        try {
-            int _type = T__53;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:53:7: ( 'AssemblyContext' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:53:9: 'AssemblyContext'
-            {
-            match("AssemblyContext"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__53"
-
-    // $ANTLR start "T__54"
-    public final void mT__54() throws RecognitionException {
-        try {
-            int _type = T__54;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:54:7: ( 'encapsulatedComponent' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:54:9: 'encapsulatedComponent'
-            {
-            match("encapsulatedComponent"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__54"
-
-    // $ANTLR start "T__55"
-    public final void mT__55() throws RecognitionException {
-        try {
-            int _type = T__55;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:55:7: ( 'AssemblyConnector' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:55:9: 'AssemblyConnector'
-            {
-            match("AssemblyConnector"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__55"
-
-    // $ANTLR start "T__56"
-    public final void mT__56() throws RecognitionException {
-        try {
-            int _type = T__56;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:56:7: ( 'requiredRole' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:56:9: 'requiredRole'
-            {
-            match("requiredRole"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__56"
-
-    // $ANTLR start "T__57"
-    public final void mT__57() throws RecognitionException {
-        try {
-            int _type = T__57;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:57:7: ( 'providedRole' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:57:9: 'providedRole'
-            {
-            match("providedRole"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__57"
-
-    // $ANTLR start "T__58"
-    public final void mT__58() throws RecognitionException {
-        try {
-            int _type = T__58;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:58:7: ( 'providingAssemblyContext' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:58:9: 'providingAssemblyContext'
-            {
-            match("providingAssemblyContext"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__58"
-
-    // $ANTLR start "T__59"
-    public final void mT__59() throws RecognitionException {
-        try {
-            int _type = T__59;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:59:7: ( 'requiringAssemblyContext' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:59:9: 'requiringAssemblyContext'
-            {
-            match("requiringAssemblyContext"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__59"
-
-    // $ANTLR start "T__60"
-    public final void mT__60() throws RecognitionException {
-        try {
-            int _type = T__60;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:60:7: ( 'ProvidedDelegationConnector' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:60:9: 'ProvidedDelegationConnector'
-            {
-            match("ProvidedDelegationConnector"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__60"
-
-    // $ANTLR start "T__61"
-    public final void mT__61() throws RecognitionException {
-        try {
-            int _type = T__61;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:61:7: ( 'assemblyContext' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:61:9: 'assemblyContext'
-            {
-            match("assemblyContext"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__61"
-
-    // $ANTLR start "T__62"
-    public final void mT__62() throws RecognitionException {
-        try {
-            int _type = T__62;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:62:7: ( 'innerProvidedRole' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:62:9: 'innerProvidedRole'
-            {
-            match("innerProvidedRole"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__62"
-
-    // $ANTLR start "T__63"
-    public final void mT__63() throws RecognitionException {
-        try {
-            int _type = T__63;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:63:7: ( 'outerProvidedRole' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:63:9: 'outerProvidedRole'
-            {
-            match("outerProvidedRole"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__63"
-
-    // $ANTLR start "T__64"
-    public final void mT__64() throws RecognitionException {
-        try {
-            int _type = T__64;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:64:7: ( 'RequiredDelegationConnector' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:64:9: 'RequiredDelegationConnector'
-            {
-            match("RequiredDelegationConnector"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__64"
-
-    // $ANTLR start "T__65"
-    public final void mT__65() throws RecognitionException {
-        try {
-            int _type = T__65;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:65:7: ( 'innerRequiredRole' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:65:9: 'innerRequiredRole'
-            {
-            match("innerRequiredRole"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__65"
-
-    // $ANTLR start "T__66"
-    public final void mT__66() throws RecognitionException {
-        try {
-            int _type = T__66;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:66:7: ( 'outerRequiredRole' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:66:9: 'outerRequiredRole'
-            {
-            match("outerRequiredRole"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__66"
-
-    // $ANTLR start "T__67"
-    public final void mT__67() throws RecognitionException {
-        try {
-            int _type = T__67;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:67:7: ( 'INT' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:67:9: 'INT'
-            {
-            match("INT"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__67"
-
-    // $ANTLR start "T__68"
-    public final void mT__68() throws RecognitionException {
-        try {
-            int _type = T__68;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:68:7: ( 'STRING' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:68:9: 'STRING'
-            {
-            match("STRING"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__68"
-
-    // $ANTLR start "T__69"
-    public final void mT__69() throws RecognitionException {
-        try {
-            int _type = T__69;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:69:7: ( 'BOOL' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:69:9: 'BOOL'
-            {
-            match("BOOL"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__69"
-
-    // $ANTLR start "T__70"
-    public final void mT__70() throws RecognitionException {
-        try {
-            int _type = T__70;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:70:7: ( 'DOUBLE' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:70:9: 'DOUBLE'
-            {
-            match("DOUBLE"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__70"
-
-    // $ANTLR start "T__71"
-    public final void mT__71() throws RecognitionException {
-        try {
-            int _type = T__71;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:71:7: ( 'CHAR' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:71:9: 'CHAR'
-            {
-            match("CHAR"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__71"
-
-    // $ANTLR start "T__72"
-    public final void mT__72() throws RecognitionException {
-        try {
-            int _type = T__72;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:72:7: ( 'BYTE' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:72:9: 'BYTE'
-            {
-            match("BYTE"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__72"
-
-    // $ANTLR start "T__73"
-    public final void mT__73() throws RecognitionException {
-        try {
-            int _type = T__73;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:73:7: ( 'LONG' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:73:9: 'LONG'
-            {
-            match("LONG"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__73"
-
-    // $ANTLR start "RULE_ID"
-    public final void mRULE_ID() throws RecognitionException {
-        try {
-            int _type = RULE_ID;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2861:9: ( ( '^' )? ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )* )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2861:11: ( '^' )? ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )*
-            {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2861:11: ( '^' )?
-            int alt1=2;
-            int LA1_0 = input.LA(1);
-
-            if ( (LA1_0=='^') ) {
-                alt1=1;
-            }
-            switch (alt1) {
-                case 1 :
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2861:11: '^'
-                    {
-                    match('^'); 
-
-                    }
-                    break;
-
-            }
-
-            if ( (input.LA(1)>='A' && input.LA(1)<='Z')||input.LA(1)=='_'||(input.LA(1)>='a' && input.LA(1)<='z') ) {
-                input.consume();
-
-            }
-            else {
-                MismatchedSetException mse = new MismatchedSetException(null,input);
-                recover(mse);
-                throw mse;}
-
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2861:40: ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )*
-            loop2:
-            do {
-                int alt2=2;
-                int LA2_0 = input.LA(1);
-
-                if ( ((LA2_0>='0' && LA2_0<='9')||(LA2_0>='A' && LA2_0<='Z')||LA2_0=='_'||(LA2_0>='a' && LA2_0<='z')) ) {
-                    alt2=1;
-                }
-
-
-                switch (alt2) {
-            	case 1 :
-            	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:
-            	    {
-            	    if ( (input.LA(1)>='0' && input.LA(1)<='9')||(input.LA(1)>='A' && input.LA(1)<='Z')||input.LA(1)=='_'||(input.LA(1)>='a' && input.LA(1)<='z') ) {
-            	        input.consume();
-
-            	    }
-            	    else {
-            	        MismatchedSetException mse = new MismatchedSetException(null,input);
-            	        recover(mse);
-            	        throw mse;}
-
-
-            	    }
-            	    break;
-
-            	default :
-            	    break loop2;
-                }
-            } while (true);
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "RULE_ID"
-
-    // $ANTLR start "RULE_INT"
-    public final void mRULE_INT() throws RecognitionException {
-        try {
-            int _type = RULE_INT;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2863:10: ( ( '0' .. '9' )+ )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2863:12: ( '0' .. '9' )+
-            {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2863:12: ( '0' .. '9' )+
-            int cnt3=0;
-            loop3:
-            do {
-                int alt3=2;
-                int LA3_0 = input.LA(1);
-
-                if ( ((LA3_0>='0' && LA3_0<='9')) ) {
-                    alt3=1;
-                }
-
-
-                switch (alt3) {
-            	case 1 :
-            	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2863:13: '0' .. '9'
-            	    {
-            	    matchRange('0','9'); 
-
-            	    }
-            	    break;
-
-            	default :
-            	    if ( cnt3 >= 1 ) break loop3;
-                        EarlyExitException eee =
-                            new EarlyExitException(3, input);
-                        throw eee;
-                }
-                cnt3++;
-            } while (true);
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "RULE_INT"
-
-    // $ANTLR start "RULE_STRING"
-    public final void mRULE_STRING() throws RecognitionException {
-        try {
-            int _type = RULE_STRING;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2865:13: ( ( '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\"' ) ) )* '\"' | '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2865:15: ( '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\"' ) ) )* '\"' | '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' )
-            {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2865:15: ( '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\"' ) ) )* '\"' | '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' )
-            int alt6=2;
-            int LA6_0 = input.LA(1);
-
-            if ( (LA6_0=='\"') ) {
-                alt6=1;
-            }
-            else if ( (LA6_0=='\'') ) {
-                alt6=2;
-            }
-            else {
-                NoViableAltException nvae =
-                    new NoViableAltException("", 6, 0, input);
-
-                throw nvae;
-            }
-            switch (alt6) {
-                case 1 :
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2865:16: '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\"' ) ) )* '\"'
-                    {
-                    match('\"'); 
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2865:20: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\"' ) ) )*
-                    loop4:
-                    do {
-                        int alt4=3;
-                        int LA4_0 = input.LA(1);
-
-                        if ( (LA4_0=='\\') ) {
-                            alt4=1;
-                        }
-                        else if ( ((LA4_0>='\u0000' && LA4_0<='!')||(LA4_0>='#' && LA4_0<='[')||(LA4_0>=']' && LA4_0<='\uFFFF')) ) {
-                            alt4=2;
-                        }
-
-
-                        switch (alt4) {
-                    	case 1 :
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2865:21: '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' )
-                    	    {
-                    	    match('\\'); 
-                    	    if ( input.LA(1)=='\"'||input.LA(1)=='\''||input.LA(1)=='\\'||input.LA(1)=='b'||input.LA(1)=='f'||input.LA(1)=='n'||input.LA(1)=='r'||(input.LA(1)>='t' && input.LA(1)<='u') ) {
-                    	        input.consume();
-
-                    	    }
-                    	    else {
-                    	        MismatchedSetException mse = new MismatchedSetException(null,input);
-                    	        recover(mse);
-                    	        throw mse;}
-
-
-                    	    }
-                    	    break;
-                    	case 2 :
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2865:66: ~ ( ( '\\\\' | '\"' ) )
-                    	    {
-                    	    if ( (input.LA(1)>='\u0000' && input.LA(1)<='!')||(input.LA(1)>='#' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFF') ) {
-                    	        input.consume();
-
-                    	    }
-                    	    else {
-                    	        MismatchedSetException mse = new MismatchedSetException(null,input);
-                    	        recover(mse);
-                    	        throw mse;}
-
-
-                    	    }
-                    	    break;
-
-                    	default :
-                    	    break loop4;
-                        }
-                    } while (true);
-
-                    match('\"'); 
-
-                    }
-                    break;
-                case 2 :
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2865:86: '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\\'' ) ) )* '\\''
-                    {
-                    match('\''); 
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2865:91: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\\'' ) ) )*
-                    loop5:
-                    do {
-                        int alt5=3;
-                        int LA5_0 = input.LA(1);
-
-                        if ( (LA5_0=='\\') ) {
-                            alt5=1;
-                        }
-                        else if ( ((LA5_0>='\u0000' && LA5_0<='&')||(LA5_0>='(' && LA5_0<='[')||(LA5_0>=']' && LA5_0<='\uFFFF')) ) {
-                            alt5=2;
-                        }
-
-
-                        switch (alt5) {
-                    	case 1 :
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2865:92: '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' )
-                    	    {
-                    	    match('\\'); 
-                    	    if ( input.LA(1)=='\"'||input.LA(1)=='\''||input.LA(1)=='\\'||input.LA(1)=='b'||input.LA(1)=='f'||input.LA(1)=='n'||input.LA(1)=='r'||(input.LA(1)>='t' && input.LA(1)<='u') ) {
-                    	        input.consume();
-
-                    	    }
-                    	    else {
-                    	        MismatchedSetException mse = new MismatchedSetException(null,input);
-                    	        recover(mse);
-                    	        throw mse;}
-
-
-                    	    }
-                    	    break;
-                    	case 2 :
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2865:137: ~ ( ( '\\\\' | '\\'' ) )
-                    	    {
-                    	    if ( (input.LA(1)>='\u0000' && input.LA(1)<='&')||(input.LA(1)>='(' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFF') ) {
-                    	        input.consume();
-
-                    	    }
-                    	    else {
-                    	        MismatchedSetException mse = new MismatchedSetException(null,input);
-                    	        recover(mse);
-                    	        throw mse;}
-
-
-                    	    }
-                    	    break;
-
-                    	default :
-                    	    break loop5;
-                        }
-                    } while (true);
-
-                    match('\''); 
-
-                    }
-                    break;
-
-            }
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "RULE_STRING"
-
-    // $ANTLR start "RULE_ML_COMMENT"
-    public final void mRULE_ML_COMMENT() throws RecognitionException {
-        try {
-            int _type = RULE_ML_COMMENT;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2867:17: ( '/*' ( options {greedy=false; } : . )* '*/' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2867:19: '/*' ( options {greedy=false; } : . )* '*/'
-            {
-            match("/*"); 
-
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2867:24: ( options {greedy=false; } : . )*
-            loop7:
-            do {
-                int alt7=2;
-                int LA7_0 = input.LA(1);
-
-                if ( (LA7_0=='*') ) {
-                    int LA7_1 = input.LA(2);
-
-                    if ( (LA7_1=='/') ) {
-                        alt7=2;
-                    }
-                    else if ( ((LA7_1>='\u0000' && LA7_1<='.')||(LA7_1>='0' && LA7_1<='\uFFFF')) ) {
-                        alt7=1;
-                    }
-
-
-                }
-                else if ( ((LA7_0>='\u0000' && LA7_0<=')')||(LA7_0>='+' && LA7_0<='\uFFFF')) ) {
-                    alt7=1;
-                }
-
-
-                switch (alt7) {
-            	case 1 :
-            	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2867:52: .
-            	    {
-            	    matchAny(); 
-
-            	    }
-            	    break;
-
-            	default :
-            	    break loop7;
-                }
-            } while (true);
-
-            match("*/"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "RULE_ML_COMMENT"
-
-    // $ANTLR start "RULE_SL_COMMENT"
-    public final void mRULE_SL_COMMENT() throws RecognitionException {
-        try {
-            int _type = RULE_SL_COMMENT;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2869:17: ( '//' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )? )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2869:19: '//' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )?
-            {
-            match("//"); 
-
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2869:24: (~ ( ( '\\n' | '\\r' ) ) )*
-            loop8:
-            do {
-                int alt8=2;
-                int LA8_0 = input.LA(1);
-
-                if ( ((LA8_0>='\u0000' && LA8_0<='\t')||(LA8_0>='\u000B' && LA8_0<='\f')||(LA8_0>='\u000E' && LA8_0<='\uFFFF')) ) {
-                    alt8=1;
-                }
-
-
-                switch (alt8) {
-            	case 1 :
-            	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2869:24: ~ ( ( '\\n' | '\\r' ) )
-            	    {
-            	    if ( (input.LA(1)>='\u0000' && input.LA(1)<='\t')||(input.LA(1)>='\u000B' && input.LA(1)<='\f')||(input.LA(1)>='\u000E' && input.LA(1)<='\uFFFF') ) {
-            	        input.consume();
-
-            	    }
-            	    else {
-            	        MismatchedSetException mse = new MismatchedSetException(null,input);
-            	        recover(mse);
-            	        throw mse;}
-
-
-            	    }
-            	    break;
-
-            	default :
-            	    break loop8;
-                }
-            } while (true);
-
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2869:40: ( ( '\\r' )? '\\n' )?
-            int alt10=2;
-            int LA10_0 = input.LA(1);
-
-            if ( (LA10_0=='\n'||LA10_0=='\r') ) {
-                alt10=1;
-            }
-            switch (alt10) {
-                case 1 :
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2869:41: ( '\\r' )? '\\n'
-                    {
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2869:41: ( '\\r' )?
-                    int alt9=2;
-                    int LA9_0 = input.LA(1);
-
-                    if ( (LA9_0=='\r') ) {
-                        alt9=1;
-                    }
-                    switch (alt9) {
-                        case 1 :
-                            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2869:41: '\\r'
-                            {
-                            match('\r'); 
-
-                            }
-                            break;
-
-                    }
-
-                    match('\n'); 
-
-                    }
-                    break;
-
-            }
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "RULE_SL_COMMENT"
-
-    // $ANTLR start "RULE_WS"
-    public final void mRULE_WS() throws RecognitionException {
-        try {
-            int _type = RULE_WS;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2871:9: ( ( ' ' | '\\t' | '\\r' | '\\n' )+ )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2871:11: ( ' ' | '\\t' | '\\r' | '\\n' )+
-            {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2871:11: ( ' ' | '\\t' | '\\r' | '\\n' )+
-            int cnt11=0;
-            loop11:
-            do {
-                int alt11=2;
-                int LA11_0 = input.LA(1);
-
-                if ( ((LA11_0>='\t' && LA11_0<='\n')||LA11_0=='\r'||LA11_0==' ') ) {
-                    alt11=1;
-                }
-
-
-                switch (alt11) {
-            	case 1 :
-            	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:
-            	    {
-            	    if ( (input.LA(1)>='\t' && input.LA(1)<='\n')||input.LA(1)=='\r'||input.LA(1)==' ' ) {
-            	        input.consume();
-
-            	    }
-            	    else {
-            	        MismatchedSetException mse = new MismatchedSetException(null,input);
-            	        recover(mse);
-            	        throw mse;}
-
-
-            	    }
-            	    break;
-
-            	default :
-            	    if ( cnt11 >= 1 ) break loop11;
-                        EarlyExitException eee =
-                            new EarlyExitException(11, input);
-                        throw eee;
-                }
-                cnt11++;
-            } while (true);
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "RULE_WS"
-
-    // $ANTLR start "RULE_ANY_OTHER"
-    public final void mRULE_ANY_OTHER() throws RecognitionException {
-        try {
-            int _type = RULE_ANY_OTHER;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2873:16: ( . )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2873:18: .
-            {
-            matchAny(); 
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "RULE_ANY_OTHER"
-
-    public void mTokens() throws RecognitionException {
-        // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1:8: ( T__11 | T__12 | T__13 | T__14 | T__15 | T__16 | T__17 | T__18 | T__19 | T__20 | T__21 | T__22 | T__23 | T__24 | T__25 | T__26 | T__27 | T__28 | T__29 | T__30 | T__31 | T__32 | T__33 | T__34 | T__35 | T__36 | T__37 | T__38 | T__39 | T__40 | T__41 | T__42 | T__43 | T__44 | T__45 | T__46 | T__47 | T__48 | T__49 | T__50 | T__51 | T__52 | T__53 | T__54 | T__55 | T__56 | T__57 | T__58 | T__59 | T__60 | T__61 | T__62 | T__63 | T__64 | T__65 | T__66 | T__67 | T__68 | T__69 | T__70 | T__71 | T__72 | T__73 | RULE_ID | RULE_INT | RULE_STRING | RULE_ML_COMMENT | RULE_SL_COMMENT | RULE_WS | RULE_ANY_OTHER )
-        int alt12=70;
-        alt12 = dfa12.predict(input);
-        switch (alt12) {
-            case 1 :
-                // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1:10: T__11
-                {
-                mT__11(); 
-
-                }
-                break;
-            case 2 :
-                // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1:16: T__12
-                {
-                mT__12(); 
-
-                }
-                break;
-            case 3 :
-                // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1:22: T__13
-                {
-                mT__13(); 
-
-                }
-                break;
-            case 4 :
-                // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1:28: T__14
-                {
-                mT__14(); 
-
-                }
-                break;
-            case 5 :
-                // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1:34: T__15
-                {
-                mT__15(); 
-
-                }
-                break;
-            case 6 :
-                // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1:40: T__16
-                {
-                mT__16(); 
-
-                }
-                break;
-            case 7 :
-                // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1:46: T__17
-                {
-                mT__17(); 
-
-                }
-                break;
-            case 8 :
-                // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1:52: T__18
-                {
-                mT__18(); 
-
-                }
-                break;
-            case 9 :
-                // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1:58: T__19
-                {
-                mT__19(); 
-
-                }
-                break;
-            case 10 :
-                // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1:64: T__20
-                {
-                mT__20(); 
-
-                }
-                break;
-            case 11 :
-                // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1:70: T__21
-                {
-                mT__21(); 
-
-                }
-                break;
-            case 12 :
-                // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1:76: T__22
-                {
-                mT__22(); 
-
-                }
-                break;
-            case 13 :
-                // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1:82: T__23
-                {
-                mT__23(); 
-
-                }
-                break;
-            case 14 :
-                // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1:88: T__24
-                {
-                mT__24(); 
-
-                }
-                break;
-            case 15 :
-                // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1:94: T__25
-                {
-                mT__25(); 
-
-                }
-                break;
-            case 16 :
-                // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1:100: T__26
-                {
-                mT__26(); 
-
-                }
-                break;
-            case 17 :
-                // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1:106: T__27
-                {
-                mT__27(); 
-
-                }
-                break;
-            case 18 :
-                // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1:112: T__28
-                {
-                mT__28(); 
-
-                }
-                break;
-            case 19 :
-                // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1:118: T__29
-                {
-                mT__29(); 
-
-                }
-                break;
-            case 20 :
-                // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1:124: T__30
-                {
-                mT__30(); 
-
-                }
-                break;
-            case 21 :
-                // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1:130: T__31
-                {
-                mT__31(); 
-
-                }
-                break;
-            case 22 :
-                // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1:136: T__32
-                {
-                mT__32(); 
-
-                }
-                break;
-            case 23 :
-                // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1:142: T__33
-                {
-                mT__33(); 
-
-                }
-                break;
-            case 24 :
-                // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1:148: T__34
-                {
-                mT__34(); 
-
-                }
-                break;
-            case 25 :
-                // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1:154: T__35
-                {
-                mT__35(); 
-
-                }
-                break;
-            case 26 :
-                // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1:160: T__36
-                {
-                mT__36(); 
-
-                }
-                break;
-            case 27 :
-                // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1:166: T__37
-                {
-                mT__37(); 
-
-                }
-                break;
-            case 28 :
-                // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1:172: T__38
-                {
-                mT__38(); 
-
-                }
-                break;
-            case 29 :
-                // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1:178: T__39
-                {
-                mT__39(); 
-
-                }
-                break;
-            case 30 :
-                // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1:184: T__40
-                {
-                mT__40(); 
-
-                }
-                break;
-            case 31 :
-                // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1:190: T__41
-                {
-                mT__41(); 
-
-                }
-                break;
-            case 32 :
-                // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1:196: T__42
-                {
-                mT__42(); 
-
-                }
-                break;
-            case 33 :
-                // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1:202: T__43
-                {
-                mT__43(); 
-
-                }
-                break;
-            case 34 :
-                // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1:208: T__44
-                {
-                mT__44(); 
-
-                }
-                break;
-            case 35 :
-                // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1:214: T__45
-                {
-                mT__45(); 
-
-                }
-                break;
-            case 36 :
-                // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1:220: T__46
-                {
-                mT__46(); 
-
-                }
-                break;
-            case 37 :
-                // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1:226: T__47
-                {
-                mT__47(); 
-
-                }
-                break;
-            case 38 :
-                // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1:232: T__48
-                {
-                mT__48(); 
-
-                }
-                break;
-            case 39 :
-                // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1:238: T__49
-                {
-                mT__49(); 
-
-                }
-                break;
-            case 40 :
-                // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1:244: T__50
-                {
-                mT__50(); 
-
-                }
-                break;
-            case 41 :
-                // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1:250: T__51
-                {
-                mT__51(); 
-
-                }
-                break;
-            case 42 :
-                // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1:256: T__52
-                {
-                mT__52(); 
-
-                }
-                break;
-            case 43 :
-                // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1:262: T__53
-                {
-                mT__53(); 
-
-                }
-                break;
-            case 44 :
-                // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1:268: T__54
-                {
-                mT__54(); 
-
-                }
-                break;
-            case 45 :
-                // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1:274: T__55
-                {
-                mT__55(); 
-
-                }
-                break;
-            case 46 :
-                // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1:280: T__56
-                {
-                mT__56(); 
-
-                }
-                break;
-            case 47 :
-                // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1:286: T__57
-                {
-                mT__57(); 
-
-                }
-                break;
-            case 48 :
-                // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1:292: T__58
-                {
-                mT__58(); 
-
-                }
-                break;
-            case 49 :
-                // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1:298: T__59
-                {
-                mT__59(); 
-
-                }
-                break;
-            case 50 :
-                // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1:304: T__60
-                {
-                mT__60(); 
-
-                }
-                break;
-            case 51 :
-                // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1:310: T__61
-                {
-                mT__61(); 
-
-                }
-                break;
-            case 52 :
-                // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1:316: T__62
-                {
-                mT__62(); 
-
-                }
-                break;
-            case 53 :
-                // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1:322: T__63
-                {
-                mT__63(); 
-
-                }
-                break;
-            case 54 :
-                // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1:328: T__64
-                {
-                mT__64(); 
-
-                }
-                break;
-            case 55 :
-                // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1:334: T__65
-                {
-                mT__65(); 
-
-                }
-                break;
-            case 56 :
-                // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1:340: T__66
-                {
-                mT__66(); 
-
-                }
-                break;
-            case 57 :
-                // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1:346: T__67
-                {
-                mT__67(); 
-
-                }
-                break;
-            case 58 :
-                // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1:352: T__68
-                {
-                mT__68(); 
-
-                }
-                break;
-            case 59 :
-                // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1:358: T__69
-                {
-                mT__69(); 
-
-                }
-                break;
-            case 60 :
-                // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1:364: T__70
-                {
-                mT__70(); 
-
-                }
-                break;
-            case 61 :
-                // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1:370: T__71
-                {
-                mT__71(); 
-
-                }
-                break;
-            case 62 :
-                // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1:376: T__72
-                {
-                mT__72(); 
-
-                }
-                break;
-            case 63 :
-                // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1:382: T__73
-                {
-                mT__73(); 
-
-                }
-                break;
-            case 64 :
-                // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1:388: RULE_ID
-                {
-                mRULE_ID(); 
-
-                }
-                break;
-            case 65 :
-                // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1:396: RULE_INT
-                {
-                mRULE_INT(); 
-
-                }
-                break;
-            case 66 :
-                // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1:405: RULE_STRING
-                {
-                mRULE_STRING(); 
-
-                }
-                break;
-            case 67 :
-                // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1:417: RULE_ML_COMMENT
-                {
-                mRULE_ML_COMMENT(); 
-
-                }
-                break;
-            case 68 :
-                // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1:433: RULE_SL_COMMENT
-                {
-                mRULE_SL_COMMENT(); 
-
-                }
-                break;
-            case 69 :
-                // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1:449: RULE_WS
-                {
-                mRULE_WS(); 
-
-                }
-                break;
-            case 70 :
-                // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1:457: RULE_ANY_OTHER
-                {
-                mRULE_ANY_OTHER(); 
-
-                }
-                break;
-
-        }
-
-    }
-
-
-    protected DFA12 dfa12 = new DFA12(this);
-    static final String DFA12_eotS =
-        "\1\uffff\1\45\1\uffff\1\45\2\uffff\2\45\3\uffff\2\45\2\uffff\15"+
-        "\45\1\43\2\uffff\3\43\2\uffff\1\45\2\uffff\2\45\2\uffff\2\45\3\uffff"+
-        "\4\45\2\uffff\21\45\5\uffff\11\45\1\166\4\45\1\173\33\45\1\uffff"+
-        "\4\45\1\uffff\2\45\1\u009e\2\45\1\u00a1\1\u00a2\1\45\1\u00a4\1\u00a5"+
-        "\7\45\1\u00ad\20\45\1\uffff\2\45\2\uffff\1\45\2\uffff\7\45\1\uffff"+
-        "\2\45\1\u00cf\25\45\1\u00e9\4\45\1\u00ee\2\45\1\u00f1\1\uffff\31"+
-        "\45\1\uffff\4\45\1\uffff\2\45\1\uffff\6\45\1\u0118\20\45\1\u012d"+
-        "\11\45\1\u0137\3\45\1\u013b\1\uffff\1\45\1\u013d\22\45\1\uffff\1"+
-        "\u0151\4\45\1\u0157\2\45\1\u015a\1\uffff\3\45\1\uffff\1\u015e\1"+
-        "\uffff\23\45\1\uffff\5\45\1\uffff\2\45\1\uffff\3\45\1\uffff\2\45"+
-        "\1\u017e\25\45\1\u0196\6\45\1\uffff\1\u019e\2\45\1\u01a1\1\u01a3"+
-        "\7\45\1\u01ab\12\45\1\uffff\6\45\1\u01bc\1\uffff\2\45\1\uffff\1"+
-        "\u01bf\1\uffff\7\45\1\uffff\20\45\1\uffff\2\45\1\uffff\10\45\1\u01e1"+
-        "\30\45\1\uffff\1\u01fb\1\45\1\u01fd\11\45\1\u0207\1\u0208\12\45"+
-        "\1\u0213\1\uffff\1\45\1\uffff\6\45\1\u021b\1\u021c\1\u021d\2\uffff"+
-        "\5\45\1\u0223\2\45\1\u0226\1\45\1\uffff\1\45\1\u0229\1\45\1\u022b"+
-        "\1\u022c\2\45\3\uffff\4\45\1\u0233\1\uffff\1\u0234\1\45\1\uffff"+
-        "\1\45\1\u0237\1\uffff\1\45\2\uffff\1\u0239\5\45\2\uffff\2\45\1\uffff"+
-        "\1\45\1\uffff\17\45\1\u0251\7\45\1\uffff\11\45\1\u0262\1\45\1\u0264"+
-        "\4\45\1\uffff\1\45\1\uffff\1\u026a\4\45\1\uffff\1\45\1\u0270\2\45"+
-        "\1\u0273\1\uffff\1\u0274\1\u0275\3\uffff";
-    static final String DFA12_eofS =
-        "\u0276\uffff";
-    static final String DFA12_minS =
-        "\1\0\1\145\1\uffff\1\155\2\uffff\1\141\1\157\3\uffff\1\116\1\141"+
-        "\2\uffff\1\145\1\110\1\162\1\171\1\157\1\117\1\163\1\124\1\163\1"+
-        "\156\1\165\2\117\1\101\2\uffff\2\0\1\52\2\uffff\1\160\2\uffff\1"+
-        "\160\1\156\2\uffff\1\164\1\155\3\uffff\1\156\1\124\1\162\1\157\2"+
-        "\uffff\1\146\1\154\1\101\1\151\1\160\1\151\1\163\1\117\1\124\1\163"+
-        "\1\142\1\122\1\163\1\143\1\164\1\125\1\116\5\uffff\1\157\1\165\1"+
-        "\157\2\145\1\141\1\160\2\145\1\60\1\145\1\166\1\141\1\165\1\60\1"+
-        "\154\1\160\1\122\1\155\1\166\1\145\1\144\1\151\1\114\1\105\1\145"+
-        "\1\123\1\111\1\145\1\141\1\145\1\102\1\107\1\163\1\151\3\162\1\124"+
-        "\1\157\2\162\1\uffff\1\156\1\151\1\164\1\151\1\uffff\1\145\1\157"+
-        "\1\60\2\151\2\60\1\143\2\60\1\155\1\171\1\116\1\155\1\160\1\162"+
-        "\1\114\1\60\1\151\1\162\1\164\1\146\1\104\2\171\1\156\1\146\1\104"+
-        "\1\164\1\144\1\151\1\162\1\143\1\163\1\uffff\1\164\1\144\2\uffff"+
-        "\1\103\2\uffff\1\142\1\163\1\107\1\142\1\163\1\120\1\105\1\uffff"+
-        "\1\164\1\145\1\60\1\141\1\171\1\145\1\162\1\145\2\160\1\145\1\141"+
-        "\1\145\1\111\1\145\1\157\1\145\1\164\1\145\1\151\1\145\1\157\1\154"+
-        "\1\164\1\60\1\154\1\165\1\162\1\145\1\60\1\157\1\144\1\60\1\uffff"+
-        "\1\143\1\160\1\143\1\157\1\161\2\145\1\156\2\143\1\156\1\171\1\144"+
-        "\2\156\1\144\1\156\1\151\1\164\1\144\1\166\1\144\1\155\1\171\1\145"+
-        "\1\uffff\1\171\1\154\1\157\1\161\1\uffff\1\162\1\104\1\uffff\2\145"+
-        "\1\154\1\166\1\165\1\163\1\60\1\164\1\145\1\154\1\164\1\160\1\104"+
-        "\1\147\1\163\1\104\1\147\1\157\1\145\1\123\1\145\1\104\1\160\1\60"+
-        "\1\155\1\103\1\141\1\166\1\165\1\171\1\157\1\145\1\163\1\60\1\141"+
-        "\2\151\1\60\1\uffff\1\163\1\60\1\141\2\145\1\157\1\145\1\101\1\150"+
-        "\1\157\1\145\1\101\1\156\1\103\1\164\1\104\1\157\1\145\2\157\1\uffff"+
-        "\1\60\1\157\1\164\2\151\1\60\2\154\1\60\1\uffff\1\162\1\144\1\162"+
-        "\1\uffff\1\60\1\uffff\2\162\1\163\2\154\1\163\1\151\2\154\1\163"+
-        "\1\104\1\141\1\157\1\162\1\141\2\154\2\156\1\uffff\1\156\1\145\1"+
-        "\144\1\162\1\157\1\uffff\2\145\1\uffff\1\141\2\145\1\uffff\1\141"+
-        "\1\146\1\60\2\145\1\163\1\160\2\145\1\163\1\141\1\164\1\155\1\165"+
-        "\1\164\3\145\2\156\1\144\2\145\1\155\1\60\1\147\1\164\2\144\1\164"+
-        "\1\141\1\uffff\1\60\1\147\1\145\2\60\1\147\1\145\1\164\1\141\1\160"+
-        "\1\143\1\141\1\60\1\147\1\156\4\145\1\103\2\144\1\160\1\uffff\1"+
-        "\141\1\151\2\122\1\151\1\143\1\60\1\uffff\1\141\1\155\1\uffff\1"+
-        "\60\1\uffff\1\141\1\155\1\141\1\124\1\157\1\164\1\124\1\uffff\1"+
-        "\141\1\164\1\170\1\143\1\170\1\143\1\157\2\122\1\157\1\164\4\157"+
-        "\1\145\1\uffff\1\164\1\142\1\uffff\1\164\1\142\1\124\1\171\1\156"+
-        "\1\165\1\171\1\164\1\60\4\164\1\155\2\157\1\156\1\151\1\156\2\154"+
-        "\1\156\1\163\1\151\1\154\1\151\1\154\1\171\1\160\1\145\1\162\1\160"+
-        "\1\151\1\uffff\1\60\1\157\1\60\1\157\1\160\2\154\1\145\1\157\1\163"+
-        "\2\145\2\60\1\157\1\171\1\157\1\171\1\160\1\145\1\156\2\145\1\157"+
-        "\1\60\1\uffff\1\162\1\uffff\1\162\1\157\2\145\2\156\3\60\2\uffff"+
-        "\1\156\1\103\1\156\1\103\1\145\1\60\1\164\1\101\1\60\1\156\1\uffff"+
-        "\1\163\1\60\1\156\2\60\1\164\1\103\3\uffff\1\103\1\157\1\103\1\157"+
-        "\1\60\1\uffff\1\60\1\163\1\uffff\1\103\1\60\1\uffff\1\145\2\uffff"+
-        "\1\60\2\157\1\156\1\157\1\156\2\uffff\1\163\1\157\1\uffff\1\156"+
-        "\1\uffff\2\156\1\164\1\156\1\164\1\145\1\156\1\164\2\156\1\145\1"+
-        "\156\1\145\1\155\1\156\1\60\2\145\1\170\1\145\1\170\1\142\1\145"+
-        "\1\uffff\2\143\1\164\1\143\1\164\1\154\1\143\2\164\1\60\1\164\1"+
-        "\60\1\171\1\164\2\157\1\uffff\1\157\1\uffff\1\60\1\157\3\162\1\uffff"+
-        "\1\162\1\60\2\163\1\60\1\uffff\2\60\3\uffff";
-    static final String DFA12_maxS =
-        "\1\uffff\1\145\1\uffff\1\156\2\uffff\1\141\1\157\3\uffff\1\156"+
-        "\1\162\2\uffff\1\145\1\157\1\162\1\171\1\157\1\141\1\163\1\165\1"+
-        "\163\1\156\1\165\2\117\1\172\2\uffff\2\uffff\1\57\2\uffff\1\161"+
-        "\2\uffff\1\160\1\164\2\uffff\1\164\1\155\3\uffff\1\164\1\124\1\162"+
-        "\1\157\2\uffff\1\161\1\155\1\101\1\157\1\160\1\151\1\163\1\117\1"+
-        "\124\1\163\1\142\1\122\1\163\1\143\1\164\1\125\1\116\5\uffff\1\157"+
-        "\1\165\1\157\2\145\1\141\1\160\2\145\1\172\1\145\1\166\1\141\1\165"+
-        "\1\172\1\154\1\160\1\122\1\155\1\166\1\145\1\144\1\151\1\114\1\105"+
-        "\1\145\1\123\1\111\1\145\1\141\1\145\1\102\1\107\1\163\1\151\3\162"+
-        "\1\164\1\157\2\162\1\uffff\1\156\1\151\1\164\1\151\1\uffff\1\145"+
-        "\1\157\1\172\2\151\2\172\1\143\2\172\1\155\1\171\1\116\1\155\1\160"+
-        "\1\162\1\114\1\172\1\151\1\162\1\164\1\146\1\124\2\171\1\156\1\146"+
-        "\1\104\1\164\1\144\1\151\1\162\1\143\1\163\1\uffff\1\164\1\144\2"+
-        "\uffff\1\103\2\uffff\1\142\1\163\1\107\1\142\1\163\1\122\1\105\1"+
-        "\uffff\1\164\1\145\1\172\1\141\1\171\1\145\1\162\1\145\2\160\1\145"+
-        "\1\141\1\145\1\124\1\151\1\157\1\151\1\164\2\151\1\145\1\157\1\154"+
-        "\1\164\1\172\1\154\1\165\1\162\1\145\1\172\1\157\1\144\1\172\1\uffff"+
-        "\1\143\1\160\1\143\1\157\1\161\2\145\1\156\2\143\1\156\1\171\1\144"+
-        "\2\156\1\144\1\156\1\151\1\164\1\144\1\166\1\144\1\155\1\171\1\145"+
-        "\1\uffff\1\171\1\154\1\157\1\161\1\uffff\1\162\1\122\1\uffff\2\145"+
-        "\1\154\1\166\1\165\1\163\1\172\1\164\1\145\1\154\1\164\1\160\1\122"+
-        "\1\147\1\163\1\122\1\147\1\157\1\145\1\123\1\145\1\122\1\160\1\172"+
-        "\1\155\1\103\1\141\1\166\1\165\1\171\1\157\1\145\1\163\1\172\1\141"+
-        "\2\151\1\172\1\uffff\1\163\1\172\1\141\2\145\1\157\1\145\1\101\1"+
-        "\150\1\157\1\145\1\101\1\156\1\104\1\164\1\104\1\157\1\145\2\157"+
-        "\1\uffff\1\172\1\157\1\164\2\151\1\172\2\154\1\172\1\uffff\1\162"+
-        "\1\144\1\162\1\uffff\1\172\1\uffff\2\162\1\163\2\154\1\163\1\151"+
-        "\2\154\1\163\1\104\1\141\1\157\1\162\1\141\2\154\2\156\1\uffff\1"+
-        "\156\1\145\1\144\1\162\1\157\1\uffff\2\145\1\uffff\1\141\2\145\1"+
-        "\uffff\1\141\1\146\1\172\2\145\1\163\1\160\2\145\1\163\1\141\1\164"+
-        "\1\155\1\165\1\164\3\145\2\164\1\144\2\145\1\155\1\172\1\147\1\164"+
-        "\2\144\1\164\1\141\1\uffff\1\172\1\147\1\145\2\172\1\147\1\145\1"+
-        "\164\1\141\1\160\1\143\1\141\1\172\1\147\1\156\4\145\1\103\2\144"+
-        "\1\160\1\uffff\1\141\1\151\2\122\1\151\1\143\1\172\1\uffff\1\141"+
-        "\1\155\1\uffff\1\172\1\uffff\1\141\1\155\1\141\1\124\1\157\1\164"+
-        "\1\124\1\uffff\1\141\1\164\1\170\1\143\1\170\1\143\1\157\2\122\1"+
-        "\157\1\164\4\157\1\145\1\uffff\1\164\1\142\1\uffff\1\164\1\142\1"+
-        "\124\1\171\1\156\1\165\1\171\1\164\1\172\4\164\1\155\2\157\1\156"+
-        "\1\151\1\156\2\154\1\156\1\163\1\151\1\154\1\151\1\154\1\171\1\160"+
-        "\1\145\1\162\1\160\1\151\1\uffff\1\172\1\157\1\172\1\157\1\160\2"+
-        "\154\1\145\1\157\1\163\2\145\2\172\1\157\1\171\1\157\1\171\1\160"+
-        "\1\145\1\156\2\145\1\157\1\172\1\uffff\1\162\1\uffff\1\162\1\157"+
-        "\2\145\2\156\3\172\2\uffff\1\156\1\103\1\156\1\103\1\145\1\172\1"+
-        "\164\1\101\1\172\1\156\1\uffff\1\163\1\172\1\156\2\172\1\164\1\103"+
-        "\3\uffff\1\103\1\157\1\103\1\157\1\172\1\uffff\1\172\1\163\1\uffff"+
-        "\1\103\1\172\1\uffff\1\145\2\uffff\1\172\2\157\1\156\1\157\1\156"+
-        "\2\uffff\1\163\1\157\1\uffff\1\156\1\uffff\2\156\1\164\1\156\1\164"+
-        "\1\145\1\156\1\164\2\156\1\145\1\156\1\145\1\155\1\156\1\172\2\145"+
-        "\1\170\1\145\1\170\1\142\1\145\1\uffff\2\143\1\164\1\143\1\164\1"+
-        "\154\1\143\2\164\1\172\1\164\1\172\1\171\1\164\2\157\1\uffff\1\157"+
-        "\1\uffff\1\172\1\157\3\162\1\uffff\1\162\1\172\2\163\1\172\1\uffff"+
-        "\2\172\3\uffff";
-    static final String DFA12_acceptS =
-        "\2\uffff\1\2\1\uffff\1\4\1\5\2\uffff\1\10\1\13\1\14\2\uffff\1\17"+
-        "\1\20\16\uffff\1\100\1\101\3\uffff\1\105\1\106\1\uffff\1\100\1\2"+
-        "\2\uffff\1\4\1\5\2\uffff\1\10\1\13\1\14\4\uffff\1\17\1\20\21\uffff"+
-        "\1\101\1\102\1\103\1\104\1\105\52\uffff\1\71\4\uffff\1\34\42\uffff"+
-        "\1\75\2\uffff\1\33\1\37\1\uffff\1\73\1\76\7\uffff\1\77\41\uffff"+
-        "\1\12\31\uffff\1\72\4\uffff\1\74\2\uffff\1\3\46\uffff\1\36\24\uffff"+
-        "\1\44\11\uffff\1\26\3\uffff\1\6\1\uffff\1\15\23\uffff\1\45\5\uffff"+
-        "\1\1\2\uffff\1\11\3\uffff\1\7\37\uffff\1\30\27\uffff\1\41\7\uffff"+
-        "\1\57\2\uffff\1\22\1\uffff\1\56\7\uffff\1\40\20\uffff\1\23\2\uffff"+
-        "\1\24\41\uffff\1\42\31\uffff\1\63\1\uffff\1\53\11\uffff\1\35\1\16"+
-        "\12\uffff\1\47\7\uffff\1\31\1\64\1\67\5\uffff\1\27\2\uffff\1\32"+
-        "\2\uffff\1\55\1\uffff\1\65\1\70\6\uffff\1\25\1\43\2\uffff\1\50\1"+
-        "\uffff\1\21\27\uffff\1\54\20\uffff\1\60\1\uffff\1\61\5\uffff\1\46"+
-        "\5\uffff\1\66\2\uffff\1\62\1\51\1\52";
-    static final String DFA12_specialS =
-        "\1\1\36\uffff\1\0\1\2\u0255\uffff}>";
-    static final String[] DFA12_transitionS = {
-            "\11\43\2\42\2\43\1\42\22\43\1\42\1\43\1\37\4\43\1\40\1\15\1"+
-            "\16\1\12\1\43\1\4\1\43\1\11\1\41\12\36\1\43\1\10\5\43\1\27\1"+
-            "\24\1\20\1\32\4\35\1\13\2\35\1\33\3\35\1\21\1\35\1\1\1\26\7"+
-            "\35\3\43\1\34\1\35\1\43\1\25\1\35\1\7\1\6\1\30\3\35\1\3\5\35"+
-            "\1\31\1\14\1\35\1\17\1\35\1\22\1\35\1\23\4\35\1\2\1\43\1\5\uff82"+
-            "\43",
-            "\1\44",
-            "",
-            "\1\47\1\50",
-            "",
-            "",
-            "\1\53",
-            "\1\54",
-            "",
-            "",
-            "",
-            "\1\61\37\uffff\1\60",
-            "\1\62\20\uffff\1\63",
-            "",
-            "",
-            "\1\66",
-            "\1\70\46\uffff\1\67",
-            "\1\71",
-            "\1\72",
-            "\1\73",
-            "\1\75\11\uffff\1\76\7\uffff\1\74",
-            "\1\77",
-            "\1\101\40\uffff\1\100",
-            "\1\102",
-            "\1\103",
-            "\1\104",
-            "\1\105",
-            "\1\106",
-            "\32\45\4\uffff\1\45\1\uffff\32\45",
-            "",
-            "",
-            "\0\110",
-            "\0\110",
-            "\1\111\4\uffff\1\112",
-            "",
-            "",
-            "\1\114\1\115",
-            "",
-            "",
-            "\1\116",
-            "\1\120\5\uffff\1\117",
-            "",
-            "",
-            "\1\121",
-            "\1\122",
-            "",
-            "",
-            "",
-            "\1\124\5\uffff\1\123",
-            "\1\125",
-            "\1\126",
-            "\1\127",
-            "",
-            "",
-            "\1\132\5\uffff\1\130\4\uffff\1\131",
-            "\1\133\1\134",
-            "\1\135",
-            "\1\136\5\uffff\1\137",
-            "\1\140",
-            "\1\141",
-            "\1\142",
-            "\1\143",
-            "\1\144",
-            "\1\145",
-            "\1\146",
-            "\1\147",
-            "\1\150",
-            "\1\151",
-            "\1\152",
-            "\1\153",
-            "\1\154",
-            "",
-            "",
-            "",
-            "",
-            "",
-            "\1\155",
-            "\1\156",
-            "\1\157",
-            "\1\160",
-            "\1\161",
-            "\1\162",
-            "\1\163",
-            "\1\164",
-            "\1\165",
-            "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45",
-            "\1\167",
-            "\1\170",
-            "\1\171",
-            "\1\172",
-            "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45",
-            "\1\174",
-            "\1\175",
-            "\1\176",
-            "\1\177",
-            "\1\u0080",
-            "\1\u0081",
-            "\1\u0082",
-            "\1\u0083",
-            "\1\u0084",
-            "\1\u0085",
-            "\1\u0086",
-            "\1\u0087",
-            "\1\u0088",
-            "\1\u0089",
-            "\1\u008a",
-            "\1\u008b",
-            "\1\u008c",
-            "\1\u008d",
-            "\1\u008e",
-            "\1\u008f",
-            "\1\u0090",
-            "\1\u0091",
-            "\1\u0092",
-            "\1\u0094\37\uffff\1\u0093",
-            "\1\u0095",
-            "\1\u0096",
-            "\1\u0097",
-            "",
-            "\1\u0098",
-            "\1\u0099",
-            "\1\u009a",
-            "\1\u009b",
-            "",
-            "\1\u009c",
-            "\1\u009d",
-            "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45",
-            "\1\u009f",
-            "\1\u00a0",
-            "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45",
-            "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45",
-            "\1\u00a3",
-            "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45",
-            "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45",
-            "\1\u00a6",
-            "\1\u00a7",
-            "\1\u00a8",
-            "\1\u00a9",
-            "\1\u00aa",
-            "\1\u00ab",
-            "\1\u00ac",
-            "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45",
-            "\1\u00ae",
-            "\1\u00af",
-            "\1\u00b0",
-            "\1\u00b1",
-            "\1\u00b3\13\uffff\1\u00b4\1\uffff\1\u00b5\1\uffff\1\u00b2",
-            "\1\u00b6",
-            "\1\u00b7",
-            "\1\u00b8",
-            "\1\u00b9",
-            "\1\u00ba",
-            "\1\u00bb",
-            "\1\u00bc",
-            "\1\u00bd",
-            "\1\u00be",
-            "\1\u00bf",
-            "\1\u00c0",
-            "",
-            "\1\u00c1",
-            "\1\u00c2",
-            "",
-            "",
-            "\1\u00c3",
-            "",
-            "",
-            "\1\u00c4",
-            "\1\u00c5",
-            "\1\u00c6",
-            "\1\u00c7",
-            "\1\u00c8",
-            "\1\u00c9\1\uffff\1\u00ca",
-            "\1\u00cb",
-            "",
-            "\1\u00cc",
-            "\1\u00cd",
-            "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\22\45\1\u00ce\7"+
-            "\45",
-            "\1\u00d0",
-            "\1\u00d1",
-            "\1\u00d2",
-            "\1\u00d3",
-            "\1\u00d4",
-            "\1\u00d5",
-            "\1\u00d6",
-            "\1\u00d7",
-            "\1\u00d8",
-            "\1\u00d9",
-            "\1\u00da\12\uffff\1\u00db",
-            "\1\u00dc\3\uffff\1\u00dd",
-            "\1\u00de",
-            "\1\u00df\3\uffff\1\u00e0",
-            "\1\u00e1",
-            "\1\u00e3\3\uffff\1\u00e2",
-            "\1\u00e4",
-            "\1\u00e5",
-            "\1\u00e6",
-            "\1\u00e7",
-            "\1\u00e8",
-            "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45",
-            "\1\u00ea",
-            "\1\u00eb",
-            "\1\u00ec",
-            "\1\u00ed",
-            "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45",
-            "\1\u00ef",
-            "\1\u00f0",
-            "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45",
-            "",
-            "\1\u00f2",
-            "\1\u00f3",
-            "\1\u00f4",
-            "\1\u00f5",
-            "\1\u00f6",
-            "\1\u00f7",
-            "\1\u00f8",
-            "\1\u00f9",
-            "\1\u00fa",
-            "\1\u00fb",
-            "\1\u00fc",
-            "\1\u00fd",
-            "\1\u00fe",
-            "\1\u00ff",
-            "\1\u0100",
-            "\1\u0101",
-            "\1\u0102",
-            "\1\u0103",
-            "\1\u0104",
-            "\1\u0105",
-            "\1\u0106",
-            "\1\u0107",
-            "\1\u0108",
-            "\1\u0109",
-            "\1\u010a",
-            "",
-            "\1\u010b",
-            "\1\u010c",
-            "\1\u010d",
-            "\1\u010e",
-            "",
-            "\1\u010f",
-            "\1\u0111\15\uffff\1\u0110",
-            "",
-            "\1\u0112",
-            "\1\u0113",
-            "\1\u0114",
-            "\1\u0115",
-            "\1\u0116",
-            "\1\u0117",
-            "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45",
-            "\1\u0119",
-            "\1\u011a",
-            "\1\u011b",
-            "\1\u011c",
-            "\1\u011d",
-            "\1\u011f\15\uffff\1\u011e",
-            "\1\u0120",
-            "\1\u0121",
-            "\1\u0123\15\uffff\1\u0122",
-            "\1\u0124",
-            "\1\u0125",
-            "\1\u0126",
-            "\1\u0127",
-            "\1\u0128",
-            "\1\u012a\15\uffff\1\u0129",
-            "\1\u012b",
-            "\12\45\7\uffff\2\45\1\u012c\27\45\4\uffff\1\45\1\uffff\32"+
-            "\45",
-            "\1\u012e",
-            "\1\u012f",
-            "\1\u0130",
-            "\1\u0131",
-            "\1\u0132",
-            "\1\u0133",
-            "\1\u0134",
-            "\1\u0135",
-            "\1\u0136",
-            "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45",
-            "\1\u0138",
-            "\1\u0139",
-            "\1\u013a",
-            "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45",
-            "",
-            "\1\u013c",
-            "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45",
-            "\1\u013e",
-            "\1\u013f",
-            "\1\u0140",
-            "\1\u0141",
-            "\1\u0142",
-            "\1\u0143",
-            "\1\u0144",
-            "\1\u0145",
-            "\1\u0146",
-            "\1\u0147",
-            "\1\u0148",
-            "\1\u014a\1\u0149",
-            "\1\u014b",
-            "\1\u014c",
-            "\1\u014d",
-            "\1\u014e",
-            "\1\u014f",
-            "\1\u0150",
-            "",
-            "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45",
-            "\1\u0152",
-            "\1\u0153",
-            "\1\u0154",
-            "\1\u0155",
-            "\12\45\7\uffff\2\45\1\u0156\27\45\4\uffff\1\45\1\uffff\32"+
-            "\45",
-            "\1\u0158",
-            "\1\u0159",
-            "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45",
-            "",
-            "\1\u015b",
-            "\1\u015c",
-            "\1\u015d",
-            "",
-            "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45",
-            "",
-            "\1\u015f",
-            "\1\u0160",
-            "\1\u0161",
-            "\1\u0162",
-            "\1\u0163",
-            "\1\u0164",
-            "\1\u0165",
-            "\1\u0166",
-            "\1\u0167",
-            "\1\u0168",
-            "\1\u0169",
-            "\1\u016a",
-            "\1\u016b",
-            "\1\u016c",
-            "\1\u016d",
-            "\1\u016e",
-            "\1\u016f",
-            "\1\u0170",
-            "\1\u0171",
-            "",
-            "\1\u0172",
-            "\1\u0173",
-            "\1\u0174",
-            "\1\u0175",
-            "\1\u0176",
-            "",
-            "\1\u0177",
-            "\1\u0178",
-            "",
-            "\1\u0179",
-            "\1\u017a",
-            "\1\u017b",
-            "",
-            "\1\u017c",
-            "\1\u017d",
-            "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45",
-            "\1\u017f",
-            "\1\u0180",
-            "\1\u0181",
-            "\1\u0182",
-            "\1\u0183",
-            "\1\u0184",
-            "\1\u0185",
-            "\1\u0186",
-            "\1\u0187",
-            "\1\u0188",
-            "\1\u0189",
-            "\1\u018a",
-            "\1\u018b",
-            "\1\u018c",
-            "\1\u018d",
-            "\1\u018f\5\uffff\1\u018e",
-            "\1\u0191\5\uffff\1\u0190",
-            "\1\u0192",
-            "\1\u0193",
-            "\1\u0194",
-            "\1\u0195",
-            "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45",
-            "\1\u0197",
-            "\1\u0198",
-            "\1\u0199",
-            "\1\u019a",
-            "\1\u019b",
-            "\1\u019c",
-            "",
-            "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\22\45\1\u019d\7"+
-            "\45",
-            "\1\u019f",
-            "\1\u01a0",
-            "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45",
-            "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\22\45\1\u01a2\7"+
-            "\45",
-            "\1\u01a4",
-            "\1\u01a5",
-            "\1\u01a6",
-            "\1\u01a7",
-            "\1\u01a8",
-            "\1\u01a9",
-            "\1\u01aa",
-            "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45",
-            "\1\u01ac",
-            "\1\u01ad",
-            "\1\u01ae",
-            "\1\u01af",
-            "\1\u01b0",
-            "\1\u01b1",
-            "\1\u01b2",
-            "\1\u01b3",
-            "\1\u01b4",
-            "\1\u01b5",
-            "",
-            "\1\u01b6",
-            "\1\u01b7",
-            "\1\u01b8",
-            "\1\u01b9",
-            "\1\u01ba",
-            "\1\u01bb",
-            "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45",
-            "",
-            "\1\u01bd",
-            "\1\u01be",
-            "",
-            "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45",
-            "",
-            "\1\u01c0",
-            "\1\u01c1",
-            "\1\u01c2",
-            "\1\u01c3",
-            "\1\u01c4",
-            "\1\u01c5",
-            "\1\u01c6",
-            "",
-            "\1\u01c7",
-            "\1\u01c8",
-            "\1\u01c9",
-            "\1\u01ca",
-            "\1\u01cb",
-            "\1\u01cc",
-            "\1\u01cd",
-            "\1\u01ce",
-            "\1\u01cf",
-            "\1\u01d0",
-            "\1\u01d1",
-            "\1\u01d2",
-            "\1\u01d3",
-            "\1\u01d4",
-            "\1\u01d5",
-            "\1\u01d6",
-            "",
-            "\1\u01d7",
-            "\1\u01d8",
-            "",
-            "\1\u01d9",
-            "\1\u01da",
-            "\1\u01db",
-            "\1\u01dc",
-            "\1\u01dd",
-            "\1\u01de",
-            "\1\u01df",
-            "\1\u01e0",
-            "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45",
-            "\1\u01e2",
-            "\1\u01e3",
-            "\1\u01e4",
-            "\1\u01e5",
-            "\1\u01e6",
-            "\1\u01e7",
-            "\1\u01e8",
-            "\1\u01e9",
-            "\1\u01ea",
-            "\1\u01eb",
-            "\1\u01ec",
-            "\1\u01ed",
-            "\1\u01ee",
-            "\1\u01ef",
-            "\1\u01f0",
-            "\1\u01f1",
-            "\1\u01f2",
-            "\1\u01f3",
-            "\1\u01f4",
-            "\1\u01f5",
-            "\1\u01f6",
-            "\1\u01f7",
-            "\1\u01f8",
-            "\1\u01f9",
-            "",
-            "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\22\45\1\u01fa\7"+
-            "\45",
-            "\1\u01fc",
-            "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45",
-            "\1\u01fe",
-            "\1\u01ff",
-            "\1\u0200",
-            "\1\u0201",
-            "\1\u0202",
-            "\1\u0203",
-            "\1\u0204",
-            "\1\u0205",
-            "\1\u0206",
-            "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45",
-            "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45",
-            "\1\u0209",
-            "\1\u020a",
-            "\1\u020b",
-            "\1\u020c",
-            "\1\u020d",
-            "\1\u020e",
-            "\1\u020f",
-            "\1\u0210",
-            "\1\u0211",
-            "\1\u0212",
-            "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45",
-            "",
-            "\1\u0214",
-            "",
-            "\1\u0215",
-            "\1\u0216",
-            "\1\u0217",
-            "\1\u0218",
-            "\1\u0219",
-            "\1\u021a",
-            "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45",
-            "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45",
-            "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45",
-            "",
-            "",
-            "\1\u021e",
-            "\1\u021f",
-            "\1\u0220",
-            "\1\u0221",
-            "\1\u0222",
-            "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45",
-            "\1\u0224",
-            "\1\u0225",
-            "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45",
-            "\1\u0227",
-            "",
-            "\1\u0228",
-            "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45",
-            "\1\u022a",
-            "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45",
-            "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45",
-            "\1\u022d",
-            "\1\u022e",
-            "",
-            "",
-            "",
-            "\1\u022f",
-            "\1\u0230",
-            "\1\u0231",
-            "\1\u0232",
-            "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45",
-            "",
-            "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45",
-            "\1\u0235",
-            "",
-            "\1\u0236",
-            "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45",
-            "",
-            "\1\u0238",
-            "",
-            "",
-            "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45",
-            "\1\u023a",
-            "\1\u023b",
-            "\1\u023c",
-            "\1\u023d",
-            "\1\u023e",
-            "",
-            "",
-            "\1\u023f",
-            "\1\u0240",
-            "",
-            "\1\u0241",
-            "",
-            "\1\u0242",
-            "\1\u0243",
-            "\1\u0244",
-            "\1\u0245",
-            "\1\u0246",
-            "\1\u0247",
-            "\1\u0248",
-            "\1\u0249",
-            "\1\u024a",
-            "\1\u024b",
-            "\1\u024c",
-            "\1\u024d",
-            "\1\u024e",
-            "\1\u024f",
-            "\1\u0250",
-            "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45",
-            "\1\u0252",
-            "\1\u0253",
-            "\1\u0254",
-            "\1\u0255",
-            "\1\u0256",
-            "\1\u0257",
-            "\1\u0258",
-            "",
-            "\1\u0259",
-            "\1\u025a",
-            "\1\u025b",
-            "\1\u025c",
-            "\1\u025d",
-            "\1\u025e",
-            "\1\u025f",
-            "\1\u0260",
-            "\1\u0261",
-            "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45",
-            "\1\u0263",
-            "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45",
-            "\1\u0265",
-            "\1\u0266",
-            "\1\u0267",
-            "\1\u0268",
-            "",
-            "\1\u0269",
-            "",
-            "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45",
-            "\1\u026b",
-            "\1\u026c",
-            "\1\u026d",
-            "\1\u026e",
-            "",
-            "\1\u026f",
-            "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45",
-            "\1\u0271",
-            "\1\u0272",
-            "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45",
-            "",
-            "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45",
-            "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45",
-            "",
-            "",
-            ""
-    };
-
-    static final short[] DFA12_eot = DFA.unpackEncodedString(DFA12_eotS);
-    static final short[] DFA12_eof = DFA.unpackEncodedString(DFA12_eofS);
-    static final char[] DFA12_min = DFA.unpackEncodedStringToUnsignedChars(DFA12_minS);
-    static final char[] DFA12_max = DFA.unpackEncodedStringToUnsignedChars(DFA12_maxS);
-    static final short[] DFA12_accept = DFA.unpackEncodedString(DFA12_acceptS);
-    static final short[] DFA12_special = DFA.unpackEncodedString(DFA12_specialS);
-    static final short[][] DFA12_transition;
-
-    static {
-        int numStates = DFA12_transitionS.length;
-        DFA12_transition = new short[numStates][];
-        for (int i=0; i<numStates; i++) {
-            DFA12_transition[i] = DFA.unpackEncodedString(DFA12_transitionS[i]);
-        }
-    }
-
-    static class DFA12 extends DFA {
-
-        public DFA12(BaseRecognizer recognizer) {
-            this.recognizer = recognizer;
-            this.decisionNumber = 12;
-            this.eot = DFA12_eot;
-            this.eof = DFA12_eof;
-            this.min = DFA12_min;
-            this.max = DFA12_max;
-            this.accept = DFA12_accept;
-            this.special = DFA12_special;
-            this.transition = DFA12_transition;
-        }
-        public String getDescription() {
-            return "1:1: Tokens : ( T__11 | T__12 | T__13 | T__14 | T__15 | T__16 | T__17 | T__18 | T__19 | T__20 | T__21 | T__22 | T__23 | T__24 | T__25 | T__26 | T__27 | T__28 | T__29 | T__30 | T__31 | T__32 | T__33 | T__34 | T__35 | T__36 | T__37 | T__38 | T__39 | T__40 | T__41 | T__42 | T__43 | T__44 | T__45 | T__46 | T__47 | T__48 | T__49 | T__50 | T__51 | T__52 | T__53 | T__54 | T__55 | T__56 | T__57 | T__58 | T__59 | T__60 | T__61 | T__62 | T__63 | T__64 | T__65 | T__66 | T__67 | T__68 | T__69 | T__70 | T__71 | T__72 | T__73 | RULE_ID | RULE_INT | RULE_STRING | RULE_ML_COMMENT | RULE_SL_COMMENT | RULE_WS | RULE_ANY_OTHER );";
-        }
-        public int specialStateTransition(int s, IntStream _input) throws NoViableAltException {
-            IntStream input = _input;
-        	int _s = s;
-            switch ( s ) {
-                    case 0 : 
-                        int LA12_31 = input.LA(1);
-
-                        s = -1;
-                        if ( ((LA12_31>='\u0000' && LA12_31<='\uFFFF')) ) {s = 72;}
-
-                        else s = 35;
-
-                        if ( s>=0 ) return s;
-                        break;
-                    case 1 : 
-                        int LA12_0 = input.LA(1);
-
-                        s = -1;
-                        if ( (LA12_0=='R') ) {s = 1;}
-
-                        else if ( (LA12_0=='{') ) {s = 2;}
-
-                        else if ( (LA12_0=='i') ) {s = 3;}
-
-                        else if ( (LA12_0==',') ) {s = 4;}
-
-                        else if ( (LA12_0=='}') ) {s = 5;}
-
-                        else if ( (LA12_0=='d') ) {s = 6;}
-
-                        else if ( (LA12_0=='c') ) {s = 7;}
-
-                        else if ( (LA12_0==';') ) {s = 8;}
-
-                        else if ( (LA12_0=='.') ) {s = 9;}
-
-                        else if ( (LA12_0=='*') ) {s = 10;}
-
-                        else if ( (LA12_0=='I') ) {s = 11;}
-
-                        else if ( (LA12_0=='p') ) {s = 12;}
-
-                        else if ( (LA12_0=='(') ) {s = 13;}
-
-                        else if ( (LA12_0==')') ) {s = 14;}
-
-                        else if ( (LA12_0=='r') ) {s = 15;}
-
-                        else if ( (LA12_0=='C') ) {s = 16;}
-
-                        else if ( (LA12_0=='P') ) {s = 17;}
-
-                        else if ( (LA12_0=='t') ) {s = 18;}
-
-                        else if ( (LA12_0=='v') ) {s = 19;}
-
-                        else if ( (LA12_0=='B') ) {s = 20;}
-
-                        else if ( (LA12_0=='a') ) {s = 21;}
-
-                        else if ( (LA12_0=='S') ) {s = 22;}
-
-                        else if ( (LA12_0=='A') ) {s = 23;}
-
-                        else if ( (LA12_0=='e') ) {s = 24;}
-
-                        else if ( (LA12_0=='o') ) {s = 25;}
-
-                        else if ( (LA12_0=='D') ) {s = 26;}
-
-                        else if ( (LA12_0=='L') ) {s = 27;}
-
-                        else if ( (LA12_0=='^') ) {s = 28;}
-
-                        else if ( ((LA12_0>='E' && LA12_0<='H')||(LA12_0>='J' && LA12_0<='K')||(LA12_0>='M' && LA12_0<='O')||LA12_0=='Q'||(LA12_0>='T' && LA12_0<='Z')||LA12_0=='_'||LA12_0=='b'||(LA12_0>='f' && LA12_0<='h')||(LA12_0>='j' && LA12_0<='n')||LA12_0=='q'||LA12_0=='s'||LA12_0=='u'||(LA12_0>='w' && LA12_0<='z')) ) {s = 29;}
-
-                        else if ( ((LA12_0>='0' && LA12_0<='9')) ) {s = 30;}
-
-                        else if ( (LA12_0=='\"') ) {s = 31;}
-
-                        else if ( (LA12_0=='\'') ) {s = 32;}
-
-                        else if ( (LA12_0=='/') ) {s = 33;}
-
-                        else if ( ((LA12_0>='\t' && LA12_0<='\n')||LA12_0=='\r'||LA12_0==' ') ) {s = 34;}
-
-                        else if ( ((LA12_0>='\u0000' && LA12_0<='\b')||(LA12_0>='\u000B' && LA12_0<='\f')||(LA12_0>='\u000E' && LA12_0<='\u001F')||LA12_0=='!'||(LA12_0>='#' && LA12_0<='&')||LA12_0=='+'||LA12_0=='-'||LA12_0==':'||(LA12_0>='<' && LA12_0<='@')||(LA12_0>='[' && LA12_0<=']')||LA12_0=='`'||LA12_0=='|'||(LA12_0>='~' && LA12_0<='\uFFFF')) ) {s = 35;}
-
-                        if ( s>=0 ) return s;
-                        break;
-                    case 2 : 
-                        int LA12_32 = input.LA(1);
-
-                        s = -1;
-                        if ( ((LA12_32>='\u0000' && LA12_32<='\uFFFF')) ) {s = 72;}
-
-                        else s = 35;
-
-                        if ( s>=0 ) return s;
-                        break;
-            }
-            NoViableAltException nvae =
-                new NoViableAltException(getDescription(), 12, _s, input);
-            error(nvae);
-            throw nvae;
-        }
-    }
- 
-
-}
\ No newline at end of file
diff --git a/org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTestParser.java b/org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTestParser.java
deleted file mode 100644
index c2e096ab..00000000
--- a/org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTestParser.java
+++ /dev/null
@@ -1,7394 +0,0 @@
-package org.xtext.example.mydsl.parser.antlr.internal; 
-
-import org.eclipse.xtext.*;
-import org.eclipse.xtext.parser.*;
-import org.eclipse.xtext.parser.impl.*;
-import org.eclipse.emf.ecore.util.EcoreUtil;
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.emf.common.util.Enumerator;
-import org.eclipse.xtext.parser.antlr.AbstractInternalAntlrParser;
-import org.eclipse.xtext.parser.antlr.XtextTokenStream;
-import org.eclipse.xtext.parser.antlr.XtextTokenStream.HiddenTokens;
-import org.eclipse.xtext.parser.antlr.AntlrDatatypeRuleToken;
-import org.xtext.example.mydsl.services.MyDslTestGrammarAccess;
-
-
-
-import org.antlr.runtime.*;
-import java.util.Stack;
-import java.util.List;
-import java.util.ArrayList;
-
-@SuppressWarnings("all")
-public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
-    public static final String[] tokenNames = new String[] {
-        "<invalid>", "<EOR>", "<DOWN>", "<UP>", "RULE_ID", "RULE_STRING", "RULE_INT", "RULE_ML_COMMENT", "RULE_SL_COMMENT", "RULE_WS", "RULE_ANY_OTHER", "'Repository'", "'{'", "'imports'", "','", "'}'", "'datatypes'", "'components'", "';'", "'interfaces'", "'import'", "'.'", "'*'", "'Interface'", "'parentInterfaces'", "'('", "')'", "'RepositoryComponent'", "'relationship'", "'providedRoles'", "'requiredRoles'", "'CollectionDataType'", "'innerType'", "'CompositeDataType'", "'parentTypes'", "'innerDeclarations'", "'PrimitiveDataType'", "'type'", "'ref'", "'InnerDeclaration'", "'dataType'", "'void'", "'ProvidedRole'", "'RequiredRole'", "'BasicComponent'", "'CompositeComponent'", "'assembly'", "'SubSystem'", "'ComposedStructureAssembly'", "'assemblyContexts'", "'assemblyConnectors'", "'providedDelegationConnectors'", "'requiredDelegationConnectors'", "'AssemblyContext'", "'encapsulatedComponent'", "'AssemblyConnector'", "'requiredRole'", "'providedRole'", "'providingAssemblyContext'", "'requiringAssemblyContext'", "'ProvidedDelegationConnector'", "'assemblyContext'", "'innerProvidedRole'", "'outerProvidedRole'", "'RequiredDelegationConnector'", "'innerRequiredRole'", "'outerRequiredRole'", "'INT'", "'STRING'", "'BOOL'", "'DOUBLE'", "'CHAR'", "'BYTE'", "'LONG'"
-    };
-    public static final int T__68=68;
-    public static final int T__69=69;
-    public static final int RULE_ID=4;
-    public static final int T__66=66;
-    public static final int T__67=67;
-    public static final int T__64=64;
-    public static final int T__29=29;
-    public static final int T__65=65;
-    public static final int T__28=28;
-    public static final int T__62=62;
-    public static final int T__27=27;
-    public static final int T__63=63;
-    public static final int T__26=26;
-    public static final int T__25=25;
-    public static final int T__24=24;
-    public static final int T__23=23;
-    public static final int T__22=22;
-    public static final int RULE_ANY_OTHER=10;
-    public static final int T__21=21;
-    public static final int T__20=20;
-    public static final int T__61=61;
-    public static final int T__60=60;
-    public static final int EOF=-1;
-    public static final int T__55=55;
-    public static final int T__56=56;
-    public static final int T__19=19;
-    public static final int T__57=57;
-    public static final int T__58=58;
-    public static final int T__51=51;
-    public static final int T__16=16;
-    public static final int T__52=52;
-    public static final int T__15=15;
-    public static final int T__53=53;
-    public static final int T__18=18;
-    public static final int T__54=54;
-    public static final int T__17=17;
-    public static final int T__12=12;
-    public static final int T__11=11;
-    public static final int T__14=14;
-    public static final int T__13=13;
-    public static final int T__59=59;
-    public static final int RULE_INT=6;
-    public static final int T__50=50;
-    public static final int T__42=42;
-    public static final int T__43=43;
-    public static final int T__40=40;
-    public static final int T__41=41;
-    public static final int T__46=46;
-    public static final int T__47=47;
-    public static final int T__44=44;
-    public static final int T__45=45;
-    public static final int T__48=48;
-    public static final int T__49=49;
-    public static final int RULE_SL_COMMENT=8;
-    public static final int RULE_ML_COMMENT=7;
-    public static final int T__30=30;
-    public static final int T__31=31;
-    public static final int RULE_STRING=5;
-    public static final int T__32=32;
-    public static final int T__71=71;
-    public static final int T__33=33;
-    public static final int T__72=72;
-    public static final int T__34=34;
-    public static final int T__35=35;
-    public static final int T__70=70;
-    public static final int T__36=36;
-    public static final int T__37=37;
-    public static final int T__38=38;
-    public static final int T__39=39;
-    public static final int RULE_WS=9;
-    public static final int T__73=73;
-
-    // delegates
-    // delegators
-
-
-        public InternalMyDslTestParser(TokenStream input) {
-            this(input, new RecognizerSharedState());
-        }
-        public InternalMyDslTestParser(TokenStream input, RecognizerSharedState state) {
-            super(input, state);
-             
-        }
-        
-
-    public String[] getTokenNames() { return InternalMyDslTestParser.tokenNames; }
-    public String getGrammarFileName() { return "../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g"; }
-
-
-
-     	private MyDslTestGrammarAccess grammarAccess;
-     	
-        public InternalMyDslTestParser(TokenStream input, MyDslTestGrammarAccess grammarAccess) {
-            this(input);
-            this.grammarAccess = grammarAccess;
-            registerRules(grammarAccess.getGrammar());
-        }
-        
-        @Override
-        protected String getFirstRuleName() {
-        	return "Repository";	
-       	}
-       	
-       	@Override
-       	protected MyDslTestGrammarAccess getGrammarAccess() {
-       		return grammarAccess;
-       	}
-
-
-
-    // $ANTLR start "entryRuleRepository"
-    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:68:1: entryRuleRepository returns [EObject current=null] : iv_ruleRepository= ruleRepository EOF ;
-    public final EObject entryRuleRepository() throws RecognitionException {
-        EObject current = null;
-
-        EObject iv_ruleRepository = null;
-
-
-        try {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:69:2: (iv_ruleRepository= ruleRepository EOF )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:70:2: iv_ruleRepository= ruleRepository EOF
-            {
-             newCompositeNode(grammarAccess.getRepositoryRule()); 
-            pushFollow(FollowSets000.FOLLOW_ruleRepository_in_entryRuleRepository75);
-            iv_ruleRepository=ruleRepository();
-
-            state._fsp--;
-
-             current =iv_ruleRepository; 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleRepository85); 
-
-            }
-
-        }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
-                appendSkippedTokens();
-            } 
-        finally {
-        }
-        return current;
-    }
-    // $ANTLR end "entryRuleRepository"
-
-
-    // $ANTLR start "ruleRepository"
-    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:77:1: ruleRepository returns [EObject current=null] : (otherlv_0= 'Repository' ( (lv_name_1_0= ruleQualifiedName ) ) otherlv_2= '{' (otherlv_3= 'imports' otherlv_4= '{' ( (lv_imports_5_0= ruleImport ) ) (otherlv_6= ',' ( (lv_imports_7_0= ruleImport ) ) )* otherlv_8= '}' )? (otherlv_9= 'datatypes' otherlv_10= '{' ( (lv_datatypes_11_0= ruleDataType ) ) (otherlv_12= ',' ( (lv_datatypes_13_0= ruleDataType ) ) )* otherlv_14= '}' )? (otherlv_15= 'components' otherlv_16= '{' ( (lv_components_17_0= ruleRepositoryComponent ) ) (otherlv_18= ';' ( (lv_components_19_0= ruleRepositoryComponent ) ) )* otherlv_20= '}' )? (otherlv_21= 'interfaces' otherlv_22= '{' ( (lv_interfaces_23_0= ruleInterface ) ) (otherlv_24= ',' ( (lv_interfaces_25_0= ruleInterface ) ) )* otherlv_26= '}' )? otherlv_27= '}' ) ;
-    public final EObject ruleRepository() throws RecognitionException {
-        EObject current = null;
-
-        Token otherlv_0=null;
-        Token otherlv_2=null;
-        Token otherlv_3=null;
-        Token otherlv_4=null;
-        Token otherlv_6=null;
-        Token otherlv_8=null;
-        Token otherlv_9=null;
-        Token otherlv_10=null;
-        Token otherlv_12=null;
-        Token otherlv_14=null;
-        Token otherlv_15=null;
-        Token otherlv_16=null;
-        Token otherlv_18=null;
-        Token otherlv_20=null;
-        Token otherlv_21=null;
-        Token otherlv_22=null;
-        Token otherlv_24=null;
-        Token otherlv_26=null;
-        Token otherlv_27=null;
-        AntlrDatatypeRuleToken lv_name_1_0 = null;
-
-        EObject lv_imports_5_0 = null;
-
-        EObject lv_imports_7_0 = null;
-
-        EObject lv_datatypes_11_0 = null;
-
-        EObject lv_datatypes_13_0 = null;
-
-        EObject lv_components_17_0 = null;
-
-        EObject lv_components_19_0 = null;
-
-        EObject lv_interfaces_23_0 = null;
-
-        EObject lv_interfaces_25_0 = null;
-
-
-         enterRule(); 
-            
-        try {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:80:28: ( (otherlv_0= 'Repository' ( (lv_name_1_0= ruleQualifiedName ) ) otherlv_2= '{' (otherlv_3= 'imports' otherlv_4= '{' ( (lv_imports_5_0= ruleImport ) ) (otherlv_6= ',' ( (lv_imports_7_0= ruleImport ) ) )* otherlv_8= '}' )? (otherlv_9= 'datatypes' otherlv_10= '{' ( (lv_datatypes_11_0= ruleDataType ) ) (otherlv_12= ',' ( (lv_datatypes_13_0= ruleDataType ) ) )* otherlv_14= '}' )? (otherlv_15= 'components' otherlv_16= '{' ( (lv_components_17_0= ruleRepositoryComponent ) ) (otherlv_18= ';' ( (lv_components_19_0= ruleRepositoryComponent ) ) )* otherlv_20= '}' )? (otherlv_21= 'interfaces' otherlv_22= '{' ( (lv_interfaces_23_0= ruleInterface ) ) (otherlv_24= ',' ( (lv_interfaces_25_0= ruleInterface ) ) )* otherlv_26= '}' )? otherlv_27= '}' ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:81:1: (otherlv_0= 'Repository' ( (lv_name_1_0= ruleQualifiedName ) ) otherlv_2= '{' (otherlv_3= 'imports' otherlv_4= '{' ( (lv_imports_5_0= ruleImport ) ) (otherlv_6= ',' ( (lv_imports_7_0= ruleImport ) ) )* otherlv_8= '}' )? (otherlv_9= 'datatypes' otherlv_10= '{' ( (lv_datatypes_11_0= ruleDataType ) ) (otherlv_12= ',' ( (lv_datatypes_13_0= ruleDataType ) ) )* otherlv_14= '}' )? (otherlv_15= 'components' otherlv_16= '{' ( (lv_components_17_0= ruleRepositoryComponent ) ) (otherlv_18= ';' ( (lv_components_19_0= ruleRepositoryComponent ) ) )* otherlv_20= '}' )? (otherlv_21= 'interfaces' otherlv_22= '{' ( (lv_interfaces_23_0= ruleInterface ) ) (otherlv_24= ',' ( (lv_interfaces_25_0= ruleInterface ) ) )* otherlv_26= '}' )? otherlv_27= '}' )
-            {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:81:1: (otherlv_0= 'Repository' ( (lv_name_1_0= ruleQualifiedName ) ) otherlv_2= '{' (otherlv_3= 'imports' otherlv_4= '{' ( (lv_imports_5_0= ruleImport ) ) (otherlv_6= ',' ( (lv_imports_7_0= ruleImport ) ) )* otherlv_8= '}' )? (otherlv_9= 'datatypes' otherlv_10= '{' ( (lv_datatypes_11_0= ruleDataType ) ) (otherlv_12= ',' ( (lv_datatypes_13_0= ruleDataType ) ) )* otherlv_14= '}' )? (otherlv_15= 'components' otherlv_16= '{' ( (lv_components_17_0= ruleRepositoryComponent ) ) (otherlv_18= ';' ( (lv_components_19_0= ruleRepositoryComponent ) ) )* otherlv_20= '}' )? (otherlv_21= 'interfaces' otherlv_22= '{' ( (lv_interfaces_23_0= ruleInterface ) ) (otherlv_24= ',' ( (lv_interfaces_25_0= ruleInterface ) ) )* otherlv_26= '}' )? otherlv_27= '}' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:81:3: otherlv_0= 'Repository' ( (lv_name_1_0= ruleQualifiedName ) ) otherlv_2= '{' (otherlv_3= 'imports' otherlv_4= '{' ( (lv_imports_5_0= ruleImport ) ) (otherlv_6= ',' ( (lv_imports_7_0= ruleImport ) ) )* otherlv_8= '}' )? (otherlv_9= 'datatypes' otherlv_10= '{' ( (lv_datatypes_11_0= ruleDataType ) ) (otherlv_12= ',' ( (lv_datatypes_13_0= ruleDataType ) ) )* otherlv_14= '}' )? (otherlv_15= 'components' otherlv_16= '{' ( (lv_components_17_0= ruleRepositoryComponent ) ) (otherlv_18= ';' ( (lv_components_19_0= ruleRepositoryComponent ) ) )* otherlv_20= '}' )? (otherlv_21= 'interfaces' otherlv_22= '{' ( (lv_interfaces_23_0= ruleInterface ) ) (otherlv_24= ',' ( (lv_interfaces_25_0= ruleInterface ) ) )* otherlv_26= '}' )? otherlv_27= '}'
-            {
-            otherlv_0=(Token)match(input,11,FollowSets000.FOLLOW_11_in_ruleRepository122); 
-
-                	newLeafNode(otherlv_0, grammarAccess.getRepositoryAccess().getRepositoryKeyword_0());
-                
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:85:1: ( (lv_name_1_0= ruleQualifiedName ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:86:1: (lv_name_1_0= ruleQualifiedName )
-            {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:86:1: (lv_name_1_0= ruleQualifiedName )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:87:3: lv_name_1_0= ruleQualifiedName
-            {
-             
-            	        newCompositeNode(grammarAccess.getRepositoryAccess().getNameQualifiedNameParserRuleCall_1_0()); 
-            	    
-            pushFollow(FollowSets000.FOLLOW_ruleQualifiedName_in_ruleRepository143);
-            lv_name_1_0=ruleQualifiedName();
-
-            state._fsp--;
-
-
-            	        if (current==null) {
-            	            current = createModelElementForParent(grammarAccess.getRepositoryRule());
-            	        }
-                   		set(
-                   			current, 
-                   			"name",
-                    		lv_name_1_0, 
-                    		"QualifiedName");
-            	        afterParserOrEnumRuleCall();
-            	    
-
-            }
-
-
-            }
-
-            otherlv_2=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleRepository155); 
-
-                	newLeafNode(otherlv_2, grammarAccess.getRepositoryAccess().getLeftCurlyBracketKeyword_2());
-                
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:107:1: (otherlv_3= 'imports' otherlv_4= '{' ( (lv_imports_5_0= ruleImport ) ) (otherlv_6= ',' ( (lv_imports_7_0= ruleImport ) ) )* otherlv_8= '}' )?
-            int alt2=2;
-            int LA2_0 = input.LA(1);
-
-            if ( (LA2_0==13) ) {
-                alt2=1;
-            }
-            switch (alt2) {
-                case 1 :
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:107:3: otherlv_3= 'imports' otherlv_4= '{' ( (lv_imports_5_0= ruleImport ) ) (otherlv_6= ',' ( (lv_imports_7_0= ruleImport ) ) )* otherlv_8= '}'
-                    {
-                    otherlv_3=(Token)match(input,13,FollowSets000.FOLLOW_13_in_ruleRepository168); 
-
-                        	newLeafNode(otherlv_3, grammarAccess.getRepositoryAccess().getImportsKeyword_3_0());
-                        
-                    otherlv_4=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleRepository180); 
-
-                        	newLeafNode(otherlv_4, grammarAccess.getRepositoryAccess().getLeftCurlyBracketKeyword_3_1());
-                        
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:115:1: ( (lv_imports_5_0= ruleImport ) )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:116:1: (lv_imports_5_0= ruleImport )
-                    {
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:116:1: (lv_imports_5_0= ruleImport )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:117:3: lv_imports_5_0= ruleImport
-                    {
-                     
-                    	        newCompositeNode(grammarAccess.getRepositoryAccess().getImportsImportParserRuleCall_3_2_0()); 
-                    	    
-                    pushFollow(FollowSets000.FOLLOW_ruleImport_in_ruleRepository201);
-                    lv_imports_5_0=ruleImport();
-
-                    state._fsp--;
-
-
-                    	        if (current==null) {
-                    	            current = createModelElementForParent(grammarAccess.getRepositoryRule());
-                    	        }
-                           		add(
-                           			current, 
-                           			"imports",
-                            		lv_imports_5_0, 
-                            		"Import");
-                    	        afterParserOrEnumRuleCall();
-                    	    
-
-                    }
-
-
-                    }
-
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:133:2: (otherlv_6= ',' ( (lv_imports_7_0= ruleImport ) ) )*
-                    loop1:
-                    do {
-                        int alt1=2;
-                        int LA1_0 = input.LA(1);
-
-                        if ( (LA1_0==14) ) {
-                            alt1=1;
-                        }
-
-
-                        switch (alt1) {
-                    	case 1 :
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:133:4: otherlv_6= ',' ( (lv_imports_7_0= ruleImport ) )
-                    	    {
-                    	    otherlv_6=(Token)match(input,14,FollowSets000.FOLLOW_14_in_ruleRepository214); 
-
-                    	        	newLeafNode(otherlv_6, grammarAccess.getRepositoryAccess().getCommaKeyword_3_3_0());
-                    	        
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:137:1: ( (lv_imports_7_0= ruleImport ) )
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:138:1: (lv_imports_7_0= ruleImport )
-                    	    {
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:138:1: (lv_imports_7_0= ruleImport )
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:139:3: lv_imports_7_0= ruleImport
-                    	    {
-                    	     
-                    	    	        newCompositeNode(grammarAccess.getRepositoryAccess().getImportsImportParserRuleCall_3_3_1_0()); 
-                    	    	    
-                    	    pushFollow(FollowSets000.FOLLOW_ruleImport_in_ruleRepository235);
-                    	    lv_imports_7_0=ruleImport();
-
-                    	    state._fsp--;
-
-
-                    	    	        if (current==null) {
-                    	    	            current = createModelElementForParent(grammarAccess.getRepositoryRule());
-                    	    	        }
-                    	           		add(
-                    	           			current, 
-                    	           			"imports",
-                    	            		lv_imports_7_0, 
-                    	            		"Import");
-                    	    	        afterParserOrEnumRuleCall();
-                    	    	    
-
-                    	    }
-
-
-                    	    }
-
-
-                    	    }
-                    	    break;
-
-                    	default :
-                    	    break loop1;
-                        }
-                    } while (true);
-
-                    otherlv_8=(Token)match(input,15,FollowSets000.FOLLOW_15_in_ruleRepository249); 
-
-                        	newLeafNode(otherlv_8, grammarAccess.getRepositoryAccess().getRightCurlyBracketKeyword_3_4());
-                        
-
-                    }
-                    break;
-
-            }
-
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:159:3: (otherlv_9= 'datatypes' otherlv_10= '{' ( (lv_datatypes_11_0= ruleDataType ) ) (otherlv_12= ',' ( (lv_datatypes_13_0= ruleDataType ) ) )* otherlv_14= '}' )?
-            int alt4=2;
-            int LA4_0 = input.LA(1);
-
-            if ( (LA4_0==16) ) {
-                alt4=1;
-            }
-            switch (alt4) {
-                case 1 :
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:159:5: otherlv_9= 'datatypes' otherlv_10= '{' ( (lv_datatypes_11_0= ruleDataType ) ) (otherlv_12= ',' ( (lv_datatypes_13_0= ruleDataType ) ) )* otherlv_14= '}'
-                    {
-                    otherlv_9=(Token)match(input,16,FollowSets000.FOLLOW_16_in_ruleRepository264); 
-
-                        	newLeafNode(otherlv_9, grammarAccess.getRepositoryAccess().getDatatypesKeyword_4_0());
-                        
-                    otherlv_10=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleRepository276); 
-
-                        	newLeafNode(otherlv_10, grammarAccess.getRepositoryAccess().getLeftCurlyBracketKeyword_4_1());
-                        
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:167:1: ( (lv_datatypes_11_0= ruleDataType ) )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:168:1: (lv_datatypes_11_0= ruleDataType )
-                    {
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:168:1: (lv_datatypes_11_0= ruleDataType )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:169:3: lv_datatypes_11_0= ruleDataType
-                    {
-                     
-                    	        newCompositeNode(grammarAccess.getRepositoryAccess().getDatatypesDataTypeParserRuleCall_4_2_0()); 
-                    	    
-                    pushFollow(FollowSets000.FOLLOW_ruleDataType_in_ruleRepository297);
-                    lv_datatypes_11_0=ruleDataType();
-
-                    state._fsp--;
-
-
-                    	        if (current==null) {
-                    	            current = createModelElementForParent(grammarAccess.getRepositoryRule());
-                    	        }
-                           		add(
-                           			current, 
-                           			"datatypes",
-                            		lv_datatypes_11_0, 
-                            		"DataType");
-                    	        afterParserOrEnumRuleCall();
-                    	    
-
-                    }
-
-
-                    }
-
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:185:2: (otherlv_12= ',' ( (lv_datatypes_13_0= ruleDataType ) ) )*
-                    loop3:
-                    do {
-                        int alt3=2;
-                        int LA3_0 = input.LA(1);
-
-                        if ( (LA3_0==14) ) {
-                            alt3=1;
-                        }
-
-
-                        switch (alt3) {
-                    	case 1 :
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:185:4: otherlv_12= ',' ( (lv_datatypes_13_0= ruleDataType ) )
-                    	    {
-                    	    otherlv_12=(Token)match(input,14,FollowSets000.FOLLOW_14_in_ruleRepository310); 
-
-                    	        	newLeafNode(otherlv_12, grammarAccess.getRepositoryAccess().getCommaKeyword_4_3_0());
-                    	        
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:189:1: ( (lv_datatypes_13_0= ruleDataType ) )
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:190:1: (lv_datatypes_13_0= ruleDataType )
-                    	    {
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:190:1: (lv_datatypes_13_0= ruleDataType )
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:191:3: lv_datatypes_13_0= ruleDataType
-                    	    {
-                    	     
-                    	    	        newCompositeNode(grammarAccess.getRepositoryAccess().getDatatypesDataTypeParserRuleCall_4_3_1_0()); 
-                    	    	    
-                    	    pushFollow(FollowSets000.FOLLOW_ruleDataType_in_ruleRepository331);
-                    	    lv_datatypes_13_0=ruleDataType();
-
-                    	    state._fsp--;
-
-
-                    	    	        if (current==null) {
-                    	    	            current = createModelElementForParent(grammarAccess.getRepositoryRule());
-                    	    	        }
-                    	           		add(
-                    	           			current, 
-                    	           			"datatypes",
-                    	            		lv_datatypes_13_0, 
-                    	            		"DataType");
-                    	    	        afterParserOrEnumRuleCall();
-                    	    	    
-
-                    	    }
-
-
-                    	    }
-
-
-                    	    }
-                    	    break;
-
-                    	default :
-                    	    break loop3;
-                        }
-                    } while (true);
-
-                    otherlv_14=(Token)match(input,15,FollowSets000.FOLLOW_15_in_ruleRepository345); 
-
-                        	newLeafNode(otherlv_14, grammarAccess.getRepositoryAccess().getRightCurlyBracketKeyword_4_4());
-                        
-
-                    }
-                    break;
-
-            }
-
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:211:3: (otherlv_15= 'components' otherlv_16= '{' ( (lv_components_17_0= ruleRepositoryComponent ) ) (otherlv_18= ';' ( (lv_components_19_0= ruleRepositoryComponent ) ) )* otherlv_20= '}' )?
-            int alt6=2;
-            int LA6_0 = input.LA(1);
-
-            if ( (LA6_0==17) ) {
-                alt6=1;
-            }
-            switch (alt6) {
-                case 1 :
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:211:5: otherlv_15= 'components' otherlv_16= '{' ( (lv_components_17_0= ruleRepositoryComponent ) ) (otherlv_18= ';' ( (lv_components_19_0= ruleRepositoryComponent ) ) )* otherlv_20= '}'
-                    {
-                    otherlv_15=(Token)match(input,17,FollowSets000.FOLLOW_17_in_ruleRepository360); 
-
-                        	newLeafNode(otherlv_15, grammarAccess.getRepositoryAccess().getComponentsKeyword_5_0());
-                        
-                    otherlv_16=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleRepository372); 
-
-                        	newLeafNode(otherlv_16, grammarAccess.getRepositoryAccess().getLeftCurlyBracketKeyword_5_1());
-                        
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:219:1: ( (lv_components_17_0= ruleRepositoryComponent ) )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:220:1: (lv_components_17_0= ruleRepositoryComponent )
-                    {
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:220:1: (lv_components_17_0= ruleRepositoryComponent )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:221:3: lv_components_17_0= ruleRepositoryComponent
-                    {
-                     
-                    	        newCompositeNode(grammarAccess.getRepositoryAccess().getComponentsRepositoryComponentParserRuleCall_5_2_0()); 
-                    	    
-                    pushFollow(FollowSets000.FOLLOW_ruleRepositoryComponent_in_ruleRepository393);
-                    lv_components_17_0=ruleRepositoryComponent();
-
-                    state._fsp--;
-
-
-                    	        if (current==null) {
-                    	            current = createModelElementForParent(grammarAccess.getRepositoryRule());
-                    	        }
-                           		add(
-                           			current, 
-                           			"components",
-                            		lv_components_17_0, 
-                            		"RepositoryComponent");
-                    	        afterParserOrEnumRuleCall();
-                    	    
-
-                    }
-
-
-                    }
-
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:237:2: (otherlv_18= ';' ( (lv_components_19_0= ruleRepositoryComponent ) ) )*
-                    loop5:
-                    do {
-                        int alt5=2;
-                        int LA5_0 = input.LA(1);
-
-                        if ( (LA5_0==18) ) {
-                            alt5=1;
-                        }
-
-
-                        switch (alt5) {
-                    	case 1 :
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:237:4: otherlv_18= ';' ( (lv_components_19_0= ruleRepositoryComponent ) )
-                    	    {
-                    	    otherlv_18=(Token)match(input,18,FollowSets000.FOLLOW_18_in_ruleRepository406); 
-
-                    	        	newLeafNode(otherlv_18, grammarAccess.getRepositoryAccess().getSemicolonKeyword_5_3_0());
-                    	        
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:241:1: ( (lv_components_19_0= ruleRepositoryComponent ) )
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:242:1: (lv_components_19_0= ruleRepositoryComponent )
-                    	    {
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:242:1: (lv_components_19_0= ruleRepositoryComponent )
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:243:3: lv_components_19_0= ruleRepositoryComponent
-                    	    {
-                    	     
-                    	    	        newCompositeNode(grammarAccess.getRepositoryAccess().getComponentsRepositoryComponentParserRuleCall_5_3_1_0()); 
-                    	    	    
-                    	    pushFollow(FollowSets000.FOLLOW_ruleRepositoryComponent_in_ruleRepository427);
-                    	    lv_components_19_0=ruleRepositoryComponent();
-
-                    	    state._fsp--;
-
-
-                    	    	        if (current==null) {
-                    	    	            current = createModelElementForParent(grammarAccess.getRepositoryRule());
-                    	    	        }
-                    	           		add(
-                    	           			current, 
-                    	           			"components",
-                    	            		lv_components_19_0, 
-                    	            		"RepositoryComponent");
-                    	    	        afterParserOrEnumRuleCall();
-                    	    	    
-
-                    	    }
-
-
-                    	    }
-
-
-                    	    }
-                    	    break;
-
-                    	default :
-                    	    break loop5;
-                        }
-                    } while (true);
-
-                    otherlv_20=(Token)match(input,15,FollowSets000.FOLLOW_15_in_ruleRepository441); 
-
-                        	newLeafNode(otherlv_20, grammarAccess.getRepositoryAccess().getRightCurlyBracketKeyword_5_4());
-                        
-
-                    }
-                    break;
-
-            }
-
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:263:3: (otherlv_21= 'interfaces' otherlv_22= '{' ( (lv_interfaces_23_0= ruleInterface ) ) (otherlv_24= ',' ( (lv_interfaces_25_0= ruleInterface ) ) )* otherlv_26= '}' )?
-            int alt8=2;
-            int LA8_0 = input.LA(1);
-
-            if ( (LA8_0==19) ) {
-                alt8=1;
-            }
-            switch (alt8) {
-                case 1 :
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:263:5: otherlv_21= 'interfaces' otherlv_22= '{' ( (lv_interfaces_23_0= ruleInterface ) ) (otherlv_24= ',' ( (lv_interfaces_25_0= ruleInterface ) ) )* otherlv_26= '}'
-                    {
-                    otherlv_21=(Token)match(input,19,FollowSets000.FOLLOW_19_in_ruleRepository456); 
-
-                        	newLeafNode(otherlv_21, grammarAccess.getRepositoryAccess().getInterfacesKeyword_6_0());
-                        
-                    otherlv_22=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleRepository468); 
-
-                        	newLeafNode(otherlv_22, grammarAccess.getRepositoryAccess().getLeftCurlyBracketKeyword_6_1());
-                        
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:271:1: ( (lv_interfaces_23_0= ruleInterface ) )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:272:1: (lv_interfaces_23_0= ruleInterface )
-                    {
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:272:1: (lv_interfaces_23_0= ruleInterface )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:273:3: lv_interfaces_23_0= ruleInterface
-                    {
-                     
-                    	        newCompositeNode(grammarAccess.getRepositoryAccess().getInterfacesInterfaceParserRuleCall_6_2_0()); 
-                    	    
-                    pushFollow(FollowSets000.FOLLOW_ruleInterface_in_ruleRepository489);
-                    lv_interfaces_23_0=ruleInterface();
-
-                    state._fsp--;
-
-
-                    	        if (current==null) {
-                    	            current = createModelElementForParent(grammarAccess.getRepositoryRule());
-                    	        }
-                           		add(
-                           			current, 
-                           			"interfaces",
-                            		lv_interfaces_23_0, 
-                            		"Interface");
-                    	        afterParserOrEnumRuleCall();
-                    	    
-
-                    }
-
-
-                    }
-
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:289:2: (otherlv_24= ',' ( (lv_interfaces_25_0= ruleInterface ) ) )*
-                    loop7:
-                    do {
-                        int alt7=2;
-                        int LA7_0 = input.LA(1);
-
-                        if ( (LA7_0==14) ) {
-                            alt7=1;
-                        }
-
-
-                        switch (alt7) {
-                    	case 1 :
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:289:4: otherlv_24= ',' ( (lv_interfaces_25_0= ruleInterface ) )
-                    	    {
-                    	    otherlv_24=(Token)match(input,14,FollowSets000.FOLLOW_14_in_ruleRepository502); 
-
-                    	        	newLeafNode(otherlv_24, grammarAccess.getRepositoryAccess().getCommaKeyword_6_3_0());
-                    	        
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:293:1: ( (lv_interfaces_25_0= ruleInterface ) )
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:294:1: (lv_interfaces_25_0= ruleInterface )
-                    	    {
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:294:1: (lv_interfaces_25_0= ruleInterface )
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:295:3: lv_interfaces_25_0= ruleInterface
-                    	    {
-                    	     
-                    	    	        newCompositeNode(grammarAccess.getRepositoryAccess().getInterfacesInterfaceParserRuleCall_6_3_1_0()); 
-                    	    	    
-                    	    pushFollow(FollowSets000.FOLLOW_ruleInterface_in_ruleRepository523);
-                    	    lv_interfaces_25_0=ruleInterface();
-
-                    	    state._fsp--;
-
-
-                    	    	        if (current==null) {
-                    	    	            current = createModelElementForParent(grammarAccess.getRepositoryRule());
-                    	    	        }
-                    	           		add(
-                    	           			current, 
-                    	           			"interfaces",
-                    	            		lv_interfaces_25_0, 
-                    	            		"Interface");
-                    	    	        afterParserOrEnumRuleCall();
-                    	    	    
-
-                    	    }
-
-
-                    	    }
-
-
-                    	    }
-                    	    break;
-
-                    	default :
-                    	    break loop7;
-                        }
-                    } while (true);
-
-                    otherlv_26=(Token)match(input,15,FollowSets000.FOLLOW_15_in_ruleRepository537); 
-
-                        	newLeafNode(otherlv_26, grammarAccess.getRepositoryAccess().getRightCurlyBracketKeyword_6_4());
-                        
-
-                    }
-                    break;
-
-            }
-
-            otherlv_27=(Token)match(input,15,FollowSets000.FOLLOW_15_in_ruleRepository551); 
-
-                	newLeafNode(otherlv_27, grammarAccess.getRepositoryAccess().getRightCurlyBracketKeyword_7());
-                
-
-            }
-
-
-            }
-
-             leaveRule(); 
-        }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
-                appendSkippedTokens();
-            } 
-        finally {
-        }
-        return current;
-    }
-    // $ANTLR end "ruleRepository"
-
-
-    // $ANTLR start "entryRuleImport"
-    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:327:1: entryRuleImport returns [EObject current=null] : iv_ruleImport= ruleImport EOF ;
-    public final EObject entryRuleImport() throws RecognitionException {
-        EObject current = null;
-
-        EObject iv_ruleImport = null;
-
-
-        try {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:328:2: (iv_ruleImport= ruleImport EOF )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:329:2: iv_ruleImport= ruleImport EOF
-            {
-             newCompositeNode(grammarAccess.getImportRule()); 
-            pushFollow(FollowSets000.FOLLOW_ruleImport_in_entryRuleImport587);
-            iv_ruleImport=ruleImport();
-
-            state._fsp--;
-
-             current =iv_ruleImport; 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleImport597); 
-
-            }
-
-        }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
-                appendSkippedTokens();
-            } 
-        finally {
-        }
-        return current;
-    }
-    // $ANTLR end "entryRuleImport"
-
-
-    // $ANTLR start "ruleImport"
-    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:336:1: ruleImport returns [EObject current=null] : (otherlv_0= 'import' ( (lv_importedNamespace_1_0= ruleQualifiedNameWithWildCard ) ) ) ;
-    public final EObject ruleImport() throws RecognitionException {
-        EObject current = null;
-
-        Token otherlv_0=null;
-        AntlrDatatypeRuleToken lv_importedNamespace_1_0 = null;
-
-
-         enterRule(); 
-            
-        try {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:339:28: ( (otherlv_0= 'import' ( (lv_importedNamespace_1_0= ruleQualifiedNameWithWildCard ) ) ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:340:1: (otherlv_0= 'import' ( (lv_importedNamespace_1_0= ruleQualifiedNameWithWildCard ) ) )
-            {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:340:1: (otherlv_0= 'import' ( (lv_importedNamespace_1_0= ruleQualifiedNameWithWildCard ) ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:340:3: otherlv_0= 'import' ( (lv_importedNamespace_1_0= ruleQualifiedNameWithWildCard ) )
-            {
-            otherlv_0=(Token)match(input,20,FollowSets000.FOLLOW_20_in_ruleImport634); 
-
-                	newLeafNode(otherlv_0, grammarAccess.getImportAccess().getImportKeyword_0());
-                
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:344:1: ( (lv_importedNamespace_1_0= ruleQualifiedNameWithWildCard ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:345:1: (lv_importedNamespace_1_0= ruleQualifiedNameWithWildCard )
-            {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:345:1: (lv_importedNamespace_1_0= ruleQualifiedNameWithWildCard )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:346:3: lv_importedNamespace_1_0= ruleQualifiedNameWithWildCard
-            {
-             
-            	        newCompositeNode(grammarAccess.getImportAccess().getImportedNamespaceQualifiedNameWithWildCardParserRuleCall_1_0()); 
-            	    
-            pushFollow(FollowSets000.FOLLOW_ruleQualifiedNameWithWildCard_in_ruleImport655);
-            lv_importedNamespace_1_0=ruleQualifiedNameWithWildCard();
-
-            state._fsp--;
-
-
-            	        if (current==null) {
-            	            current = createModelElementForParent(grammarAccess.getImportRule());
-            	        }
-                   		set(
-                   			current, 
-                   			"importedNamespace",
-                    		lv_importedNamespace_1_0, 
-                    		"QualifiedNameWithWildCard");
-            	        afterParserOrEnumRuleCall();
-            	    
-
-            }
-
-
-            }
-
-
-            }
-
-
-            }
-
-             leaveRule(); 
-        }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
-                appendSkippedTokens();
-            } 
-        finally {
-        }
-        return current;
-    }
-    // $ANTLR end "ruleImport"
-
-
-    // $ANTLR start "entryRuleQualifiedNameWithWildCard"
-    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:370:1: entryRuleQualifiedNameWithWildCard returns [String current=null] : iv_ruleQualifiedNameWithWildCard= ruleQualifiedNameWithWildCard EOF ;
-    public final String entryRuleQualifiedNameWithWildCard() throws RecognitionException {
-        String current = null;
-
-        AntlrDatatypeRuleToken iv_ruleQualifiedNameWithWildCard = null;
-
-
-        try {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:371:2: (iv_ruleQualifiedNameWithWildCard= ruleQualifiedNameWithWildCard EOF )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:372:2: iv_ruleQualifiedNameWithWildCard= ruleQualifiedNameWithWildCard EOF
-            {
-             newCompositeNode(grammarAccess.getQualifiedNameWithWildCardRule()); 
-            pushFollow(FollowSets000.FOLLOW_ruleQualifiedNameWithWildCard_in_entryRuleQualifiedNameWithWildCard692);
-            iv_ruleQualifiedNameWithWildCard=ruleQualifiedNameWithWildCard();
-
-            state._fsp--;
-
-             current =iv_ruleQualifiedNameWithWildCard.getText(); 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleQualifiedNameWithWildCard703); 
-
-            }
-
-        }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
-                appendSkippedTokens();
-            } 
-        finally {
-        }
-        return current;
-    }
-    // $ANTLR end "entryRuleQualifiedNameWithWildCard"
-
-
-    // $ANTLR start "ruleQualifiedNameWithWildCard"
-    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:379:1: ruleQualifiedNameWithWildCard returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : (this_QualifiedName_0= ruleQualifiedName (kw= '.' kw= '*' )? ) ;
-    public final AntlrDatatypeRuleToken ruleQualifiedNameWithWildCard() throws RecognitionException {
-        AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken();
-
-        Token kw=null;
-        AntlrDatatypeRuleToken this_QualifiedName_0 = null;
-
-
-         enterRule(); 
-            
-        try {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:382:28: ( (this_QualifiedName_0= ruleQualifiedName (kw= '.' kw= '*' )? ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:383:1: (this_QualifiedName_0= ruleQualifiedName (kw= '.' kw= '*' )? )
-            {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:383:1: (this_QualifiedName_0= ruleQualifiedName (kw= '.' kw= '*' )? )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:384:5: this_QualifiedName_0= ruleQualifiedName (kw= '.' kw= '*' )?
-            {
-             
-                    newCompositeNode(grammarAccess.getQualifiedNameWithWildCardAccess().getQualifiedNameParserRuleCall_0()); 
-                
-            pushFollow(FollowSets000.FOLLOW_ruleQualifiedName_in_ruleQualifiedNameWithWildCard750);
-            this_QualifiedName_0=ruleQualifiedName();
-
-            state._fsp--;
-
-
-            		current.merge(this_QualifiedName_0);
-                
-             
-                    afterParserOrEnumRuleCall();
-                
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:394:1: (kw= '.' kw= '*' )?
-            int alt9=2;
-            int LA9_0 = input.LA(1);
-
-            if ( (LA9_0==21) ) {
-                alt9=1;
-            }
-            switch (alt9) {
-                case 1 :
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:395:2: kw= '.' kw= '*'
-                    {
-                    kw=(Token)match(input,21,FollowSets000.FOLLOW_21_in_ruleQualifiedNameWithWildCard769); 
-
-                            current.merge(kw);
-                            newLeafNode(kw, grammarAccess.getQualifiedNameWithWildCardAccess().getFullStopKeyword_1_0()); 
-                        
-                    kw=(Token)match(input,22,FollowSets000.FOLLOW_22_in_ruleQualifiedNameWithWildCard782); 
-
-                            current.merge(kw);
-                            newLeafNode(kw, grammarAccess.getQualifiedNameWithWildCardAccess().getAsteriskKeyword_1_1()); 
-                        
-
-                    }
-                    break;
-
-            }
-
-
-            }
-
-
-            }
-
-             leaveRule(); 
-        }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
-                appendSkippedTokens();
-            } 
-        finally {
-        }
-        return current;
-    }
-    // $ANTLR end "ruleQualifiedNameWithWildCard"
-
-
-    // $ANTLR start "entryRuleQualifiedName"
-    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:414:1: entryRuleQualifiedName returns [String current=null] : iv_ruleQualifiedName= ruleQualifiedName EOF ;
-    public final String entryRuleQualifiedName() throws RecognitionException {
-        String current = null;
-
-        AntlrDatatypeRuleToken iv_ruleQualifiedName = null;
-
-
-        try {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:415:2: (iv_ruleQualifiedName= ruleQualifiedName EOF )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:416:2: iv_ruleQualifiedName= ruleQualifiedName EOF
-            {
-             newCompositeNode(grammarAccess.getQualifiedNameRule()); 
-            pushFollow(FollowSets000.FOLLOW_ruleQualifiedName_in_entryRuleQualifiedName825);
-            iv_ruleQualifiedName=ruleQualifiedName();
-
-            state._fsp--;
-
-             current =iv_ruleQualifiedName.getText(); 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleQualifiedName836); 
-
-            }
-
-        }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
-                appendSkippedTokens();
-            } 
-        finally {
-        }
-        return current;
-    }
-    // $ANTLR end "entryRuleQualifiedName"
-
-
-    // $ANTLR start "ruleQualifiedName"
-    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:423:1: ruleQualifiedName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : (this_ID_0= RULE_ID (kw= '.' this_ID_2= RULE_ID )* ) ;
-    public final AntlrDatatypeRuleToken ruleQualifiedName() throws RecognitionException {
-        AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken();
-
-        Token this_ID_0=null;
-        Token kw=null;
-        Token this_ID_2=null;
-
-         enterRule(); 
-            
-        try {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:426:28: ( (this_ID_0= RULE_ID (kw= '.' this_ID_2= RULE_ID )* ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:427:1: (this_ID_0= RULE_ID (kw= '.' this_ID_2= RULE_ID )* )
-            {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:427:1: (this_ID_0= RULE_ID (kw= '.' this_ID_2= RULE_ID )* )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:427:6: this_ID_0= RULE_ID (kw= '.' this_ID_2= RULE_ID )*
-            {
-            this_ID_0=(Token)match(input,RULE_ID,FollowSets000.FOLLOW_RULE_ID_in_ruleQualifiedName876); 
-
-            		current.merge(this_ID_0);
-                
-             
-                newLeafNode(this_ID_0, grammarAccess.getQualifiedNameAccess().getIDTerminalRuleCall_0()); 
-                
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:434:1: (kw= '.' this_ID_2= RULE_ID )*
-            loop10:
-            do {
-                int alt10=2;
-                int LA10_0 = input.LA(1);
-
-                if ( (LA10_0==21) ) {
-                    int LA10_2 = input.LA(2);
-
-                    if ( (LA10_2==RULE_ID) ) {
-                        alt10=1;
-                    }
-
-
-                }
-
-
-                switch (alt10) {
-            	case 1 :
-            	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:435:2: kw= '.' this_ID_2= RULE_ID
-            	    {
-            	    kw=(Token)match(input,21,FollowSets000.FOLLOW_21_in_ruleQualifiedName895); 
-
-            	            current.merge(kw);
-            	            newLeafNode(kw, grammarAccess.getQualifiedNameAccess().getFullStopKeyword_1_0()); 
-            	        
-            	    this_ID_2=(Token)match(input,RULE_ID,FollowSets000.FOLLOW_RULE_ID_in_ruleQualifiedName910); 
-
-            	    		current.merge(this_ID_2);
-            	        
-            	     
-            	        newLeafNode(this_ID_2, grammarAccess.getQualifiedNameAccess().getIDTerminalRuleCall_1_1()); 
-            	        
-
-            	    }
-            	    break;
-
-            	default :
-            	    break loop10;
-                }
-            } while (true);
-
-
-            }
-
-
-            }
-
-             leaveRule(); 
-        }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
-                appendSkippedTokens();
-            } 
-        finally {
-        }
-        return current;
-    }
-    // $ANTLR end "ruleQualifiedName"
-
-
-    // $ANTLR start "entryRuleDataType"
-    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:455:1: entryRuleDataType returns [EObject current=null] : iv_ruleDataType= ruleDataType EOF ;
-    public final EObject entryRuleDataType() throws RecognitionException {
-        EObject current = null;
-
-        EObject iv_ruleDataType = null;
-
-
-        try {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:456:2: (iv_ruleDataType= ruleDataType EOF )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:457:2: iv_ruleDataType= ruleDataType EOF
-            {
-             newCompositeNode(grammarAccess.getDataTypeRule()); 
-            pushFollow(FollowSets000.FOLLOW_ruleDataType_in_entryRuleDataType957);
-            iv_ruleDataType=ruleDataType();
-
-            state._fsp--;
-
-             current =iv_ruleDataType; 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleDataType967); 
-
-            }
-
-        }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
-                appendSkippedTokens();
-            } 
-        finally {
-        }
-        return current;
-    }
-    // $ANTLR end "entryRuleDataType"
-
-
-    // $ANTLR start "ruleDataType"
-    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:464:1: ruleDataType returns [EObject current=null] : (this_CollectionDataType_0= ruleCollectionDataType | this_CompositeDataType_1= ruleCompositeDataType | this_PrimitiveDataType_2= rulePrimitiveDataType ) ;
-    public final EObject ruleDataType() throws RecognitionException {
-        EObject current = null;
-
-        EObject this_CollectionDataType_0 = null;
-
-        EObject this_CompositeDataType_1 = null;
-
-        EObject this_PrimitiveDataType_2 = null;
-
-
-         enterRule(); 
-            
-        try {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:467:28: ( (this_CollectionDataType_0= ruleCollectionDataType | this_CompositeDataType_1= ruleCompositeDataType | this_PrimitiveDataType_2= rulePrimitiveDataType ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:468:1: (this_CollectionDataType_0= ruleCollectionDataType | this_CompositeDataType_1= ruleCompositeDataType | this_PrimitiveDataType_2= rulePrimitiveDataType )
-            {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:468:1: (this_CollectionDataType_0= ruleCollectionDataType | this_CompositeDataType_1= ruleCompositeDataType | this_PrimitiveDataType_2= rulePrimitiveDataType )
-            int alt11=3;
-            switch ( input.LA(1) ) {
-            case 31:
-                {
-                alt11=1;
-                }
-                break;
-            case 33:
-                {
-                alt11=2;
-                }
-                break;
-            case 36:
-                {
-                alt11=3;
-                }
-                break;
-            default:
-                NoViableAltException nvae =
-                    new NoViableAltException("", 11, 0, input);
-
-                throw nvae;
-            }
-
-            switch (alt11) {
-                case 1 :
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:469:5: this_CollectionDataType_0= ruleCollectionDataType
-                    {
-                     
-                            newCompositeNode(grammarAccess.getDataTypeAccess().getCollectionDataTypeParserRuleCall_0()); 
-                        
-                    pushFollow(FollowSets000.FOLLOW_ruleCollectionDataType_in_ruleDataType1014);
-                    this_CollectionDataType_0=ruleCollectionDataType();
-
-                    state._fsp--;
-
-                     
-                            current = this_CollectionDataType_0; 
-                            afterParserOrEnumRuleCall();
-                        
-
-                    }
-                    break;
-                case 2 :
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:479:5: this_CompositeDataType_1= ruleCompositeDataType
-                    {
-                     
-                            newCompositeNode(grammarAccess.getDataTypeAccess().getCompositeDataTypeParserRuleCall_1()); 
-                        
-                    pushFollow(FollowSets000.FOLLOW_ruleCompositeDataType_in_ruleDataType1041);
-                    this_CompositeDataType_1=ruleCompositeDataType();
-
-                    state._fsp--;
-
-                     
-                            current = this_CompositeDataType_1; 
-                            afterParserOrEnumRuleCall();
-                        
-
-                    }
-                    break;
-                case 3 :
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:489:5: this_PrimitiveDataType_2= rulePrimitiveDataType
-                    {
-                     
-                            newCompositeNode(grammarAccess.getDataTypeAccess().getPrimitiveDataTypeParserRuleCall_2()); 
-                        
-                    pushFollow(FollowSets000.FOLLOW_rulePrimitiveDataType_in_ruleDataType1068);
-                    this_PrimitiveDataType_2=rulePrimitiveDataType();
-
-                    state._fsp--;
-
-                     
-                            current = this_PrimitiveDataType_2; 
-                            afterParserOrEnumRuleCall();
-                        
-
-                    }
-                    break;
-
-            }
-
-
-            }
-
-             leaveRule(); 
-        }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
-                appendSkippedTokens();
-            } 
-        finally {
-        }
-        return current;
-    }
-    // $ANTLR end "ruleDataType"
-
-
-    // $ANTLR start "entryRuleRepositoryComponent"
-    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:505:1: entryRuleRepositoryComponent returns [EObject current=null] : iv_ruleRepositoryComponent= ruleRepositoryComponent EOF ;
-    public final EObject entryRuleRepositoryComponent() throws RecognitionException {
-        EObject current = null;
-
-        EObject iv_ruleRepositoryComponent = null;
-
-
-        try {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:506:2: (iv_ruleRepositoryComponent= ruleRepositoryComponent EOF )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:507:2: iv_ruleRepositoryComponent= ruleRepositoryComponent EOF
-            {
-             newCompositeNode(grammarAccess.getRepositoryComponentRule()); 
-            pushFollow(FollowSets000.FOLLOW_ruleRepositoryComponent_in_entryRuleRepositoryComponent1103);
-            iv_ruleRepositoryComponent=ruleRepositoryComponent();
-
-            state._fsp--;
-
-             current =iv_ruleRepositoryComponent; 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleRepositoryComponent1113); 
-
-            }
-
-        }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
-                appendSkippedTokens();
-            } 
-        finally {
-        }
-        return current;
-    }
-    // $ANTLR end "entryRuleRepositoryComponent"
-
-
-    // $ANTLR start "ruleRepositoryComponent"
-    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:514:1: ruleRepositoryComponent returns [EObject current=null] : (this_RepositoryComponent_Impl_0= ruleRepositoryComponent_Impl | this_BasicComponent_1= ruleBasicComponent | this_CompositeComponent_2= ruleCompositeComponent | this_SubSystem_3= ruleSubSystem ) ;
-    public final EObject ruleRepositoryComponent() throws RecognitionException {
-        EObject current = null;
-
-        EObject this_RepositoryComponent_Impl_0 = null;
-
-        EObject this_BasicComponent_1 = null;
-
-        EObject this_CompositeComponent_2 = null;
-
-        EObject this_SubSystem_3 = null;
-
-
-         enterRule(); 
-            
-        try {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:517:28: ( (this_RepositoryComponent_Impl_0= ruleRepositoryComponent_Impl | this_BasicComponent_1= ruleBasicComponent | this_CompositeComponent_2= ruleCompositeComponent | this_SubSystem_3= ruleSubSystem ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:518:1: (this_RepositoryComponent_Impl_0= ruleRepositoryComponent_Impl | this_BasicComponent_1= ruleBasicComponent | this_CompositeComponent_2= ruleCompositeComponent | this_SubSystem_3= ruleSubSystem )
-            {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:518:1: (this_RepositoryComponent_Impl_0= ruleRepositoryComponent_Impl | this_BasicComponent_1= ruleBasicComponent | this_CompositeComponent_2= ruleCompositeComponent | this_SubSystem_3= ruleSubSystem )
-            int alt12=4;
-            switch ( input.LA(1) ) {
-            case 27:
-                {
-                alt12=1;
-                }
-                break;
-            case 44:
-                {
-                alt12=2;
-                }
-                break;
-            case 45:
-                {
-                alt12=3;
-                }
-                break;
-            case 47:
-                {
-                alt12=4;
-                }
-                break;
-            default:
-                NoViableAltException nvae =
-                    new NoViableAltException("", 12, 0, input);
-
-                throw nvae;
-            }
-
-            switch (alt12) {
-                case 1 :
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:519:5: this_RepositoryComponent_Impl_0= ruleRepositoryComponent_Impl
-                    {
-                     
-                            newCompositeNode(grammarAccess.getRepositoryComponentAccess().getRepositoryComponent_ImplParserRuleCall_0()); 
-                        
-                    pushFollow(FollowSets000.FOLLOW_ruleRepositoryComponent_Impl_in_ruleRepositoryComponent1160);
-                    this_RepositoryComponent_Impl_0=ruleRepositoryComponent_Impl();
-
-                    state._fsp--;
-
-                     
-                            current = this_RepositoryComponent_Impl_0; 
-                            afterParserOrEnumRuleCall();
-                        
-
-                    }
-                    break;
-                case 2 :
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:529:5: this_BasicComponent_1= ruleBasicComponent
-                    {
-                     
-                            newCompositeNode(grammarAccess.getRepositoryComponentAccess().getBasicComponentParserRuleCall_1()); 
-                        
-                    pushFollow(FollowSets000.FOLLOW_ruleBasicComponent_in_ruleRepositoryComponent1187);
-                    this_BasicComponent_1=ruleBasicComponent();
-
-                    state._fsp--;
-
-                     
-                            current = this_BasicComponent_1; 
-                            afterParserOrEnumRuleCall();
-                        
-
-                    }
-                    break;
-                case 3 :
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:539:5: this_CompositeComponent_2= ruleCompositeComponent
-                    {
-                     
-                            newCompositeNode(grammarAccess.getRepositoryComponentAccess().getCompositeComponentParserRuleCall_2()); 
-                        
-                    pushFollow(FollowSets000.FOLLOW_ruleCompositeComponent_in_ruleRepositoryComponent1214);
-                    this_CompositeComponent_2=ruleCompositeComponent();
-
-                    state._fsp--;
-
-                     
-                            current = this_CompositeComponent_2; 
-                            afterParserOrEnumRuleCall();
-                        
-
-                    }
-                    break;
-                case 4 :
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:549:5: this_SubSystem_3= ruleSubSystem
-                    {
-                     
-                            newCompositeNode(grammarAccess.getRepositoryComponentAccess().getSubSystemParserRuleCall_3()); 
-                        
-                    pushFollow(FollowSets000.FOLLOW_ruleSubSystem_in_ruleRepositoryComponent1241);
-                    this_SubSystem_3=ruleSubSystem();
-
-                    state._fsp--;
-
-                     
-                            current = this_SubSystem_3; 
-                            afterParserOrEnumRuleCall();
-                        
-
-                    }
-                    break;
-
-            }
-
-
-            }
-
-             leaveRule(); 
-        }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
-                appendSkippedTokens();
-            } 
-        finally {
-        }
-        return current;
-    }
-    // $ANTLR end "ruleRepositoryComponent"
-
-
-    // $ANTLR start "entryRuleEString"
-    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:565:1: entryRuleEString returns [String current=null] : iv_ruleEString= ruleEString EOF ;
-    public final String entryRuleEString() throws RecognitionException {
-        String current = null;
-
-        AntlrDatatypeRuleToken iv_ruleEString = null;
-
-
-        try {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:566:2: (iv_ruleEString= ruleEString EOF )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:567:2: iv_ruleEString= ruleEString EOF
-            {
-             newCompositeNode(grammarAccess.getEStringRule()); 
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_entryRuleEString1277);
-            iv_ruleEString=ruleEString();
-
-            state._fsp--;
-
-             current =iv_ruleEString.getText(); 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleEString1288); 
-
-            }
-
-        }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
-                appendSkippedTokens();
-            } 
-        finally {
-        }
-        return current;
-    }
-    // $ANTLR end "entryRuleEString"
-
-
-    // $ANTLR start "ruleEString"
-    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:574:1: ruleEString returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : (this_STRING_0= RULE_STRING | this_ID_1= RULE_ID ) ;
-    public final AntlrDatatypeRuleToken ruleEString() throws RecognitionException {
-        AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken();
-
-        Token this_STRING_0=null;
-        Token this_ID_1=null;
-
-         enterRule(); 
-            
-        try {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:577:28: ( (this_STRING_0= RULE_STRING | this_ID_1= RULE_ID ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:578:1: (this_STRING_0= RULE_STRING | this_ID_1= RULE_ID )
-            {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:578:1: (this_STRING_0= RULE_STRING | this_ID_1= RULE_ID )
-            int alt13=2;
-            int LA13_0 = input.LA(1);
-
-            if ( (LA13_0==RULE_STRING) ) {
-                alt13=1;
-            }
-            else if ( (LA13_0==RULE_ID) ) {
-                alt13=2;
-            }
-            else {
-                NoViableAltException nvae =
-                    new NoViableAltException("", 13, 0, input);
-
-                throw nvae;
-            }
-            switch (alt13) {
-                case 1 :
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:578:6: this_STRING_0= RULE_STRING
-                    {
-                    this_STRING_0=(Token)match(input,RULE_STRING,FollowSets000.FOLLOW_RULE_STRING_in_ruleEString1328); 
-
-                    		current.merge(this_STRING_0);
-                        
-                     
-                        newLeafNode(this_STRING_0, grammarAccess.getEStringAccess().getSTRINGTerminalRuleCall_0()); 
-                        
-
-                    }
-                    break;
-                case 2 :
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:586:10: this_ID_1= RULE_ID
-                    {
-                    this_ID_1=(Token)match(input,RULE_ID,FollowSets000.FOLLOW_RULE_ID_in_ruleEString1354); 
-
-                    		current.merge(this_ID_1);
-                        
-                     
-                        newLeafNode(this_ID_1, grammarAccess.getEStringAccess().getIDTerminalRuleCall_1()); 
-                        
-
-                    }
-                    break;
-
-            }
-
-
-            }
-
-             leaveRule(); 
-        }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
-                appendSkippedTokens();
-            } 
-        finally {
-        }
-        return current;
-    }
-    // $ANTLR end "ruleEString"
-
-
-    // $ANTLR start "entryRuleInterface"
-    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:601:1: entryRuleInterface returns [EObject current=null] : iv_ruleInterface= ruleInterface EOF ;
-    public final EObject entryRuleInterface() throws RecognitionException {
-        EObject current = null;
-
-        EObject iv_ruleInterface = null;
-
-
-        try {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:602:2: (iv_ruleInterface= ruleInterface EOF )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:603:2: iv_ruleInterface= ruleInterface EOF
-            {
-             newCompositeNode(grammarAccess.getInterfaceRule()); 
-            pushFollow(FollowSets000.FOLLOW_ruleInterface_in_entryRuleInterface1399);
-            iv_ruleInterface=ruleInterface();
-
-            state._fsp--;
-
-             current =iv_ruleInterface; 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleInterface1409); 
-
-            }
-
-        }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
-                appendSkippedTokens();
-            } 
-        finally {
-        }
-        return current;
-    }
-    // $ANTLR end "entryRuleInterface"
-
-
-    // $ANTLR start "ruleInterface"
-    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:610:1: ruleInterface returns [EObject current=null] : (otherlv_0= 'Interface' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' (otherlv_3= 'parentInterfaces' otherlv_4= '(' ( ( ruleEString ) ) (otherlv_6= ',' ( ( ruleEString ) ) )* otherlv_8= ')' )? ( ( (lv_signatures_9_0= ruleSignature ) ) (otherlv_10= ',' ( (lv_signatures_11_0= ruleSignature ) ) )* )? otherlv_12= '}' ) ;
-    public final EObject ruleInterface() throws RecognitionException {
-        EObject current = null;
-
-        Token otherlv_0=null;
-        Token otherlv_2=null;
-        Token otherlv_3=null;
-        Token otherlv_4=null;
-        Token otherlv_6=null;
-        Token otherlv_8=null;
-        Token otherlv_10=null;
-        Token otherlv_12=null;
-        AntlrDatatypeRuleToken lv_name_1_0 = null;
-
-        EObject lv_signatures_9_0 = null;
-
-        EObject lv_signatures_11_0 = null;
-
-
-         enterRule(); 
-            
-        try {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:613:28: ( (otherlv_0= 'Interface' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' (otherlv_3= 'parentInterfaces' otherlv_4= '(' ( ( ruleEString ) ) (otherlv_6= ',' ( ( ruleEString ) ) )* otherlv_8= ')' )? ( ( (lv_signatures_9_0= ruleSignature ) ) (otherlv_10= ',' ( (lv_signatures_11_0= ruleSignature ) ) )* )? otherlv_12= '}' ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:614:1: (otherlv_0= 'Interface' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' (otherlv_3= 'parentInterfaces' otherlv_4= '(' ( ( ruleEString ) ) (otherlv_6= ',' ( ( ruleEString ) ) )* otherlv_8= ')' )? ( ( (lv_signatures_9_0= ruleSignature ) ) (otherlv_10= ',' ( (lv_signatures_11_0= ruleSignature ) ) )* )? otherlv_12= '}' )
-            {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:614:1: (otherlv_0= 'Interface' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' (otherlv_3= 'parentInterfaces' otherlv_4= '(' ( ( ruleEString ) ) (otherlv_6= ',' ( ( ruleEString ) ) )* otherlv_8= ')' )? ( ( (lv_signatures_9_0= ruleSignature ) ) (otherlv_10= ',' ( (lv_signatures_11_0= ruleSignature ) ) )* )? otherlv_12= '}' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:614:3: otherlv_0= 'Interface' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' (otherlv_3= 'parentInterfaces' otherlv_4= '(' ( ( ruleEString ) ) (otherlv_6= ',' ( ( ruleEString ) ) )* otherlv_8= ')' )? ( ( (lv_signatures_9_0= ruleSignature ) ) (otherlv_10= ',' ( (lv_signatures_11_0= ruleSignature ) ) )* )? otherlv_12= '}'
-            {
-            otherlv_0=(Token)match(input,23,FollowSets000.FOLLOW_23_in_ruleInterface1446); 
-
-                	newLeafNode(otherlv_0, grammarAccess.getInterfaceAccess().getInterfaceKeyword_0());
-                
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:618:1: ( (lv_name_1_0= ruleEString ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:619:1: (lv_name_1_0= ruleEString )
-            {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:619:1: (lv_name_1_0= ruleEString )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:620:3: lv_name_1_0= ruleEString
-            {
-             
-            	        newCompositeNode(grammarAccess.getInterfaceAccess().getNameEStringParserRuleCall_1_0()); 
-            	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleInterface1467);
-            lv_name_1_0=ruleEString();
-
-            state._fsp--;
-
-
-            	        if (current==null) {
-            	            current = createModelElementForParent(grammarAccess.getInterfaceRule());
-            	        }
-                   		set(
-                   			current, 
-                   			"name",
-                    		lv_name_1_0, 
-                    		"EString");
-            	        afterParserOrEnumRuleCall();
-            	    
-
-            }
-
-
-            }
-
-            otherlv_2=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleInterface1479); 
-
-                	newLeafNode(otherlv_2, grammarAccess.getInterfaceAccess().getLeftCurlyBracketKeyword_2());
-                
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:640:1: (otherlv_3= 'parentInterfaces' otherlv_4= '(' ( ( ruleEString ) ) (otherlv_6= ',' ( ( ruleEString ) ) )* otherlv_8= ')' )?
-            int alt15=2;
-            int LA15_0 = input.LA(1);
-
-            if ( (LA15_0==24) ) {
-                alt15=1;
-            }
-            switch (alt15) {
-                case 1 :
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:640:3: otherlv_3= 'parentInterfaces' otherlv_4= '(' ( ( ruleEString ) ) (otherlv_6= ',' ( ( ruleEString ) ) )* otherlv_8= ')'
-                    {
-                    otherlv_3=(Token)match(input,24,FollowSets000.FOLLOW_24_in_ruleInterface1492); 
-
-                        	newLeafNode(otherlv_3, grammarAccess.getInterfaceAccess().getParentInterfacesKeyword_3_0());
-                        
-                    otherlv_4=(Token)match(input,25,FollowSets000.FOLLOW_25_in_ruleInterface1504); 
-
-                        	newLeafNode(otherlv_4, grammarAccess.getInterfaceAccess().getLeftParenthesisKeyword_3_1());
-                        
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:648:1: ( ( ruleEString ) )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:649:1: ( ruleEString )
-                    {
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:649:1: ( ruleEString )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:650:3: ruleEString
-                    {
-
-                    			if (current==null) {
-                    	            current = createModelElement(grammarAccess.getInterfaceRule());
-                    	        }
-                            
-                     
-                    	        newCompositeNode(grammarAccess.getInterfaceAccess().getParentInterfacesInterfaceCrossReference_3_2_0()); 
-                    	    
-                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleInterface1527);
-                    ruleEString();
-
-                    state._fsp--;
-
-                     
-                    	        afterParserOrEnumRuleCall();
-                    	    
-
-                    }
-
-
-                    }
-
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:663:2: (otherlv_6= ',' ( ( ruleEString ) ) )*
-                    loop14:
-                    do {
-                        int alt14=2;
-                        int LA14_0 = input.LA(1);
-
-                        if ( (LA14_0==14) ) {
-                            alt14=1;
-                        }
-
-
-                        switch (alt14) {
-                    	case 1 :
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:663:4: otherlv_6= ',' ( ( ruleEString ) )
-                    	    {
-                    	    otherlv_6=(Token)match(input,14,FollowSets000.FOLLOW_14_in_ruleInterface1540); 
-
-                    	        	newLeafNode(otherlv_6, grammarAccess.getInterfaceAccess().getCommaKeyword_3_3_0());
-                    	        
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:667:1: ( ( ruleEString ) )
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:668:1: ( ruleEString )
-                    	    {
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:668:1: ( ruleEString )
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:669:3: ruleEString
-                    	    {
-
-                    	    			if (current==null) {
-                    	    	            current = createModelElement(grammarAccess.getInterfaceRule());
-                    	    	        }
-                    	            
-                    	     
-                    	    	        newCompositeNode(grammarAccess.getInterfaceAccess().getParentInterfacesInterfaceCrossReference_3_3_1_0()); 
-                    	    	    
-                    	    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleInterface1563);
-                    	    ruleEString();
-
-                    	    state._fsp--;
-
-                    	     
-                    	    	        afterParserOrEnumRuleCall();
-                    	    	    
-
-                    	    }
-
-
-                    	    }
-
-
-                    	    }
-                    	    break;
-
-                    	default :
-                    	    break loop14;
-                        }
-                    } while (true);
-
-                    otherlv_8=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleInterface1577); 
-
-                        	newLeafNode(otherlv_8, grammarAccess.getInterfaceAccess().getRightParenthesisKeyword_3_4());
-                        
-
-                    }
-                    break;
-
-            }
-
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:686:3: ( ( (lv_signatures_9_0= ruleSignature ) ) (otherlv_10= ',' ( (lv_signatures_11_0= ruleSignature ) ) )* )?
-            int alt17=2;
-            int LA17_0 = input.LA(1);
-
-            if ( ((LA17_0>=RULE_ID && LA17_0<=RULE_STRING)||LA17_0==41) ) {
-                alt17=1;
-            }
-            switch (alt17) {
-                case 1 :
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:686:4: ( (lv_signatures_9_0= ruleSignature ) ) (otherlv_10= ',' ( (lv_signatures_11_0= ruleSignature ) ) )*
-                    {
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:686:4: ( (lv_signatures_9_0= ruleSignature ) )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:687:1: (lv_signatures_9_0= ruleSignature )
-                    {
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:687:1: (lv_signatures_9_0= ruleSignature )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:688:3: lv_signatures_9_0= ruleSignature
-                    {
-                     
-                    	        newCompositeNode(grammarAccess.getInterfaceAccess().getSignaturesSignatureParserRuleCall_4_0_0()); 
-                    	    
-                    pushFollow(FollowSets000.FOLLOW_ruleSignature_in_ruleInterface1601);
-                    lv_signatures_9_0=ruleSignature();
-
-                    state._fsp--;
-
-
-                    	        if (current==null) {
-                    	            current = createModelElementForParent(grammarAccess.getInterfaceRule());
-                    	        }
-                           		add(
-                           			current, 
-                           			"signatures",
-                            		lv_signatures_9_0, 
-                            		"Signature");
-                    	        afterParserOrEnumRuleCall();
-                    	    
-
-                    }
-
-
-                    }
-
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:704:2: (otherlv_10= ',' ( (lv_signatures_11_0= ruleSignature ) ) )*
-                    loop16:
-                    do {
-                        int alt16=2;
-                        int LA16_0 = input.LA(1);
-
-                        if ( (LA16_0==14) ) {
-                            alt16=1;
-                        }
-
-
-                        switch (alt16) {
-                    	case 1 :
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:704:4: otherlv_10= ',' ( (lv_signatures_11_0= ruleSignature ) )
-                    	    {
-                    	    otherlv_10=(Token)match(input,14,FollowSets000.FOLLOW_14_in_ruleInterface1614); 
-
-                    	        	newLeafNode(otherlv_10, grammarAccess.getInterfaceAccess().getCommaKeyword_4_1_0());
-                    	        
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:708:1: ( (lv_signatures_11_0= ruleSignature ) )
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:709:1: (lv_signatures_11_0= ruleSignature )
-                    	    {
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:709:1: (lv_signatures_11_0= ruleSignature )
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:710:3: lv_signatures_11_0= ruleSignature
-                    	    {
-                    	     
-                    	    	        newCompositeNode(grammarAccess.getInterfaceAccess().getSignaturesSignatureParserRuleCall_4_1_1_0()); 
-                    	    	    
-                    	    pushFollow(FollowSets000.FOLLOW_ruleSignature_in_ruleInterface1635);
-                    	    lv_signatures_11_0=ruleSignature();
-
-                    	    state._fsp--;
-
-
-                    	    	        if (current==null) {
-                    	    	            current = createModelElementForParent(grammarAccess.getInterfaceRule());
-                    	    	        }
-                    	           		add(
-                    	           			current, 
-                    	           			"signatures",
-                    	            		lv_signatures_11_0, 
-                    	            		"Signature");
-                    	    	        afterParserOrEnumRuleCall();
-                    	    	    
-
-                    	    }
-
-
-                    	    }
-
-
-                    	    }
-                    	    break;
-
-                    	default :
-                    	    break loop16;
-                        }
-                    } while (true);
-
-
-                    }
-                    break;
-
-            }
-
-            otherlv_12=(Token)match(input,15,FollowSets000.FOLLOW_15_in_ruleInterface1651); 
-
-                	newLeafNode(otherlv_12, grammarAccess.getInterfaceAccess().getRightCurlyBracketKeyword_5());
-                
-
-            }
-
-
-            }
-
-             leaveRule(); 
-        }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
-                appendSkippedTokens();
-            } 
-        finally {
-        }
-        return current;
-    }
-    // $ANTLR end "ruleInterface"
-
-
-    // $ANTLR start "entryRuleRepositoryComponent_Impl"
-    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:738:1: entryRuleRepositoryComponent_Impl returns [EObject current=null] : iv_ruleRepositoryComponent_Impl= ruleRepositoryComponent_Impl EOF ;
-    public final EObject entryRuleRepositoryComponent_Impl() throws RecognitionException {
-        EObject current = null;
-
-        EObject iv_ruleRepositoryComponent_Impl = null;
-
-
-        try {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:739:2: (iv_ruleRepositoryComponent_Impl= ruleRepositoryComponent_Impl EOF )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:740:2: iv_ruleRepositoryComponent_Impl= ruleRepositoryComponent_Impl EOF
-            {
-             newCompositeNode(grammarAccess.getRepositoryComponent_ImplRule()); 
-            pushFollow(FollowSets000.FOLLOW_ruleRepositoryComponent_Impl_in_entryRuleRepositoryComponent_Impl1687);
-            iv_ruleRepositoryComponent_Impl=ruleRepositoryComponent_Impl();
-
-            state._fsp--;
-
-             current =iv_ruleRepositoryComponent_Impl; 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleRepositoryComponent_Impl1697); 
-
-            }
-
-        }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
-                appendSkippedTokens();
-            } 
-        finally {
-        }
-        return current;
-    }
-    // $ANTLR end "entryRuleRepositoryComponent_Impl"
-
-
-    // $ANTLR start "ruleRepositoryComponent_Impl"
-    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:747:1: ruleRepositoryComponent_Impl returns [EObject current=null] : (otherlv_0= 'RepositoryComponent' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' (otherlv_3= 'relationship' otherlv_4= '(' ( ( ruleEString ) ) (otherlv_6= ',' ( ( ruleEString ) ) )* otherlv_8= ')' )? (otherlv_9= 'providedRoles' otherlv_10= '{' ( (lv_providedRoles_11_0= ruleProvidedRole ) ) (otherlv_12= ',' ( (lv_providedRoles_13_0= ruleProvidedRole ) ) )* otherlv_14= '}' )? (otherlv_15= 'requiredRoles' otherlv_16= '{' ( (lv_requiredRoles_17_0= ruleRequiredRole ) ) (otherlv_18= ',' ( (lv_requiredRoles_19_0= ruleRequiredRole ) ) )* otherlv_20= '}' )? otherlv_21= '}' ) ;
-    public final EObject ruleRepositoryComponent_Impl() throws RecognitionException {
-        EObject current = null;
-
-        Token otherlv_0=null;
-        Token otherlv_2=null;
-        Token otherlv_3=null;
-        Token otherlv_4=null;
-        Token otherlv_6=null;
-        Token otherlv_8=null;
-        Token otherlv_9=null;
-        Token otherlv_10=null;
-        Token otherlv_12=null;
-        Token otherlv_14=null;
-        Token otherlv_15=null;
-        Token otherlv_16=null;
-        Token otherlv_18=null;
-        Token otherlv_20=null;
-        Token otherlv_21=null;
-        AntlrDatatypeRuleToken lv_name_1_0 = null;
-
-        EObject lv_providedRoles_11_0 = null;
-
-        EObject lv_providedRoles_13_0 = null;
-
-        EObject lv_requiredRoles_17_0 = null;
-
-        EObject lv_requiredRoles_19_0 = null;
-
-
-         enterRule(); 
-            
-        try {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:750:28: ( (otherlv_0= 'RepositoryComponent' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' (otherlv_3= 'relationship' otherlv_4= '(' ( ( ruleEString ) ) (otherlv_6= ',' ( ( ruleEString ) ) )* otherlv_8= ')' )? (otherlv_9= 'providedRoles' otherlv_10= '{' ( (lv_providedRoles_11_0= ruleProvidedRole ) ) (otherlv_12= ',' ( (lv_providedRoles_13_0= ruleProvidedRole ) ) )* otherlv_14= '}' )? (otherlv_15= 'requiredRoles' otherlv_16= '{' ( (lv_requiredRoles_17_0= ruleRequiredRole ) ) (otherlv_18= ',' ( (lv_requiredRoles_19_0= ruleRequiredRole ) ) )* otherlv_20= '}' )? otherlv_21= '}' ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:751:1: (otherlv_0= 'RepositoryComponent' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' (otherlv_3= 'relationship' otherlv_4= '(' ( ( ruleEString ) ) (otherlv_6= ',' ( ( ruleEString ) ) )* otherlv_8= ')' )? (otherlv_9= 'providedRoles' otherlv_10= '{' ( (lv_providedRoles_11_0= ruleProvidedRole ) ) (otherlv_12= ',' ( (lv_providedRoles_13_0= ruleProvidedRole ) ) )* otherlv_14= '}' )? (otherlv_15= 'requiredRoles' otherlv_16= '{' ( (lv_requiredRoles_17_0= ruleRequiredRole ) ) (otherlv_18= ',' ( (lv_requiredRoles_19_0= ruleRequiredRole ) ) )* otherlv_20= '}' )? otherlv_21= '}' )
-            {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:751:1: (otherlv_0= 'RepositoryComponent' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' (otherlv_3= 'relationship' otherlv_4= '(' ( ( ruleEString ) ) (otherlv_6= ',' ( ( ruleEString ) ) )* otherlv_8= ')' )? (otherlv_9= 'providedRoles' otherlv_10= '{' ( (lv_providedRoles_11_0= ruleProvidedRole ) ) (otherlv_12= ',' ( (lv_providedRoles_13_0= ruleProvidedRole ) ) )* otherlv_14= '}' )? (otherlv_15= 'requiredRoles' otherlv_16= '{' ( (lv_requiredRoles_17_0= ruleRequiredRole ) ) (otherlv_18= ',' ( (lv_requiredRoles_19_0= ruleRequiredRole ) ) )* otherlv_20= '}' )? otherlv_21= '}' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:751:3: otherlv_0= 'RepositoryComponent' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' (otherlv_3= 'relationship' otherlv_4= '(' ( ( ruleEString ) ) (otherlv_6= ',' ( ( ruleEString ) ) )* otherlv_8= ')' )? (otherlv_9= 'providedRoles' otherlv_10= '{' ( (lv_providedRoles_11_0= ruleProvidedRole ) ) (otherlv_12= ',' ( (lv_providedRoles_13_0= ruleProvidedRole ) ) )* otherlv_14= '}' )? (otherlv_15= 'requiredRoles' otherlv_16= '{' ( (lv_requiredRoles_17_0= ruleRequiredRole ) ) (otherlv_18= ',' ( (lv_requiredRoles_19_0= ruleRequiredRole ) ) )* otherlv_20= '}' )? otherlv_21= '}'
-            {
-            otherlv_0=(Token)match(input,27,FollowSets000.FOLLOW_27_in_ruleRepositoryComponent_Impl1734); 
-
-                	newLeafNode(otherlv_0, grammarAccess.getRepositoryComponent_ImplAccess().getRepositoryComponentKeyword_0());
-                
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:755:1: ( (lv_name_1_0= ruleEString ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:756:1: (lv_name_1_0= ruleEString )
-            {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:756:1: (lv_name_1_0= ruleEString )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:757:3: lv_name_1_0= ruleEString
-            {
-             
-            	        newCompositeNode(grammarAccess.getRepositoryComponent_ImplAccess().getNameEStringParserRuleCall_1_0()); 
-            	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleRepositoryComponent_Impl1755);
-            lv_name_1_0=ruleEString();
-
-            state._fsp--;
-
-
-            	        if (current==null) {
-            	            current = createModelElementForParent(grammarAccess.getRepositoryComponent_ImplRule());
-            	        }
-                   		set(
-                   			current, 
-                   			"name",
-                    		lv_name_1_0, 
-                    		"EString");
-            	        afterParserOrEnumRuleCall();
-            	    
-
-            }
-
-
-            }
-
-            otherlv_2=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleRepositoryComponent_Impl1767); 
-
-                	newLeafNode(otherlv_2, grammarAccess.getRepositoryComponent_ImplAccess().getLeftCurlyBracketKeyword_2());
-                
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:777:1: (otherlv_3= 'relationship' otherlv_4= '(' ( ( ruleEString ) ) (otherlv_6= ',' ( ( ruleEString ) ) )* otherlv_8= ')' )?
-            int alt19=2;
-            int LA19_0 = input.LA(1);
-
-            if ( (LA19_0==28) ) {
-                alt19=1;
-            }
-            switch (alt19) {
-                case 1 :
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:777:3: otherlv_3= 'relationship' otherlv_4= '(' ( ( ruleEString ) ) (otherlv_6= ',' ( ( ruleEString ) ) )* otherlv_8= ')'
-                    {
-                    otherlv_3=(Token)match(input,28,FollowSets000.FOLLOW_28_in_ruleRepositoryComponent_Impl1780); 
-
-                        	newLeafNode(otherlv_3, grammarAccess.getRepositoryComponent_ImplAccess().getRelationshipKeyword_3_0());
-                        
-                    otherlv_4=(Token)match(input,25,FollowSets000.FOLLOW_25_in_ruleRepositoryComponent_Impl1792); 
-
-                        	newLeafNode(otherlv_4, grammarAccess.getRepositoryComponent_ImplAccess().getLeftParenthesisKeyword_3_1());
-                        
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:785:1: ( ( ruleEString ) )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:786:1: ( ruleEString )
-                    {
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:786:1: ( ruleEString )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:787:3: ruleEString
-                    {
-
-                    			if (current==null) {
-                    	            current = createModelElement(grammarAccess.getRepositoryComponent_ImplRule());
-                    	        }
-                            
-                     
-                    	        newCompositeNode(grammarAccess.getRepositoryComponent_ImplAccess().getRelationshipRelationshipCrossReference_3_2_0()); 
-                    	    
-                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleRepositoryComponent_Impl1815);
-                    ruleEString();
-
-                    state._fsp--;
-
-                     
-                    	        afterParserOrEnumRuleCall();
-                    	    
-
-                    }
-
-
-                    }
-
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:800:2: (otherlv_6= ',' ( ( ruleEString ) ) )*
-                    loop18:
-                    do {
-                        int alt18=2;
-                        int LA18_0 = input.LA(1);
-
-                        if ( (LA18_0==14) ) {
-                            alt18=1;
-                        }
-
-
-                        switch (alt18) {
-                    	case 1 :
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:800:4: otherlv_6= ',' ( ( ruleEString ) )
-                    	    {
-                    	    otherlv_6=(Token)match(input,14,FollowSets000.FOLLOW_14_in_ruleRepositoryComponent_Impl1828); 
-
-                    	        	newLeafNode(otherlv_6, grammarAccess.getRepositoryComponent_ImplAccess().getCommaKeyword_3_3_0());
-                    	        
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:804:1: ( ( ruleEString ) )
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:805:1: ( ruleEString )
-                    	    {
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:805:1: ( ruleEString )
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:806:3: ruleEString
-                    	    {
-
-                    	    			if (current==null) {
-                    	    	            current = createModelElement(grammarAccess.getRepositoryComponent_ImplRule());
-                    	    	        }
-                    	            
-                    	     
-                    	    	        newCompositeNode(grammarAccess.getRepositoryComponent_ImplAccess().getRelationshipRelationshipCrossReference_3_3_1_0()); 
-                    	    	    
-                    	    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleRepositoryComponent_Impl1851);
-                    	    ruleEString();
-
-                    	    state._fsp--;
-
-                    	     
-                    	    	        afterParserOrEnumRuleCall();
-                    	    	    
-
-                    	    }
-
-
-                    	    }
-
-
-                    	    }
-                    	    break;
-
-                    	default :
-                    	    break loop18;
-                        }
-                    } while (true);
-
-                    otherlv_8=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleRepositoryComponent_Impl1865); 
-
-                        	newLeafNode(otherlv_8, grammarAccess.getRepositoryComponent_ImplAccess().getRightParenthesisKeyword_3_4());
-                        
-
-                    }
-                    break;
-
-            }
-
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:823:3: (otherlv_9= 'providedRoles' otherlv_10= '{' ( (lv_providedRoles_11_0= ruleProvidedRole ) ) (otherlv_12= ',' ( (lv_providedRoles_13_0= ruleProvidedRole ) ) )* otherlv_14= '}' )?
-            int alt21=2;
-            int LA21_0 = input.LA(1);
-
-            if ( (LA21_0==29) ) {
-                alt21=1;
-            }
-            switch (alt21) {
-                case 1 :
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:823:5: otherlv_9= 'providedRoles' otherlv_10= '{' ( (lv_providedRoles_11_0= ruleProvidedRole ) ) (otherlv_12= ',' ( (lv_providedRoles_13_0= ruleProvidedRole ) ) )* otherlv_14= '}'
-                    {
-                    otherlv_9=(Token)match(input,29,FollowSets000.FOLLOW_29_in_ruleRepositoryComponent_Impl1880); 
-
-                        	newLeafNode(otherlv_9, grammarAccess.getRepositoryComponent_ImplAccess().getProvidedRolesKeyword_4_0());
-                        
-                    otherlv_10=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleRepositoryComponent_Impl1892); 
-
-                        	newLeafNode(otherlv_10, grammarAccess.getRepositoryComponent_ImplAccess().getLeftCurlyBracketKeyword_4_1());
-                        
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:831:1: ( (lv_providedRoles_11_0= ruleProvidedRole ) )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:832:1: (lv_providedRoles_11_0= ruleProvidedRole )
-                    {
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:832:1: (lv_providedRoles_11_0= ruleProvidedRole )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:833:3: lv_providedRoles_11_0= ruleProvidedRole
-                    {
-                     
-                    	        newCompositeNode(grammarAccess.getRepositoryComponent_ImplAccess().getProvidedRolesProvidedRoleParserRuleCall_4_2_0()); 
-                    	    
-                    pushFollow(FollowSets000.FOLLOW_ruleProvidedRole_in_ruleRepositoryComponent_Impl1913);
-                    lv_providedRoles_11_0=ruleProvidedRole();
-
-                    state._fsp--;
-
-
-                    	        if (current==null) {
-                    	            current = createModelElementForParent(grammarAccess.getRepositoryComponent_ImplRule());
-                    	        }
-                           		add(
-                           			current, 
-                           			"providedRoles",
-                            		lv_providedRoles_11_0, 
-                            		"ProvidedRole");
-                    	        afterParserOrEnumRuleCall();
-                    	    
-
-                    }
-
-
-                    }
-
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:849:2: (otherlv_12= ',' ( (lv_providedRoles_13_0= ruleProvidedRole ) ) )*
-                    loop20:
-                    do {
-                        int alt20=2;
-                        int LA20_0 = input.LA(1);
-
-                        if ( (LA20_0==14) ) {
-                            alt20=1;
-                        }
-
-
-                        switch (alt20) {
-                    	case 1 :
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:849:4: otherlv_12= ',' ( (lv_providedRoles_13_0= ruleProvidedRole ) )
-                    	    {
-                    	    otherlv_12=(Token)match(input,14,FollowSets000.FOLLOW_14_in_ruleRepositoryComponent_Impl1926); 
-
-                    	        	newLeafNode(otherlv_12, grammarAccess.getRepositoryComponent_ImplAccess().getCommaKeyword_4_3_0());
-                    	        
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:853:1: ( (lv_providedRoles_13_0= ruleProvidedRole ) )
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:854:1: (lv_providedRoles_13_0= ruleProvidedRole )
-                    	    {
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:854:1: (lv_providedRoles_13_0= ruleProvidedRole )
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:855:3: lv_providedRoles_13_0= ruleProvidedRole
-                    	    {
-                    	     
-                    	    	        newCompositeNode(grammarAccess.getRepositoryComponent_ImplAccess().getProvidedRolesProvidedRoleParserRuleCall_4_3_1_0()); 
-                    	    	    
-                    	    pushFollow(FollowSets000.FOLLOW_ruleProvidedRole_in_ruleRepositoryComponent_Impl1947);
-                    	    lv_providedRoles_13_0=ruleProvidedRole();
-
-                    	    state._fsp--;
-
-
-                    	    	        if (current==null) {
-                    	    	            current = createModelElementForParent(grammarAccess.getRepositoryComponent_ImplRule());
-                    	    	        }
-                    	           		add(
-                    	           			current, 
-                    	           			"providedRoles",
-                    	            		lv_providedRoles_13_0, 
-                    	            		"ProvidedRole");
-                    	    	        afterParserOrEnumRuleCall();
-                    	    	    
-
-                    	    }
-
-
-                    	    }
-
-
-                    	    }
-                    	    break;
-
-                    	default :
-                    	    break loop20;
-                        }
-                    } while (true);
-
-                    otherlv_14=(Token)match(input,15,FollowSets000.FOLLOW_15_in_ruleRepositoryComponent_Impl1961); 
-
-                        	newLeafNode(otherlv_14, grammarAccess.getRepositoryComponent_ImplAccess().getRightCurlyBracketKeyword_4_4());
-                        
-
-                    }
-                    break;
-
-            }
-
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:875:3: (otherlv_15= 'requiredRoles' otherlv_16= '{' ( (lv_requiredRoles_17_0= ruleRequiredRole ) ) (otherlv_18= ',' ( (lv_requiredRoles_19_0= ruleRequiredRole ) ) )* otherlv_20= '}' )?
-            int alt23=2;
-            int LA23_0 = input.LA(1);
-
-            if ( (LA23_0==30) ) {
-                alt23=1;
-            }
-            switch (alt23) {
-                case 1 :
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:875:5: otherlv_15= 'requiredRoles' otherlv_16= '{' ( (lv_requiredRoles_17_0= ruleRequiredRole ) ) (otherlv_18= ',' ( (lv_requiredRoles_19_0= ruleRequiredRole ) ) )* otherlv_20= '}'
-                    {
-                    otherlv_15=(Token)match(input,30,FollowSets000.FOLLOW_30_in_ruleRepositoryComponent_Impl1976); 
-
-                        	newLeafNode(otherlv_15, grammarAccess.getRepositoryComponent_ImplAccess().getRequiredRolesKeyword_5_0());
-                        
-                    otherlv_16=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleRepositoryComponent_Impl1988); 
-
-                        	newLeafNode(otherlv_16, grammarAccess.getRepositoryComponent_ImplAccess().getLeftCurlyBracketKeyword_5_1());
-                        
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:883:1: ( (lv_requiredRoles_17_0= ruleRequiredRole ) )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:884:1: (lv_requiredRoles_17_0= ruleRequiredRole )
-                    {
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:884:1: (lv_requiredRoles_17_0= ruleRequiredRole )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:885:3: lv_requiredRoles_17_0= ruleRequiredRole
-                    {
-                     
-                    	        newCompositeNode(grammarAccess.getRepositoryComponent_ImplAccess().getRequiredRolesRequiredRoleParserRuleCall_5_2_0()); 
-                    	    
-                    pushFollow(FollowSets000.FOLLOW_ruleRequiredRole_in_ruleRepositoryComponent_Impl2009);
-                    lv_requiredRoles_17_0=ruleRequiredRole();
-
-                    state._fsp--;
-
-
-                    	        if (current==null) {
-                    	            current = createModelElementForParent(grammarAccess.getRepositoryComponent_ImplRule());
-                    	        }
-                           		add(
-                           			current, 
-                           			"requiredRoles",
-                            		lv_requiredRoles_17_0, 
-                            		"RequiredRole");
-                    	        afterParserOrEnumRuleCall();
-                    	    
-
-                    }
-
-
-                    }
-
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:901:2: (otherlv_18= ',' ( (lv_requiredRoles_19_0= ruleRequiredRole ) ) )*
-                    loop22:
-                    do {
-                        int alt22=2;
-                        int LA22_0 = input.LA(1);
-
-                        if ( (LA22_0==14) ) {
-                            alt22=1;
-                        }
-
-
-                        switch (alt22) {
-                    	case 1 :
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:901:4: otherlv_18= ',' ( (lv_requiredRoles_19_0= ruleRequiredRole ) )
-                    	    {
-                    	    otherlv_18=(Token)match(input,14,FollowSets000.FOLLOW_14_in_ruleRepositoryComponent_Impl2022); 
-
-                    	        	newLeafNode(otherlv_18, grammarAccess.getRepositoryComponent_ImplAccess().getCommaKeyword_5_3_0());
-                    	        
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:905:1: ( (lv_requiredRoles_19_0= ruleRequiredRole ) )
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:906:1: (lv_requiredRoles_19_0= ruleRequiredRole )
-                    	    {
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:906:1: (lv_requiredRoles_19_0= ruleRequiredRole )
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:907:3: lv_requiredRoles_19_0= ruleRequiredRole
-                    	    {
-                    	     
-                    	    	        newCompositeNode(grammarAccess.getRepositoryComponent_ImplAccess().getRequiredRolesRequiredRoleParserRuleCall_5_3_1_0()); 
-                    	    	    
-                    	    pushFollow(FollowSets000.FOLLOW_ruleRequiredRole_in_ruleRepositoryComponent_Impl2043);
-                    	    lv_requiredRoles_19_0=ruleRequiredRole();
-
-                    	    state._fsp--;
-
-
-                    	    	        if (current==null) {
-                    	    	            current = createModelElementForParent(grammarAccess.getRepositoryComponent_ImplRule());
-                    	    	        }
-                    	           		add(
-                    	           			current, 
-                    	           			"requiredRoles",
-                    	            		lv_requiredRoles_19_0, 
-                    	            		"RequiredRole");
-                    	    	        afterParserOrEnumRuleCall();
-                    	    	    
-
-                    	    }
-
-
-                    	    }
-
-
-                    	    }
-                    	    break;
-
-                    	default :
-                    	    break loop22;
-                        }
-                    } while (true);
-
-                    otherlv_20=(Token)match(input,15,FollowSets000.FOLLOW_15_in_ruleRepositoryComponent_Impl2057); 
-
-                        	newLeafNode(otherlv_20, grammarAccess.getRepositoryComponent_ImplAccess().getRightCurlyBracketKeyword_5_4());
-                        
-
-                    }
-                    break;
-
-            }
-
-            otherlv_21=(Token)match(input,15,FollowSets000.FOLLOW_15_in_ruleRepositoryComponent_Impl2071); 
-
-                	newLeafNode(otherlv_21, grammarAccess.getRepositoryComponent_ImplAccess().getRightCurlyBracketKeyword_6());
-                
-
-            }
-
-
-            }
-
-             leaveRule(); 
-        }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
-                appendSkippedTokens();
-            } 
-        finally {
-        }
-        return current;
-    }
-    // $ANTLR end "ruleRepositoryComponent_Impl"
-
-
-    // $ANTLR start "entryRuleCollectionDataType"
-    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:939:1: entryRuleCollectionDataType returns [EObject current=null] : iv_ruleCollectionDataType= ruleCollectionDataType EOF ;
-    public final EObject entryRuleCollectionDataType() throws RecognitionException {
-        EObject current = null;
-
-        EObject iv_ruleCollectionDataType = null;
-
-
-        try {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:940:2: (iv_ruleCollectionDataType= ruleCollectionDataType EOF )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:941:2: iv_ruleCollectionDataType= ruleCollectionDataType EOF
-            {
-             newCompositeNode(grammarAccess.getCollectionDataTypeRule()); 
-            pushFollow(FollowSets000.FOLLOW_ruleCollectionDataType_in_entryRuleCollectionDataType2107);
-            iv_ruleCollectionDataType=ruleCollectionDataType();
-
-            state._fsp--;
-
-             current =iv_ruleCollectionDataType; 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleCollectionDataType2117); 
-
-            }
-
-        }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
-                appendSkippedTokens();
-            } 
-        finally {
-        }
-        return current;
-    }
-    // $ANTLR end "entryRuleCollectionDataType"
-
-
-    // $ANTLR start "ruleCollectionDataType"
-    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:948:1: ruleCollectionDataType returns [EObject current=null] : (otherlv_0= 'CollectionDataType' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' otherlv_3= 'innerType' ( ( ruleEString ) ) otherlv_5= '}' ) ;
-    public final EObject ruleCollectionDataType() throws RecognitionException {
-        EObject current = null;
-
-        Token otherlv_0=null;
-        Token otherlv_2=null;
-        Token otherlv_3=null;
-        Token otherlv_5=null;
-        AntlrDatatypeRuleToken lv_name_1_0 = null;
-
-
-         enterRule(); 
-            
-        try {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:951:28: ( (otherlv_0= 'CollectionDataType' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' otherlv_3= 'innerType' ( ( ruleEString ) ) otherlv_5= '}' ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:952:1: (otherlv_0= 'CollectionDataType' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' otherlv_3= 'innerType' ( ( ruleEString ) ) otherlv_5= '}' )
-            {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:952:1: (otherlv_0= 'CollectionDataType' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' otherlv_3= 'innerType' ( ( ruleEString ) ) otherlv_5= '}' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:952:3: otherlv_0= 'CollectionDataType' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' otherlv_3= 'innerType' ( ( ruleEString ) ) otherlv_5= '}'
-            {
-            otherlv_0=(Token)match(input,31,FollowSets000.FOLLOW_31_in_ruleCollectionDataType2154); 
-
-                	newLeafNode(otherlv_0, grammarAccess.getCollectionDataTypeAccess().getCollectionDataTypeKeyword_0());
-                
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:956:1: ( (lv_name_1_0= ruleEString ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:957:1: (lv_name_1_0= ruleEString )
-            {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:957:1: (lv_name_1_0= ruleEString )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:958:3: lv_name_1_0= ruleEString
-            {
-             
-            	        newCompositeNode(grammarAccess.getCollectionDataTypeAccess().getNameEStringParserRuleCall_1_0()); 
-            	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleCollectionDataType2175);
-            lv_name_1_0=ruleEString();
-
-            state._fsp--;
-
-
-            	        if (current==null) {
-            	            current = createModelElementForParent(grammarAccess.getCollectionDataTypeRule());
-            	        }
-                   		set(
-                   			current, 
-                   			"name",
-                    		lv_name_1_0, 
-                    		"EString");
-            	        afterParserOrEnumRuleCall();
-            	    
-
-            }
-
-
-            }
-
-            otherlv_2=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleCollectionDataType2187); 
-
-                	newLeafNode(otherlv_2, grammarAccess.getCollectionDataTypeAccess().getLeftCurlyBracketKeyword_2());
-                
-            otherlv_3=(Token)match(input,32,FollowSets000.FOLLOW_32_in_ruleCollectionDataType2199); 
-
-                	newLeafNode(otherlv_3, grammarAccess.getCollectionDataTypeAccess().getInnerTypeKeyword_3());
-                
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:982:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:983:1: ( ruleEString )
-            {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:983:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:984:3: ruleEString
-            {
-
-            			if (current==null) {
-            	            current = createModelElement(grammarAccess.getCollectionDataTypeRule());
-            	        }
-                    
-             
-            	        newCompositeNode(grammarAccess.getCollectionDataTypeAccess().getInnerTypeDataTypeCrossReference_4_0()); 
-            	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleCollectionDataType2222);
-            ruleEString();
-
-            state._fsp--;
-
-             
-            	        afterParserOrEnumRuleCall();
-            	    
-
-            }
-
-
-            }
-
-            otherlv_5=(Token)match(input,15,FollowSets000.FOLLOW_15_in_ruleCollectionDataType2234); 
-
-                	newLeafNode(otherlv_5, grammarAccess.getCollectionDataTypeAccess().getRightCurlyBracketKeyword_5());
-                
-
-            }
-
-
-            }
-
-             leaveRule(); 
-        }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
-                appendSkippedTokens();
-            } 
-        finally {
-        }
-        return current;
-    }
-    // $ANTLR end "ruleCollectionDataType"
-
-
-    // $ANTLR start "entryRuleCompositeDataType"
-    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1009:1: entryRuleCompositeDataType returns [EObject current=null] : iv_ruleCompositeDataType= ruleCompositeDataType EOF ;
-    public final EObject entryRuleCompositeDataType() throws RecognitionException {
-        EObject current = null;
-
-        EObject iv_ruleCompositeDataType = null;
-
-
-        try {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1010:2: (iv_ruleCompositeDataType= ruleCompositeDataType EOF )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1011:2: iv_ruleCompositeDataType= ruleCompositeDataType EOF
-            {
-             newCompositeNode(grammarAccess.getCompositeDataTypeRule()); 
-            pushFollow(FollowSets000.FOLLOW_ruleCompositeDataType_in_entryRuleCompositeDataType2270);
-            iv_ruleCompositeDataType=ruleCompositeDataType();
-
-            state._fsp--;
-
-             current =iv_ruleCompositeDataType; 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleCompositeDataType2280); 
-
-            }
-
-        }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
-                appendSkippedTokens();
-            } 
-        finally {
-        }
-        return current;
-    }
-    // $ANTLR end "entryRuleCompositeDataType"
-
-
-    // $ANTLR start "ruleCompositeDataType"
-    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1018:1: ruleCompositeDataType returns [EObject current=null] : (otherlv_0= 'CompositeDataType' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' (otherlv_3= 'parentTypes' otherlv_4= '(' ( ( ruleEString ) ) (otherlv_6= ',' ( ( ruleEString ) ) )* otherlv_8= ')' )? (otherlv_9= 'innerDeclarations' otherlv_10= '{' ( (lv_innerDeclarations_11_0= ruleInnerDeclaration ) ) (otherlv_12= ',' ( (lv_innerDeclarations_13_0= ruleInnerDeclaration ) ) )* otherlv_14= '}' )? otherlv_15= '}' ) ;
-    public final EObject ruleCompositeDataType() throws RecognitionException {
-        EObject current = null;
-
-        Token otherlv_0=null;
-        Token otherlv_2=null;
-        Token otherlv_3=null;
-        Token otherlv_4=null;
-        Token otherlv_6=null;
-        Token otherlv_8=null;
-        Token otherlv_9=null;
-        Token otherlv_10=null;
-        Token otherlv_12=null;
-        Token otherlv_14=null;
-        Token otherlv_15=null;
-        AntlrDatatypeRuleToken lv_name_1_0 = null;
-
-        EObject lv_innerDeclarations_11_0 = null;
-
-        EObject lv_innerDeclarations_13_0 = null;
-
-
-         enterRule(); 
-            
-        try {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1021:28: ( (otherlv_0= 'CompositeDataType' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' (otherlv_3= 'parentTypes' otherlv_4= '(' ( ( ruleEString ) ) (otherlv_6= ',' ( ( ruleEString ) ) )* otherlv_8= ')' )? (otherlv_9= 'innerDeclarations' otherlv_10= '{' ( (lv_innerDeclarations_11_0= ruleInnerDeclaration ) ) (otherlv_12= ',' ( (lv_innerDeclarations_13_0= ruleInnerDeclaration ) ) )* otherlv_14= '}' )? otherlv_15= '}' ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1022:1: (otherlv_0= 'CompositeDataType' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' (otherlv_3= 'parentTypes' otherlv_4= '(' ( ( ruleEString ) ) (otherlv_6= ',' ( ( ruleEString ) ) )* otherlv_8= ')' )? (otherlv_9= 'innerDeclarations' otherlv_10= '{' ( (lv_innerDeclarations_11_0= ruleInnerDeclaration ) ) (otherlv_12= ',' ( (lv_innerDeclarations_13_0= ruleInnerDeclaration ) ) )* otherlv_14= '}' )? otherlv_15= '}' )
-            {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1022:1: (otherlv_0= 'CompositeDataType' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' (otherlv_3= 'parentTypes' otherlv_4= '(' ( ( ruleEString ) ) (otherlv_6= ',' ( ( ruleEString ) ) )* otherlv_8= ')' )? (otherlv_9= 'innerDeclarations' otherlv_10= '{' ( (lv_innerDeclarations_11_0= ruleInnerDeclaration ) ) (otherlv_12= ',' ( (lv_innerDeclarations_13_0= ruleInnerDeclaration ) ) )* otherlv_14= '}' )? otherlv_15= '}' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1022:3: otherlv_0= 'CompositeDataType' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' (otherlv_3= 'parentTypes' otherlv_4= '(' ( ( ruleEString ) ) (otherlv_6= ',' ( ( ruleEString ) ) )* otherlv_8= ')' )? (otherlv_9= 'innerDeclarations' otherlv_10= '{' ( (lv_innerDeclarations_11_0= ruleInnerDeclaration ) ) (otherlv_12= ',' ( (lv_innerDeclarations_13_0= ruleInnerDeclaration ) ) )* otherlv_14= '}' )? otherlv_15= '}'
-            {
-            otherlv_0=(Token)match(input,33,FollowSets000.FOLLOW_33_in_ruleCompositeDataType2317); 
-
-                	newLeafNode(otherlv_0, grammarAccess.getCompositeDataTypeAccess().getCompositeDataTypeKeyword_0());
-                
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1026:1: ( (lv_name_1_0= ruleEString ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1027:1: (lv_name_1_0= ruleEString )
-            {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1027:1: (lv_name_1_0= ruleEString )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1028:3: lv_name_1_0= ruleEString
-            {
-             
-            	        newCompositeNode(grammarAccess.getCompositeDataTypeAccess().getNameEStringParserRuleCall_1_0()); 
-            	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleCompositeDataType2338);
-            lv_name_1_0=ruleEString();
-
-            state._fsp--;
-
-
-            	        if (current==null) {
-            	            current = createModelElementForParent(grammarAccess.getCompositeDataTypeRule());
-            	        }
-                   		set(
-                   			current, 
-                   			"name",
-                    		lv_name_1_0, 
-                    		"EString");
-            	        afterParserOrEnumRuleCall();
-            	    
-
-            }
-
-
-            }
-
-            otherlv_2=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleCompositeDataType2350); 
-
-                	newLeafNode(otherlv_2, grammarAccess.getCompositeDataTypeAccess().getLeftCurlyBracketKeyword_2());
-                
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1048:1: (otherlv_3= 'parentTypes' otherlv_4= '(' ( ( ruleEString ) ) (otherlv_6= ',' ( ( ruleEString ) ) )* otherlv_8= ')' )?
-            int alt25=2;
-            int LA25_0 = input.LA(1);
-
-            if ( (LA25_0==34) ) {
-                alt25=1;
-            }
-            switch (alt25) {
-                case 1 :
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1048:3: otherlv_3= 'parentTypes' otherlv_4= '(' ( ( ruleEString ) ) (otherlv_6= ',' ( ( ruleEString ) ) )* otherlv_8= ')'
-                    {
-                    otherlv_3=(Token)match(input,34,FollowSets000.FOLLOW_34_in_ruleCompositeDataType2363); 
-
-                        	newLeafNode(otherlv_3, grammarAccess.getCompositeDataTypeAccess().getParentTypesKeyword_3_0());
-                        
-                    otherlv_4=(Token)match(input,25,FollowSets000.FOLLOW_25_in_ruleCompositeDataType2375); 
-
-                        	newLeafNode(otherlv_4, grammarAccess.getCompositeDataTypeAccess().getLeftParenthesisKeyword_3_1());
-                        
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1056:1: ( ( ruleEString ) )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1057:1: ( ruleEString )
-                    {
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1057:1: ( ruleEString )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1058:3: ruleEString
-                    {
-
-                    			if (current==null) {
-                    	            current = createModelElement(grammarAccess.getCompositeDataTypeRule());
-                    	        }
-                            
-                     
-                    	        newCompositeNode(grammarAccess.getCompositeDataTypeAccess().getParentTypesCompositeDataTypeCrossReference_3_2_0()); 
-                    	    
-                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleCompositeDataType2398);
-                    ruleEString();
-
-                    state._fsp--;
-
-                     
-                    	        afterParserOrEnumRuleCall();
-                    	    
-
-                    }
-
-
-                    }
-
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1071:2: (otherlv_6= ',' ( ( ruleEString ) ) )*
-                    loop24:
-                    do {
-                        int alt24=2;
-                        int LA24_0 = input.LA(1);
-
-                        if ( (LA24_0==14) ) {
-                            alt24=1;
-                        }
-
-
-                        switch (alt24) {
-                    	case 1 :
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1071:4: otherlv_6= ',' ( ( ruleEString ) )
-                    	    {
-                    	    otherlv_6=(Token)match(input,14,FollowSets000.FOLLOW_14_in_ruleCompositeDataType2411); 
-
-                    	        	newLeafNode(otherlv_6, grammarAccess.getCompositeDataTypeAccess().getCommaKeyword_3_3_0());
-                    	        
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1075:1: ( ( ruleEString ) )
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1076:1: ( ruleEString )
-                    	    {
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1076:1: ( ruleEString )
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1077:3: ruleEString
-                    	    {
-
-                    	    			if (current==null) {
-                    	    	            current = createModelElement(grammarAccess.getCompositeDataTypeRule());
-                    	    	        }
-                    	            
-                    	     
-                    	    	        newCompositeNode(grammarAccess.getCompositeDataTypeAccess().getParentTypesCompositeDataTypeCrossReference_3_3_1_0()); 
-                    	    	    
-                    	    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleCompositeDataType2434);
-                    	    ruleEString();
-
-                    	    state._fsp--;
-
-                    	     
-                    	    	        afterParserOrEnumRuleCall();
-                    	    	    
-
-                    	    }
-
-
-                    	    }
-
-
-                    	    }
-                    	    break;
-
-                    	default :
-                    	    break loop24;
-                        }
-                    } while (true);
-
-                    otherlv_8=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleCompositeDataType2448); 
-
-                        	newLeafNode(otherlv_8, grammarAccess.getCompositeDataTypeAccess().getRightParenthesisKeyword_3_4());
-                        
-
-                    }
-                    break;
-
-            }
-
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1094:3: (otherlv_9= 'innerDeclarations' otherlv_10= '{' ( (lv_innerDeclarations_11_0= ruleInnerDeclaration ) ) (otherlv_12= ',' ( (lv_innerDeclarations_13_0= ruleInnerDeclaration ) ) )* otherlv_14= '}' )?
-            int alt27=2;
-            int LA27_0 = input.LA(1);
-
-            if ( (LA27_0==35) ) {
-                alt27=1;
-            }
-            switch (alt27) {
-                case 1 :
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1094:5: otherlv_9= 'innerDeclarations' otherlv_10= '{' ( (lv_innerDeclarations_11_0= ruleInnerDeclaration ) ) (otherlv_12= ',' ( (lv_innerDeclarations_13_0= ruleInnerDeclaration ) ) )* otherlv_14= '}'
-                    {
-                    otherlv_9=(Token)match(input,35,FollowSets000.FOLLOW_35_in_ruleCompositeDataType2463); 
-
-                        	newLeafNode(otherlv_9, grammarAccess.getCompositeDataTypeAccess().getInnerDeclarationsKeyword_4_0());
-                        
-                    otherlv_10=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleCompositeDataType2475); 
-
-                        	newLeafNode(otherlv_10, grammarAccess.getCompositeDataTypeAccess().getLeftCurlyBracketKeyword_4_1());
-                        
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1102:1: ( (lv_innerDeclarations_11_0= ruleInnerDeclaration ) )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1103:1: (lv_innerDeclarations_11_0= ruleInnerDeclaration )
-                    {
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1103:1: (lv_innerDeclarations_11_0= ruleInnerDeclaration )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1104:3: lv_innerDeclarations_11_0= ruleInnerDeclaration
-                    {
-                     
-                    	        newCompositeNode(grammarAccess.getCompositeDataTypeAccess().getInnerDeclarationsInnerDeclarationParserRuleCall_4_2_0()); 
-                    	    
-                    pushFollow(FollowSets000.FOLLOW_ruleInnerDeclaration_in_ruleCompositeDataType2496);
-                    lv_innerDeclarations_11_0=ruleInnerDeclaration();
-
-                    state._fsp--;
-
-
-                    	        if (current==null) {
-                    	            current = createModelElementForParent(grammarAccess.getCompositeDataTypeRule());
-                    	        }
-                           		add(
-                           			current, 
-                           			"innerDeclarations",
-                            		lv_innerDeclarations_11_0, 
-                            		"InnerDeclaration");
-                    	        afterParserOrEnumRuleCall();
-                    	    
-
-                    }
-
-
-                    }
-
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1120:2: (otherlv_12= ',' ( (lv_innerDeclarations_13_0= ruleInnerDeclaration ) ) )*
-                    loop26:
-                    do {
-                        int alt26=2;
-                        int LA26_0 = input.LA(1);
-
-                        if ( (LA26_0==14) ) {
-                            alt26=1;
-                        }
-
-
-                        switch (alt26) {
-                    	case 1 :
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1120:4: otherlv_12= ',' ( (lv_innerDeclarations_13_0= ruleInnerDeclaration ) )
-                    	    {
-                    	    otherlv_12=(Token)match(input,14,FollowSets000.FOLLOW_14_in_ruleCompositeDataType2509); 
-
-                    	        	newLeafNode(otherlv_12, grammarAccess.getCompositeDataTypeAccess().getCommaKeyword_4_3_0());
-                    	        
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1124:1: ( (lv_innerDeclarations_13_0= ruleInnerDeclaration ) )
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1125:1: (lv_innerDeclarations_13_0= ruleInnerDeclaration )
-                    	    {
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1125:1: (lv_innerDeclarations_13_0= ruleInnerDeclaration )
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1126:3: lv_innerDeclarations_13_0= ruleInnerDeclaration
-                    	    {
-                    	     
-                    	    	        newCompositeNode(grammarAccess.getCompositeDataTypeAccess().getInnerDeclarationsInnerDeclarationParserRuleCall_4_3_1_0()); 
-                    	    	    
-                    	    pushFollow(FollowSets000.FOLLOW_ruleInnerDeclaration_in_ruleCompositeDataType2530);
-                    	    lv_innerDeclarations_13_0=ruleInnerDeclaration();
-
-                    	    state._fsp--;
-
-
-                    	    	        if (current==null) {
-                    	    	            current = createModelElementForParent(grammarAccess.getCompositeDataTypeRule());
-                    	    	        }
-                    	           		add(
-                    	           			current, 
-                    	           			"innerDeclarations",
-                    	            		lv_innerDeclarations_13_0, 
-                    	            		"InnerDeclaration");
-                    	    	        afterParserOrEnumRuleCall();
-                    	    	    
-
-                    	    }
-
-
-                    	    }
-
-
-                    	    }
-                    	    break;
-
-                    	default :
-                    	    break loop26;
-                        }
-                    } while (true);
-
-                    otherlv_14=(Token)match(input,15,FollowSets000.FOLLOW_15_in_ruleCompositeDataType2544); 
-
-                        	newLeafNode(otherlv_14, grammarAccess.getCompositeDataTypeAccess().getRightCurlyBracketKeyword_4_4());
-                        
-
-                    }
-                    break;
-
-            }
-
-            otherlv_15=(Token)match(input,15,FollowSets000.FOLLOW_15_in_ruleCompositeDataType2558); 
-
-                	newLeafNode(otherlv_15, grammarAccess.getCompositeDataTypeAccess().getRightCurlyBracketKeyword_5());
-                
-
-            }
-
-
-            }
-
-             leaveRule(); 
-        }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
-                appendSkippedTokens();
-            } 
-        finally {
-        }
-        return current;
-    }
-    // $ANTLR end "ruleCompositeDataType"
-
-
-    // $ANTLR start "entryRulePrimitiveDataType"
-    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1158:1: entryRulePrimitiveDataType returns [EObject current=null] : iv_rulePrimitiveDataType= rulePrimitiveDataType EOF ;
-    public final EObject entryRulePrimitiveDataType() throws RecognitionException {
-        EObject current = null;
-
-        EObject iv_rulePrimitiveDataType = null;
-
-
-        try {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1159:2: (iv_rulePrimitiveDataType= rulePrimitiveDataType EOF )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1160:2: iv_rulePrimitiveDataType= rulePrimitiveDataType EOF
-            {
-             newCompositeNode(grammarAccess.getPrimitiveDataTypeRule()); 
-            pushFollow(FollowSets000.FOLLOW_rulePrimitiveDataType_in_entryRulePrimitiveDataType2594);
-            iv_rulePrimitiveDataType=rulePrimitiveDataType();
-
-            state._fsp--;
-
-             current =iv_rulePrimitiveDataType; 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRulePrimitiveDataType2604); 
-
-            }
-
-        }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
-                appendSkippedTokens();
-            } 
-        finally {
-        }
-        return current;
-    }
-    // $ANTLR end "entryRulePrimitiveDataType"
-
-
-    // $ANTLR start "rulePrimitiveDataType"
-    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1167:1: rulePrimitiveDataType returns [EObject current=null] : (otherlv_0= 'PrimitiveDataType' otherlv_1= '{' otherlv_2= 'type' ( (lv_type_3_0= rulePrimitiveTypeEnum ) ) otherlv_4= 'ref' ( (lv_name_5_0= ruleEString ) ) otherlv_6= '}' ) ;
-    public final EObject rulePrimitiveDataType() throws RecognitionException {
-        EObject current = null;
-
-        Token otherlv_0=null;
-        Token otherlv_1=null;
-        Token otherlv_2=null;
-        Token otherlv_4=null;
-        Token otherlv_6=null;
-        Enumerator lv_type_3_0 = null;
-
-        AntlrDatatypeRuleToken lv_name_5_0 = null;
-
-
-         enterRule(); 
-            
-        try {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1170:28: ( (otherlv_0= 'PrimitiveDataType' otherlv_1= '{' otherlv_2= 'type' ( (lv_type_3_0= rulePrimitiveTypeEnum ) ) otherlv_4= 'ref' ( (lv_name_5_0= ruleEString ) ) otherlv_6= '}' ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1171:1: (otherlv_0= 'PrimitiveDataType' otherlv_1= '{' otherlv_2= 'type' ( (lv_type_3_0= rulePrimitiveTypeEnum ) ) otherlv_4= 'ref' ( (lv_name_5_0= ruleEString ) ) otherlv_6= '}' )
-            {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1171:1: (otherlv_0= 'PrimitiveDataType' otherlv_1= '{' otherlv_2= 'type' ( (lv_type_3_0= rulePrimitiveTypeEnum ) ) otherlv_4= 'ref' ( (lv_name_5_0= ruleEString ) ) otherlv_6= '}' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1171:3: otherlv_0= 'PrimitiveDataType' otherlv_1= '{' otherlv_2= 'type' ( (lv_type_3_0= rulePrimitiveTypeEnum ) ) otherlv_4= 'ref' ( (lv_name_5_0= ruleEString ) ) otherlv_6= '}'
-            {
-            otherlv_0=(Token)match(input,36,FollowSets000.FOLLOW_36_in_rulePrimitiveDataType2641); 
-
-                	newLeafNode(otherlv_0, grammarAccess.getPrimitiveDataTypeAccess().getPrimitiveDataTypeKeyword_0());
-                
-            otherlv_1=(Token)match(input,12,FollowSets000.FOLLOW_12_in_rulePrimitiveDataType2653); 
-
-                	newLeafNode(otherlv_1, grammarAccess.getPrimitiveDataTypeAccess().getLeftCurlyBracketKeyword_1());
-                
-            otherlv_2=(Token)match(input,37,FollowSets000.FOLLOW_37_in_rulePrimitiveDataType2665); 
-
-                	newLeafNode(otherlv_2, grammarAccess.getPrimitiveDataTypeAccess().getTypeKeyword_2());
-                
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1183:1: ( (lv_type_3_0= rulePrimitiveTypeEnum ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1184:1: (lv_type_3_0= rulePrimitiveTypeEnum )
-            {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1184:1: (lv_type_3_0= rulePrimitiveTypeEnum )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1185:3: lv_type_3_0= rulePrimitiveTypeEnum
-            {
-             
-            	        newCompositeNode(grammarAccess.getPrimitiveDataTypeAccess().getTypePrimitiveTypeEnumEnumRuleCall_3_0()); 
-            	    
-            pushFollow(FollowSets000.FOLLOW_rulePrimitiveTypeEnum_in_rulePrimitiveDataType2686);
-            lv_type_3_0=rulePrimitiveTypeEnum();
-
-            state._fsp--;
-
-
-            	        if (current==null) {
-            	            current = createModelElementForParent(grammarAccess.getPrimitiveDataTypeRule());
-            	        }
-                   		set(
-                   			current, 
-                   			"type",
-                    		lv_type_3_0, 
-                    		"PrimitiveTypeEnum");
-            	        afterParserOrEnumRuleCall();
-            	    
-
-            }
-
-
-            }
-
-            otherlv_4=(Token)match(input,38,FollowSets000.FOLLOW_38_in_rulePrimitiveDataType2698); 
-
-                	newLeafNode(otherlv_4, grammarAccess.getPrimitiveDataTypeAccess().getRefKeyword_4());
-                
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1205:1: ( (lv_name_5_0= ruleEString ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1206:1: (lv_name_5_0= ruleEString )
-            {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1206:1: (lv_name_5_0= ruleEString )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1207:3: lv_name_5_0= ruleEString
-            {
-             
-            	        newCompositeNode(grammarAccess.getPrimitiveDataTypeAccess().getNameEStringParserRuleCall_5_0()); 
-            	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rulePrimitiveDataType2719);
-            lv_name_5_0=ruleEString();
-
-            state._fsp--;
-
-
-            	        if (current==null) {
-            	            current = createModelElementForParent(grammarAccess.getPrimitiveDataTypeRule());
-            	        }
-                   		set(
-                   			current, 
-                   			"name",
-                    		lv_name_5_0, 
-                    		"EString");
-            	        afterParserOrEnumRuleCall();
-            	    
-
-            }
-
-
-            }
-
-            otherlv_6=(Token)match(input,15,FollowSets000.FOLLOW_15_in_rulePrimitiveDataType2731); 
-
-                	newLeafNode(otherlv_6, grammarAccess.getPrimitiveDataTypeAccess().getRightCurlyBracketKeyword_6());
-                
-
-            }
-
-
-            }
-
-             leaveRule(); 
-        }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
-                appendSkippedTokens();
-            } 
-        finally {
-        }
-        return current;
-    }
-    // $ANTLR end "rulePrimitiveDataType"
-
-
-    // $ANTLR start "entryRuleInnerDeclaration"
-    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1235:1: entryRuleInnerDeclaration returns [EObject current=null] : iv_ruleInnerDeclaration= ruleInnerDeclaration EOF ;
-    public final EObject entryRuleInnerDeclaration() throws RecognitionException {
-        EObject current = null;
-
-        EObject iv_ruleInnerDeclaration = null;
-
-
-        try {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1236:2: (iv_ruleInnerDeclaration= ruleInnerDeclaration EOF )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1237:2: iv_ruleInnerDeclaration= ruleInnerDeclaration EOF
-            {
-             newCompositeNode(grammarAccess.getInnerDeclarationRule()); 
-            pushFollow(FollowSets000.FOLLOW_ruleInnerDeclaration_in_entryRuleInnerDeclaration2767);
-            iv_ruleInnerDeclaration=ruleInnerDeclaration();
-
-            state._fsp--;
-
-             current =iv_ruleInnerDeclaration; 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleInnerDeclaration2777); 
-
-            }
-
-        }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
-                appendSkippedTokens();
-            } 
-        finally {
-        }
-        return current;
-    }
-    // $ANTLR end "entryRuleInnerDeclaration"
-
-
-    // $ANTLR start "ruleInnerDeclaration"
-    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1244:1: ruleInnerDeclaration returns [EObject current=null] : (otherlv_0= 'InnerDeclaration' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' otherlv_3= 'dataType' ( ( ruleEString ) ) otherlv_5= '}' ) ;
-    public final EObject ruleInnerDeclaration() throws RecognitionException {
-        EObject current = null;
-
-        Token otherlv_0=null;
-        Token otherlv_2=null;
-        Token otherlv_3=null;
-        Token otherlv_5=null;
-        AntlrDatatypeRuleToken lv_name_1_0 = null;
-
-
-         enterRule(); 
-            
-        try {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1247:28: ( (otherlv_0= 'InnerDeclaration' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' otherlv_3= 'dataType' ( ( ruleEString ) ) otherlv_5= '}' ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1248:1: (otherlv_0= 'InnerDeclaration' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' otherlv_3= 'dataType' ( ( ruleEString ) ) otherlv_5= '}' )
-            {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1248:1: (otherlv_0= 'InnerDeclaration' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' otherlv_3= 'dataType' ( ( ruleEString ) ) otherlv_5= '}' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1248:3: otherlv_0= 'InnerDeclaration' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' otherlv_3= 'dataType' ( ( ruleEString ) ) otherlv_5= '}'
-            {
-            otherlv_0=(Token)match(input,39,FollowSets000.FOLLOW_39_in_ruleInnerDeclaration2814); 
-
-                	newLeafNode(otherlv_0, grammarAccess.getInnerDeclarationAccess().getInnerDeclarationKeyword_0());
-                
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1252:1: ( (lv_name_1_0= ruleEString ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1253:1: (lv_name_1_0= ruleEString )
-            {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1253:1: (lv_name_1_0= ruleEString )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1254:3: lv_name_1_0= ruleEString
-            {
-             
-            	        newCompositeNode(grammarAccess.getInnerDeclarationAccess().getNameEStringParserRuleCall_1_0()); 
-            	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleInnerDeclaration2835);
-            lv_name_1_0=ruleEString();
-
-            state._fsp--;
-
-
-            	        if (current==null) {
-            	            current = createModelElementForParent(grammarAccess.getInnerDeclarationRule());
-            	        }
-                   		set(
-                   			current, 
-                   			"name",
-                    		lv_name_1_0, 
-                    		"EString");
-            	        afterParserOrEnumRuleCall();
-            	    
-
-            }
-
-
-            }
-
-            otherlv_2=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleInnerDeclaration2847); 
-
-                	newLeafNode(otherlv_2, grammarAccess.getInnerDeclarationAccess().getLeftCurlyBracketKeyword_2());
-                
-            otherlv_3=(Token)match(input,40,FollowSets000.FOLLOW_40_in_ruleInnerDeclaration2859); 
-
-                	newLeafNode(otherlv_3, grammarAccess.getInnerDeclarationAccess().getDataTypeKeyword_3());
-                
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1278:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1279:1: ( ruleEString )
-            {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1279:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1280:3: ruleEString
-            {
-
-            			if (current==null) {
-            	            current = createModelElement(grammarAccess.getInnerDeclarationRule());
-            	        }
-                    
-             
-            	        newCompositeNode(grammarAccess.getInnerDeclarationAccess().getDataTypeDataTypeCrossReference_4_0()); 
-            	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleInnerDeclaration2882);
-            ruleEString();
-
-            state._fsp--;
-
-             
-            	        afterParserOrEnumRuleCall();
-            	    
-
-            }
-
-
-            }
-
-            otherlv_5=(Token)match(input,15,FollowSets000.FOLLOW_15_in_ruleInnerDeclaration2894); 
-
-                	newLeafNode(otherlv_5, grammarAccess.getInnerDeclarationAccess().getRightCurlyBracketKeyword_5());
-                
-
-            }
-
-
-            }
-
-             leaveRule(); 
-        }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
-                appendSkippedTokens();
-            } 
-        finally {
-        }
-        return current;
-    }
-    // $ANTLR end "ruleInnerDeclaration"
-
-
-    // $ANTLR start "entryRuleSignature"
-    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1305:1: entryRuleSignature returns [EObject current=null] : iv_ruleSignature= ruleSignature EOF ;
-    public final EObject entryRuleSignature() throws RecognitionException {
-        EObject current = null;
-
-        EObject iv_ruleSignature = null;
-
-
-        try {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1306:2: (iv_ruleSignature= ruleSignature EOF )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1307:2: iv_ruleSignature= ruleSignature EOF
-            {
-             newCompositeNode(grammarAccess.getSignatureRule()); 
-            pushFollow(FollowSets000.FOLLOW_ruleSignature_in_entryRuleSignature2930);
-            iv_ruleSignature=ruleSignature();
-
-            state._fsp--;
-
-             current =iv_ruleSignature; 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleSignature2940); 
-
-            }
-
-        }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
-                appendSkippedTokens();
-            } 
-        finally {
-        }
-        return current;
-    }
-    // $ANTLR end "entryRuleSignature"
-
-
-    // $ANTLR start "ruleSignature"
-    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1314:1: ruleSignature returns [EObject current=null] : ( ( ( ( ruleEString ) ) | otherlv_1= 'void' ) ( (lv_name_2_0= ruleEString ) ) otherlv_3= '(' ( ( (lv_parameters_4_0= ruleParameter ) ) (otherlv_5= ',' ( (lv_parameters_6_0= ruleParameter ) ) )* )? otherlv_7= ')' ) ;
-    public final EObject ruleSignature() throws RecognitionException {
-        EObject current = null;
-
-        Token otherlv_1=null;
-        Token otherlv_3=null;
-        Token otherlv_5=null;
-        Token otherlv_7=null;
-        AntlrDatatypeRuleToken lv_name_2_0 = null;
-
-        EObject lv_parameters_4_0 = null;
-
-        EObject lv_parameters_6_0 = null;
-
-
-         enterRule(); 
-            
-        try {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1317:28: ( ( ( ( ( ruleEString ) ) | otherlv_1= 'void' ) ( (lv_name_2_0= ruleEString ) ) otherlv_3= '(' ( ( (lv_parameters_4_0= ruleParameter ) ) (otherlv_5= ',' ( (lv_parameters_6_0= ruleParameter ) ) )* )? otherlv_7= ')' ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1318:1: ( ( ( ( ruleEString ) ) | otherlv_1= 'void' ) ( (lv_name_2_0= ruleEString ) ) otherlv_3= '(' ( ( (lv_parameters_4_0= ruleParameter ) ) (otherlv_5= ',' ( (lv_parameters_6_0= ruleParameter ) ) )* )? otherlv_7= ')' )
-            {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1318:1: ( ( ( ( ruleEString ) ) | otherlv_1= 'void' ) ( (lv_name_2_0= ruleEString ) ) otherlv_3= '(' ( ( (lv_parameters_4_0= ruleParameter ) ) (otherlv_5= ',' ( (lv_parameters_6_0= ruleParameter ) ) )* )? otherlv_7= ')' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1318:2: ( ( ( ruleEString ) ) | otherlv_1= 'void' ) ( (lv_name_2_0= ruleEString ) ) otherlv_3= '(' ( ( (lv_parameters_4_0= ruleParameter ) ) (otherlv_5= ',' ( (lv_parameters_6_0= ruleParameter ) ) )* )? otherlv_7= ')'
-            {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1318:2: ( ( ( ruleEString ) ) | otherlv_1= 'void' )
-            int alt28=2;
-            int LA28_0 = input.LA(1);
-
-            if ( ((LA28_0>=RULE_ID && LA28_0<=RULE_STRING)) ) {
-                alt28=1;
-            }
-            else if ( (LA28_0==41) ) {
-                alt28=2;
-            }
-            else {
-                NoViableAltException nvae =
-                    new NoViableAltException("", 28, 0, input);
-
-                throw nvae;
-            }
-            switch (alt28) {
-                case 1 :
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1318:3: ( ( ruleEString ) )
-                    {
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1318:3: ( ( ruleEString ) )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1319:1: ( ruleEString )
-                    {
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1319:1: ( ruleEString )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1320:3: ruleEString
-                    {
-
-                    			if (current==null) {
-                    	            current = createModelElement(grammarAccess.getSignatureRule());
-                    	        }
-                            
-                     
-                    	        newCompositeNode(grammarAccess.getSignatureAccess().getReturnTypeDataTypeCrossReference_0_0_0()); 
-                    	    
-                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleSignature2989);
-                    ruleEString();
-
-                    state._fsp--;
-
-                     
-                    	        afterParserOrEnumRuleCall();
-                    	    
-
-                    }
-
-
-                    }
-
-
-                    }
-                    break;
-                case 2 :
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1334:7: otherlv_1= 'void'
-                    {
-                    otherlv_1=(Token)match(input,41,FollowSets000.FOLLOW_41_in_ruleSignature3007); 
-
-                        	newLeafNode(otherlv_1, grammarAccess.getSignatureAccess().getVoidKeyword_0_1());
-                        
-
-                    }
-                    break;
-
-            }
-
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1338:2: ( (lv_name_2_0= ruleEString ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1339:1: (lv_name_2_0= ruleEString )
-            {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1339:1: (lv_name_2_0= ruleEString )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1340:3: lv_name_2_0= ruleEString
-            {
-             
-            	        newCompositeNode(grammarAccess.getSignatureAccess().getNameEStringParserRuleCall_1_0()); 
-            	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleSignature3029);
-            lv_name_2_0=ruleEString();
-
-            state._fsp--;
-
-
-            	        if (current==null) {
-            	            current = createModelElementForParent(grammarAccess.getSignatureRule());
-            	        }
-                   		set(
-                   			current, 
-                   			"name",
-                    		lv_name_2_0, 
-                    		"EString");
-            	        afterParserOrEnumRuleCall();
-            	    
-
-            }
-
-
-            }
-
-            otherlv_3=(Token)match(input,25,FollowSets000.FOLLOW_25_in_ruleSignature3041); 
-
-                	newLeafNode(otherlv_3, grammarAccess.getSignatureAccess().getLeftParenthesisKeyword_2());
-                
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1360:1: ( ( (lv_parameters_4_0= ruleParameter ) ) (otherlv_5= ',' ( (lv_parameters_6_0= ruleParameter ) ) )* )?
-            int alt30=2;
-            int LA30_0 = input.LA(1);
-
-            if ( ((LA30_0>=RULE_ID && LA30_0<=RULE_STRING)) ) {
-                alt30=1;
-            }
-            switch (alt30) {
-                case 1 :
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1360:2: ( (lv_parameters_4_0= ruleParameter ) ) (otherlv_5= ',' ( (lv_parameters_6_0= ruleParameter ) ) )*
-                    {
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1360:2: ( (lv_parameters_4_0= ruleParameter ) )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1361:1: (lv_parameters_4_0= ruleParameter )
-                    {
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1361:1: (lv_parameters_4_0= ruleParameter )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1362:3: lv_parameters_4_0= ruleParameter
-                    {
-                     
-                    	        newCompositeNode(grammarAccess.getSignatureAccess().getParametersParameterParserRuleCall_3_0_0()); 
-                    	    
-                    pushFollow(FollowSets000.FOLLOW_ruleParameter_in_ruleSignature3063);
-                    lv_parameters_4_0=ruleParameter();
-
-                    state._fsp--;
-
-
-                    	        if (current==null) {
-                    	            current = createModelElementForParent(grammarAccess.getSignatureRule());
-                    	        }
-                           		add(
-                           			current, 
-                           			"parameters",
-                            		lv_parameters_4_0, 
-                            		"Parameter");
-                    	        afterParserOrEnumRuleCall();
-                    	    
-
-                    }
-
-
-                    }
-
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1378:2: (otherlv_5= ',' ( (lv_parameters_6_0= ruleParameter ) ) )*
-                    loop29:
-                    do {
-                        int alt29=2;
-                        int LA29_0 = input.LA(1);
-
-                        if ( (LA29_0==14) ) {
-                            alt29=1;
-                        }
-
-
-                        switch (alt29) {
-                    	case 1 :
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1378:4: otherlv_5= ',' ( (lv_parameters_6_0= ruleParameter ) )
-                    	    {
-                    	    otherlv_5=(Token)match(input,14,FollowSets000.FOLLOW_14_in_ruleSignature3076); 
-
-                    	        	newLeafNode(otherlv_5, grammarAccess.getSignatureAccess().getCommaKeyword_3_1_0());
-                    	        
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1382:1: ( (lv_parameters_6_0= ruleParameter ) )
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1383:1: (lv_parameters_6_0= ruleParameter )
-                    	    {
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1383:1: (lv_parameters_6_0= ruleParameter )
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1384:3: lv_parameters_6_0= ruleParameter
-                    	    {
-                    	     
-                    	    	        newCompositeNode(grammarAccess.getSignatureAccess().getParametersParameterParserRuleCall_3_1_1_0()); 
-                    	    	    
-                    	    pushFollow(FollowSets000.FOLLOW_ruleParameter_in_ruleSignature3097);
-                    	    lv_parameters_6_0=ruleParameter();
-
-                    	    state._fsp--;
-
-
-                    	    	        if (current==null) {
-                    	    	            current = createModelElementForParent(grammarAccess.getSignatureRule());
-                    	    	        }
-                    	           		add(
-                    	           			current, 
-                    	           			"parameters",
-                    	            		lv_parameters_6_0, 
-                    	            		"Parameter");
-                    	    	        afterParserOrEnumRuleCall();
-                    	    	    
-
-                    	    }
-
-
-                    	    }
-
-
-                    	    }
-                    	    break;
-
-                    	default :
-                    	    break loop29;
-                        }
-                    } while (true);
-
-
-                    }
-                    break;
-
-            }
-
-            otherlv_7=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleSignature3113); 
-
-                	newLeafNode(otherlv_7, grammarAccess.getSignatureAccess().getRightParenthesisKeyword_4());
-                
-
-            }
-
-
-            }
-
-             leaveRule(); 
-        }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
-                appendSkippedTokens();
-            } 
-        finally {
-        }
-        return current;
-    }
-    // $ANTLR end "ruleSignature"
-
-
-    // $ANTLR start "entryRuleParameter"
-    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1412:1: entryRuleParameter returns [EObject current=null] : iv_ruleParameter= ruleParameter EOF ;
-    public final EObject entryRuleParameter() throws RecognitionException {
-        EObject current = null;
-
-        EObject iv_ruleParameter = null;
-
-
-        try {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1413:2: (iv_ruleParameter= ruleParameter EOF )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1414:2: iv_ruleParameter= ruleParameter EOF
-            {
-             newCompositeNode(grammarAccess.getParameterRule()); 
-            pushFollow(FollowSets000.FOLLOW_ruleParameter_in_entryRuleParameter3149);
-            iv_ruleParameter=ruleParameter();
-
-            state._fsp--;
-
-             current =iv_ruleParameter; 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleParameter3159); 
-
-            }
-
-        }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
-                appendSkippedTokens();
-            } 
-        finally {
-        }
-        return current;
-    }
-    // $ANTLR end "entryRuleParameter"
-
-
-    // $ANTLR start "ruleParameter"
-    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1421:1: ruleParameter returns [EObject current=null] : ( ( ( ruleEString ) ) ( (lv_name_1_0= ruleEString ) ) ) ;
-    public final EObject ruleParameter() throws RecognitionException {
-        EObject current = null;
-
-        AntlrDatatypeRuleToken lv_name_1_0 = null;
-
-
-         enterRule(); 
-            
-        try {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1424:28: ( ( ( ( ruleEString ) ) ( (lv_name_1_0= ruleEString ) ) ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1425:1: ( ( ( ruleEString ) ) ( (lv_name_1_0= ruleEString ) ) )
-            {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1425:1: ( ( ( ruleEString ) ) ( (lv_name_1_0= ruleEString ) ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1425:2: ( ( ruleEString ) ) ( (lv_name_1_0= ruleEString ) )
-            {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1425:2: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1426:1: ( ruleEString )
-            {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1426:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1427:3: ruleEString
-            {
-
-            			if (current==null) {
-            	            current = createModelElement(grammarAccess.getParameterRule());
-            	        }
-                    
-             
-            	        newCompositeNode(grammarAccess.getParameterAccess().getDataTypeDataTypeCrossReference_0_0()); 
-            	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleParameter3207);
-            ruleEString();
-
-            state._fsp--;
-
-             
-            	        afterParserOrEnumRuleCall();
-            	    
-
-            }
-
-
-            }
-
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1440:2: ( (lv_name_1_0= ruleEString ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1441:1: (lv_name_1_0= ruleEString )
-            {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1441:1: (lv_name_1_0= ruleEString )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1442:3: lv_name_1_0= ruleEString
-            {
-             
-            	        newCompositeNode(grammarAccess.getParameterAccess().getNameEStringParserRuleCall_1_0()); 
-            	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleParameter3228);
-            lv_name_1_0=ruleEString();
-
-            state._fsp--;
-
-
-            	        if (current==null) {
-            	            current = createModelElementForParent(grammarAccess.getParameterRule());
-            	        }
-                   		set(
-                   			current, 
-                   			"name",
-                    		lv_name_1_0, 
-                    		"EString");
-            	        afterParserOrEnumRuleCall();
-            	    
-
-            }
-
-
-            }
-
-
-            }
-
-
-            }
-
-             leaveRule(); 
-        }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
-                appendSkippedTokens();
-            } 
-        finally {
-        }
-        return current;
-    }
-    // $ANTLR end "ruleParameter"
-
-
-    // $ANTLR start "entryRuleProvidedRole"
-    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1466:1: entryRuleProvidedRole returns [EObject current=null] : iv_ruleProvidedRole= ruleProvidedRole EOF ;
-    public final EObject entryRuleProvidedRole() throws RecognitionException {
-        EObject current = null;
-
-        EObject iv_ruleProvidedRole = null;
-
-
-        try {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1467:2: (iv_ruleProvidedRole= ruleProvidedRole EOF )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1468:2: iv_ruleProvidedRole= ruleProvidedRole EOF
-            {
-             newCompositeNode(grammarAccess.getProvidedRoleRule()); 
-            pushFollow(FollowSets000.FOLLOW_ruleProvidedRole_in_entryRuleProvidedRole3264);
-            iv_ruleProvidedRole=ruleProvidedRole();
-
-            state._fsp--;
-
-             current =iv_ruleProvidedRole; 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleProvidedRole3274); 
-
-            }
-
-        }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
-                appendSkippedTokens();
-            } 
-        finally {
-        }
-        return current;
-    }
-    // $ANTLR end "entryRuleProvidedRole"
-
-
-    // $ANTLR start "ruleProvidedRole"
-    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1475:1: ruleProvidedRole returns [EObject current=null] : (otherlv_0= 'ProvidedRole' ( ( ruleEString ) ) (otherlv_2= ',' )? ) ;
-    public final EObject ruleProvidedRole() throws RecognitionException {
-        EObject current = null;
-
-        Token otherlv_0=null;
-        Token otherlv_2=null;
-
-         enterRule(); 
-            
-        try {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1478:28: ( (otherlv_0= 'ProvidedRole' ( ( ruleEString ) ) (otherlv_2= ',' )? ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1479:1: (otherlv_0= 'ProvidedRole' ( ( ruleEString ) ) (otherlv_2= ',' )? )
-            {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1479:1: (otherlv_0= 'ProvidedRole' ( ( ruleEString ) ) (otherlv_2= ',' )? )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1479:3: otherlv_0= 'ProvidedRole' ( ( ruleEString ) ) (otherlv_2= ',' )?
-            {
-            otherlv_0=(Token)match(input,42,FollowSets000.FOLLOW_42_in_ruleProvidedRole3311); 
-
-                	newLeafNode(otherlv_0, grammarAccess.getProvidedRoleAccess().getProvidedRoleKeyword_0());
-                
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1483:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1484:1: ( ruleEString )
-            {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1484:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1485:3: ruleEString
-            {
-
-            			if (current==null) {
-            	            current = createModelElement(grammarAccess.getProvidedRoleRule());
-            	        }
-                    
-             
-            	        newCompositeNode(grammarAccess.getProvidedRoleAccess().getInterfaceInterfaceCrossReference_1_0()); 
-            	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleProvidedRole3334);
-            ruleEString();
-
-            state._fsp--;
-
-             
-            	        afterParserOrEnumRuleCall();
-            	    
-
-            }
-
-
-            }
-
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1498:2: (otherlv_2= ',' )?
-            int alt31=2;
-            int LA31_0 = input.LA(1);
-
-            if ( (LA31_0==14) ) {
-                int LA31_1 = input.LA(2);
-
-                if ( (LA31_1==EOF||LA31_1==12||(LA31_1>=14 && LA31_1<=15)||LA31_1==43) ) {
-                    alt31=1;
-                }
-            }
-            switch (alt31) {
-                case 1 :
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1498:4: otherlv_2= ','
-                    {
-                    otherlv_2=(Token)match(input,14,FollowSets000.FOLLOW_14_in_ruleProvidedRole3347); 
-
-                        	newLeafNode(otherlv_2, grammarAccess.getProvidedRoleAccess().getCommaKeyword_2());
-                        
-
-                    }
-                    break;
-
-            }
-
-
-            }
-
-
-            }
-
-             leaveRule(); 
-        }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
-                appendSkippedTokens();
-            } 
-        finally {
-        }
-        return current;
-    }
-    // $ANTLR end "ruleProvidedRole"
-
-
-    // $ANTLR start "entryRuleRequiredRole"
-    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1510:1: entryRuleRequiredRole returns [EObject current=null] : iv_ruleRequiredRole= ruleRequiredRole EOF ;
-    public final EObject entryRuleRequiredRole() throws RecognitionException {
-        EObject current = null;
-
-        EObject iv_ruleRequiredRole = null;
-
-
-        try {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1511:2: (iv_ruleRequiredRole= ruleRequiredRole EOF )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1512:2: iv_ruleRequiredRole= ruleRequiredRole EOF
-            {
-             newCompositeNode(grammarAccess.getRequiredRoleRule()); 
-            pushFollow(FollowSets000.FOLLOW_ruleRequiredRole_in_entryRuleRequiredRole3385);
-            iv_ruleRequiredRole=ruleRequiredRole();
-
-            state._fsp--;
-
-             current =iv_ruleRequiredRole; 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleRequiredRole3395); 
-
-            }
-
-        }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
-                appendSkippedTokens();
-            } 
-        finally {
-        }
-        return current;
-    }
-    // $ANTLR end "entryRuleRequiredRole"
-
-
-    // $ANTLR start "ruleRequiredRole"
-    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1519:1: ruleRequiredRole returns [EObject current=null] : (otherlv_0= 'RequiredRole' ( ( ruleEString ) ) (otherlv_2= ',' )? ) ;
-    public final EObject ruleRequiredRole() throws RecognitionException {
-        EObject current = null;
-
-        Token otherlv_0=null;
-        Token otherlv_2=null;
-
-         enterRule(); 
-            
-        try {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1522:28: ( (otherlv_0= 'RequiredRole' ( ( ruleEString ) ) (otherlv_2= ',' )? ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1523:1: (otherlv_0= 'RequiredRole' ( ( ruleEString ) ) (otherlv_2= ',' )? )
-            {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1523:1: (otherlv_0= 'RequiredRole' ( ( ruleEString ) ) (otherlv_2= ',' )? )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1523:3: otherlv_0= 'RequiredRole' ( ( ruleEString ) ) (otherlv_2= ',' )?
-            {
-            otherlv_0=(Token)match(input,43,FollowSets000.FOLLOW_43_in_ruleRequiredRole3432); 
-
-                	newLeafNode(otherlv_0, grammarAccess.getRequiredRoleAccess().getRequiredRoleKeyword_0());
-                
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1527:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1528:1: ( ruleEString )
-            {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1528:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1529:3: ruleEString
-            {
-
-            			if (current==null) {
-            	            current = createModelElement(grammarAccess.getRequiredRoleRule());
-            	        }
-                    
-             
-            	        newCompositeNode(grammarAccess.getRequiredRoleAccess().getInterfaceInterfaceCrossReference_1_0()); 
-            	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleRequiredRole3455);
-            ruleEString();
-
-            state._fsp--;
-
-             
-            	        afterParserOrEnumRuleCall();
-            	    
-
-            }
-
-
-            }
-
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1542:2: (otherlv_2= ',' )?
-            int alt32=2;
-            int LA32_0 = input.LA(1);
-
-            if ( (LA32_0==14) ) {
-                int LA32_1 = input.LA(2);
-
-                if ( (LA32_1==EOF||LA32_1==12||(LA32_1>=14 && LA32_1<=15)) ) {
-                    alt32=1;
-                }
-            }
-            switch (alt32) {
-                case 1 :
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1542:4: otherlv_2= ','
-                    {
-                    otherlv_2=(Token)match(input,14,FollowSets000.FOLLOW_14_in_ruleRequiredRole3468); 
-
-                        	newLeafNode(otherlv_2, grammarAccess.getRequiredRoleAccess().getCommaKeyword_2());
-                        
-
-                    }
-                    break;
-
-            }
-
-
-            }
-
-
-            }
-
-             leaveRule(); 
-        }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
-                appendSkippedTokens();
-            } 
-        finally {
-        }
-        return current;
-    }
-    // $ANTLR end "ruleRequiredRole"
-
-
-    // $ANTLR start "entryRuleBasicComponent"
-    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1554:1: entryRuleBasicComponent returns [EObject current=null] : iv_ruleBasicComponent= ruleBasicComponent EOF ;
-    public final EObject entryRuleBasicComponent() throws RecognitionException {
-        EObject current = null;
-
-        EObject iv_ruleBasicComponent = null;
-
-
-        try {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1555:2: (iv_ruleBasicComponent= ruleBasicComponent EOF )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1556:2: iv_ruleBasicComponent= ruleBasicComponent EOF
-            {
-             newCompositeNode(grammarAccess.getBasicComponentRule()); 
-            pushFollow(FollowSets000.FOLLOW_ruleBasicComponent_in_entryRuleBasicComponent3506);
-            iv_ruleBasicComponent=ruleBasicComponent();
-
-            state._fsp--;
-
-             current =iv_ruleBasicComponent; 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleBasicComponent3516); 
-
-            }
-
-        }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
-                appendSkippedTokens();
-            } 
-        finally {
-        }
-        return current;
-    }
-    // $ANTLR end "entryRuleBasicComponent"
-
-
-    // $ANTLR start "ruleBasicComponent"
-    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1563:1: ruleBasicComponent returns [EObject current=null] : (otherlv_0= 'BasicComponent' ( (lv_name_1_0= ruleEString ) ) ( ( (lv_providedRoles_2_0= ruleProvidedRole ) ) (otherlv_3= ',' ( (lv_providedRoles_4_0= ruleProvidedRole ) ) )* )? ( ( (lv_requiredRoles_5_0= ruleRequiredRole ) ) (otherlv_6= ',' ( (lv_requiredRoles_7_0= ruleRequiredRole ) ) )* )? otherlv_8= '{' (otherlv_9= 'relationship' otherlv_10= '(' ( ( ruleEString ) ) (otherlv_12= ',' ( ( ruleEString ) ) )* otherlv_14= ')' )? otherlv_15= '}' ) ;
-    public final EObject ruleBasicComponent() throws RecognitionException {
-        EObject current = null;
-
-        Token otherlv_0=null;
-        Token otherlv_3=null;
-        Token otherlv_6=null;
-        Token otherlv_8=null;
-        Token otherlv_9=null;
-        Token otherlv_10=null;
-        Token otherlv_12=null;
-        Token otherlv_14=null;
-        Token otherlv_15=null;
-        AntlrDatatypeRuleToken lv_name_1_0 = null;
-
-        EObject lv_providedRoles_2_0 = null;
-
-        EObject lv_providedRoles_4_0 = null;
-
-        EObject lv_requiredRoles_5_0 = null;
-
-        EObject lv_requiredRoles_7_0 = null;
-
-
-         enterRule(); 
-            
-        try {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1566:28: ( (otherlv_0= 'BasicComponent' ( (lv_name_1_0= ruleEString ) ) ( ( (lv_providedRoles_2_0= ruleProvidedRole ) ) (otherlv_3= ',' ( (lv_providedRoles_4_0= ruleProvidedRole ) ) )* )? ( ( (lv_requiredRoles_5_0= ruleRequiredRole ) ) (otherlv_6= ',' ( (lv_requiredRoles_7_0= ruleRequiredRole ) ) )* )? otherlv_8= '{' (otherlv_9= 'relationship' otherlv_10= '(' ( ( ruleEString ) ) (otherlv_12= ',' ( ( ruleEString ) ) )* otherlv_14= ')' )? otherlv_15= '}' ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1567:1: (otherlv_0= 'BasicComponent' ( (lv_name_1_0= ruleEString ) ) ( ( (lv_providedRoles_2_0= ruleProvidedRole ) ) (otherlv_3= ',' ( (lv_providedRoles_4_0= ruleProvidedRole ) ) )* )? ( ( (lv_requiredRoles_5_0= ruleRequiredRole ) ) (otherlv_6= ',' ( (lv_requiredRoles_7_0= ruleRequiredRole ) ) )* )? otherlv_8= '{' (otherlv_9= 'relationship' otherlv_10= '(' ( ( ruleEString ) ) (otherlv_12= ',' ( ( ruleEString ) ) )* otherlv_14= ')' )? otherlv_15= '}' )
-            {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1567:1: (otherlv_0= 'BasicComponent' ( (lv_name_1_0= ruleEString ) ) ( ( (lv_providedRoles_2_0= ruleProvidedRole ) ) (otherlv_3= ',' ( (lv_providedRoles_4_0= ruleProvidedRole ) ) )* )? ( ( (lv_requiredRoles_5_0= ruleRequiredRole ) ) (otherlv_6= ',' ( (lv_requiredRoles_7_0= ruleRequiredRole ) ) )* )? otherlv_8= '{' (otherlv_9= 'relationship' otherlv_10= '(' ( ( ruleEString ) ) (otherlv_12= ',' ( ( ruleEString ) ) )* otherlv_14= ')' )? otherlv_15= '}' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1567:3: otherlv_0= 'BasicComponent' ( (lv_name_1_0= ruleEString ) ) ( ( (lv_providedRoles_2_0= ruleProvidedRole ) ) (otherlv_3= ',' ( (lv_providedRoles_4_0= ruleProvidedRole ) ) )* )? ( ( (lv_requiredRoles_5_0= ruleRequiredRole ) ) (otherlv_6= ',' ( (lv_requiredRoles_7_0= ruleRequiredRole ) ) )* )? otherlv_8= '{' (otherlv_9= 'relationship' otherlv_10= '(' ( ( ruleEString ) ) (otherlv_12= ',' ( ( ruleEString ) ) )* otherlv_14= ')' )? otherlv_15= '}'
-            {
-            otherlv_0=(Token)match(input,44,FollowSets000.FOLLOW_44_in_ruleBasicComponent3553); 
-
-                	newLeafNode(otherlv_0, grammarAccess.getBasicComponentAccess().getBasicComponentKeyword_0());
-                
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1571:1: ( (lv_name_1_0= ruleEString ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1572:1: (lv_name_1_0= ruleEString )
-            {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1572:1: (lv_name_1_0= ruleEString )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1573:3: lv_name_1_0= ruleEString
-            {
-             
-            	        newCompositeNode(grammarAccess.getBasicComponentAccess().getNameEStringParserRuleCall_1_0()); 
-            	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleBasicComponent3574);
-            lv_name_1_0=ruleEString();
-
-            state._fsp--;
-
-
-            	        if (current==null) {
-            	            current = createModelElementForParent(grammarAccess.getBasicComponentRule());
-            	        }
-                   		set(
-                   			current, 
-                   			"name",
-                    		lv_name_1_0, 
-                    		"EString");
-            	        afterParserOrEnumRuleCall();
-            	    
-
-            }
-
-
-            }
-
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1589:2: ( ( (lv_providedRoles_2_0= ruleProvidedRole ) ) (otherlv_3= ',' ( (lv_providedRoles_4_0= ruleProvidedRole ) ) )* )?
-            int alt34=2;
-            int LA34_0 = input.LA(1);
-
-            if ( (LA34_0==42) ) {
-                alt34=1;
-            }
-            switch (alt34) {
-                case 1 :
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1589:3: ( (lv_providedRoles_2_0= ruleProvidedRole ) ) (otherlv_3= ',' ( (lv_providedRoles_4_0= ruleProvidedRole ) ) )*
-                    {
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1589:3: ( (lv_providedRoles_2_0= ruleProvidedRole ) )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1590:1: (lv_providedRoles_2_0= ruleProvidedRole )
-                    {
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1590:1: (lv_providedRoles_2_0= ruleProvidedRole )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1591:3: lv_providedRoles_2_0= ruleProvidedRole
-                    {
-                     
-                    	        newCompositeNode(grammarAccess.getBasicComponentAccess().getProvidedRolesProvidedRoleParserRuleCall_2_0_0()); 
-                    	    
-                    pushFollow(FollowSets000.FOLLOW_ruleProvidedRole_in_ruleBasicComponent3596);
-                    lv_providedRoles_2_0=ruleProvidedRole();
-
-                    state._fsp--;
-
-
-                    	        if (current==null) {
-                    	            current = createModelElementForParent(grammarAccess.getBasicComponentRule());
-                    	        }
-                           		add(
-                           			current, 
-                           			"providedRoles",
-                            		lv_providedRoles_2_0, 
-                            		"ProvidedRole");
-                    	        afterParserOrEnumRuleCall();
-                    	    
-
-                    }
-
-
-                    }
-
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1607:2: (otherlv_3= ',' ( (lv_providedRoles_4_0= ruleProvidedRole ) ) )*
-                    loop33:
-                    do {
-                        int alt33=2;
-                        int LA33_0 = input.LA(1);
-
-                        if ( (LA33_0==14) ) {
-                            alt33=1;
-                        }
-
-
-                        switch (alt33) {
-                    	case 1 :
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1607:4: otherlv_3= ',' ( (lv_providedRoles_4_0= ruleProvidedRole ) )
-                    	    {
-                    	    otherlv_3=(Token)match(input,14,FollowSets000.FOLLOW_14_in_ruleBasicComponent3609); 
-
-                    	        	newLeafNode(otherlv_3, grammarAccess.getBasicComponentAccess().getCommaKeyword_2_1_0());
-                    	        
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1611:1: ( (lv_providedRoles_4_0= ruleProvidedRole ) )
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1612:1: (lv_providedRoles_4_0= ruleProvidedRole )
-                    	    {
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1612:1: (lv_providedRoles_4_0= ruleProvidedRole )
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1613:3: lv_providedRoles_4_0= ruleProvidedRole
-                    	    {
-                    	     
-                    	    	        newCompositeNode(grammarAccess.getBasicComponentAccess().getProvidedRolesProvidedRoleParserRuleCall_2_1_1_0()); 
-                    	    	    
-                    	    pushFollow(FollowSets000.FOLLOW_ruleProvidedRole_in_ruleBasicComponent3630);
-                    	    lv_providedRoles_4_0=ruleProvidedRole();
-
-                    	    state._fsp--;
-
-
-                    	    	        if (current==null) {
-                    	    	            current = createModelElementForParent(grammarAccess.getBasicComponentRule());
-                    	    	        }
-                    	           		add(
-                    	           			current, 
-                    	           			"providedRoles",
-                    	            		lv_providedRoles_4_0, 
-                    	            		"ProvidedRole");
-                    	    	        afterParserOrEnumRuleCall();
-                    	    	    
-
-                    	    }
-
-
-                    	    }
-
-
-                    	    }
-                    	    break;
-
-                    	default :
-                    	    break loop33;
-                        }
-                    } while (true);
-
-
-                    }
-                    break;
-
-            }
-
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1629:6: ( ( (lv_requiredRoles_5_0= ruleRequiredRole ) ) (otherlv_6= ',' ( (lv_requiredRoles_7_0= ruleRequiredRole ) ) )* )?
-            int alt36=2;
-            int LA36_0 = input.LA(1);
-
-            if ( (LA36_0==43) ) {
-                alt36=1;
-            }
-            switch (alt36) {
-                case 1 :
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1629:7: ( (lv_requiredRoles_5_0= ruleRequiredRole ) ) (otherlv_6= ',' ( (lv_requiredRoles_7_0= ruleRequiredRole ) ) )*
-                    {
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1629:7: ( (lv_requiredRoles_5_0= ruleRequiredRole ) )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1630:1: (lv_requiredRoles_5_0= ruleRequiredRole )
-                    {
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1630:1: (lv_requiredRoles_5_0= ruleRequiredRole )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1631:3: lv_requiredRoles_5_0= ruleRequiredRole
-                    {
-                     
-                    	        newCompositeNode(grammarAccess.getBasicComponentAccess().getRequiredRolesRequiredRoleParserRuleCall_3_0_0()); 
-                    	    
-                    pushFollow(FollowSets000.FOLLOW_ruleRequiredRole_in_ruleBasicComponent3656);
-                    lv_requiredRoles_5_0=ruleRequiredRole();
-
-                    state._fsp--;
-
-
-                    	        if (current==null) {
-                    	            current = createModelElementForParent(grammarAccess.getBasicComponentRule());
-                    	        }
-                           		add(
-                           			current, 
-                           			"requiredRoles",
-                            		lv_requiredRoles_5_0, 
-                            		"RequiredRole");
-                    	        afterParserOrEnumRuleCall();
-                    	    
-
-                    }
-
-
-                    }
-
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1647:2: (otherlv_6= ',' ( (lv_requiredRoles_7_0= ruleRequiredRole ) ) )*
-                    loop35:
-                    do {
-                        int alt35=2;
-                        int LA35_0 = input.LA(1);
-
-                        if ( (LA35_0==14) ) {
-                            alt35=1;
-                        }
-
-
-                        switch (alt35) {
-                    	case 1 :
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1647:4: otherlv_6= ',' ( (lv_requiredRoles_7_0= ruleRequiredRole ) )
-                    	    {
-                    	    otherlv_6=(Token)match(input,14,FollowSets000.FOLLOW_14_in_ruleBasicComponent3669); 
-
-                    	        	newLeafNode(otherlv_6, grammarAccess.getBasicComponentAccess().getCommaKeyword_3_1_0());
-                    	        
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1651:1: ( (lv_requiredRoles_7_0= ruleRequiredRole ) )
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1652:1: (lv_requiredRoles_7_0= ruleRequiredRole )
-                    	    {
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1652:1: (lv_requiredRoles_7_0= ruleRequiredRole )
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1653:3: lv_requiredRoles_7_0= ruleRequiredRole
-                    	    {
-                    	     
-                    	    	        newCompositeNode(grammarAccess.getBasicComponentAccess().getRequiredRolesRequiredRoleParserRuleCall_3_1_1_0()); 
-                    	    	    
-                    	    pushFollow(FollowSets000.FOLLOW_ruleRequiredRole_in_ruleBasicComponent3690);
-                    	    lv_requiredRoles_7_0=ruleRequiredRole();
-
-                    	    state._fsp--;
-
-
-                    	    	        if (current==null) {
-                    	    	            current = createModelElementForParent(grammarAccess.getBasicComponentRule());
-                    	    	        }
-                    	           		add(
-                    	           			current, 
-                    	           			"requiredRoles",
-                    	            		lv_requiredRoles_7_0, 
-                    	            		"RequiredRole");
-                    	    	        afterParserOrEnumRuleCall();
-                    	    	    
-
-                    	    }
-
-
-                    	    }
-
-
-                    	    }
-                    	    break;
-
-                    	default :
-                    	    break loop35;
-                        }
-                    } while (true);
-
-
-                    }
-                    break;
-
-            }
-
-            otherlv_8=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleBasicComponent3706); 
-
-                	newLeafNode(otherlv_8, grammarAccess.getBasicComponentAccess().getLeftCurlyBracketKeyword_4());
-                
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1673:1: (otherlv_9= 'relationship' otherlv_10= '(' ( ( ruleEString ) ) (otherlv_12= ',' ( ( ruleEString ) ) )* otherlv_14= ')' )?
-            int alt38=2;
-            int LA38_0 = input.LA(1);
-
-            if ( (LA38_0==28) ) {
-                alt38=1;
-            }
-            switch (alt38) {
-                case 1 :
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1673:3: otherlv_9= 'relationship' otherlv_10= '(' ( ( ruleEString ) ) (otherlv_12= ',' ( ( ruleEString ) ) )* otherlv_14= ')'
-                    {
-                    otherlv_9=(Token)match(input,28,FollowSets000.FOLLOW_28_in_ruleBasicComponent3719); 
-
-                        	newLeafNode(otherlv_9, grammarAccess.getBasicComponentAccess().getRelationshipKeyword_5_0());
-                        
-                    otherlv_10=(Token)match(input,25,FollowSets000.FOLLOW_25_in_ruleBasicComponent3731); 
-
-                        	newLeafNode(otherlv_10, grammarAccess.getBasicComponentAccess().getLeftParenthesisKeyword_5_1());
-                        
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1681:1: ( ( ruleEString ) )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1682:1: ( ruleEString )
-                    {
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1682:1: ( ruleEString )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1683:3: ruleEString
-                    {
-
-                    			if (current==null) {
-                    	            current = createModelElement(grammarAccess.getBasicComponentRule());
-                    	        }
-                            
-                     
-                    	        newCompositeNode(grammarAccess.getBasicComponentAccess().getRelationshipRelationshipCrossReference_5_2_0()); 
-                    	    
-                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleBasicComponent3754);
-                    ruleEString();
-
-                    state._fsp--;
-
-                     
-                    	        afterParserOrEnumRuleCall();
-                    	    
-
-                    }
-
-
-                    }
-
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1696:2: (otherlv_12= ',' ( ( ruleEString ) ) )*
-                    loop37:
-                    do {
-                        int alt37=2;
-                        int LA37_0 = input.LA(1);
-
-                        if ( (LA37_0==14) ) {
-                            alt37=1;
-                        }
-
-
-                        switch (alt37) {
-                    	case 1 :
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1696:4: otherlv_12= ',' ( ( ruleEString ) )
-                    	    {
-                    	    otherlv_12=(Token)match(input,14,FollowSets000.FOLLOW_14_in_ruleBasicComponent3767); 
-
-                    	        	newLeafNode(otherlv_12, grammarAccess.getBasicComponentAccess().getCommaKeyword_5_3_0());
-                    	        
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1700:1: ( ( ruleEString ) )
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1701:1: ( ruleEString )
-                    	    {
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1701:1: ( ruleEString )
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1702:3: ruleEString
-                    	    {
-
-                    	    			if (current==null) {
-                    	    	            current = createModelElement(grammarAccess.getBasicComponentRule());
-                    	    	        }
-                    	            
-                    	     
-                    	    	        newCompositeNode(grammarAccess.getBasicComponentAccess().getRelationshipRelationshipCrossReference_5_3_1_0()); 
-                    	    	    
-                    	    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleBasicComponent3790);
-                    	    ruleEString();
-
-                    	    state._fsp--;
-
-                    	     
-                    	    	        afterParserOrEnumRuleCall();
-                    	    	    
-
-                    	    }
-
-
-                    	    }
-
-
-                    	    }
-                    	    break;
-
-                    	default :
-                    	    break loop37;
-                        }
-                    } while (true);
-
-                    otherlv_14=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleBasicComponent3804); 
-
-                        	newLeafNode(otherlv_14, grammarAccess.getBasicComponentAccess().getRightParenthesisKeyword_5_4());
-                        
-
-                    }
-                    break;
-
-            }
-
-            otherlv_15=(Token)match(input,15,FollowSets000.FOLLOW_15_in_ruleBasicComponent3818); 
-
-                	newLeafNode(otherlv_15, grammarAccess.getBasicComponentAccess().getRightCurlyBracketKeyword_6());
-                
-
-            }
-
-
-            }
-
-             leaveRule(); 
-        }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
-                appendSkippedTokens();
-            } 
-        finally {
-        }
-        return current;
-    }
-    // $ANTLR end "ruleBasicComponent"
-
-
-    // $ANTLR start "entryRuleCompositeComponent"
-    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1731:1: entryRuleCompositeComponent returns [EObject current=null] : iv_ruleCompositeComponent= ruleCompositeComponent EOF ;
-    public final EObject entryRuleCompositeComponent() throws RecognitionException {
-        EObject current = null;
-
-        EObject iv_ruleCompositeComponent = null;
-
-
-        try {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1732:2: (iv_ruleCompositeComponent= ruleCompositeComponent EOF )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1733:2: iv_ruleCompositeComponent= ruleCompositeComponent EOF
-            {
-             newCompositeNode(grammarAccess.getCompositeComponentRule()); 
-            pushFollow(FollowSets000.FOLLOW_ruleCompositeComponent_in_entryRuleCompositeComponent3854);
-            iv_ruleCompositeComponent=ruleCompositeComponent();
-
-            state._fsp--;
-
-             current =iv_ruleCompositeComponent; 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleCompositeComponent3864); 
-
-            }
-
-        }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
-                appendSkippedTokens();
-            } 
-        finally {
-        }
-        return current;
-    }
-    // $ANTLR end "entryRuleCompositeComponent"
-
-
-    // $ANTLR start "ruleCompositeComponent"
-    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1740:1: ruleCompositeComponent returns [EObject current=null] : (otherlv_0= 'CompositeComponent' ( (lv_name_1_0= ruleEString ) ) ( ( (lv_providedRoles_2_0= ruleProvidedRole ) ) (otherlv_3= ',' ( (lv_providedRoles_4_0= ruleProvidedRole ) ) )* )? ( ( (lv_requiredRoles_5_0= ruleRequiredRole ) ) (otherlv_6= ',' ( (lv_requiredRoles_7_0= ruleRequiredRole ) ) )* )? otherlv_8= '{' (otherlv_9= 'relationship' otherlv_10= '(' ( ( ruleEString ) ) (otherlv_12= ',' ( ( ruleEString ) ) )* otherlv_14= ')' )? (otherlv_15= 'assembly' ( (lv_assembly_16_0= ruleComposedStructureAssembly ) ) )? otherlv_17= '}' ) ;
-    public final EObject ruleCompositeComponent() throws RecognitionException {
-        EObject current = null;
-
-        Token otherlv_0=null;
-        Token otherlv_3=null;
-        Token otherlv_6=null;
-        Token otherlv_8=null;
-        Token otherlv_9=null;
-        Token otherlv_10=null;
-        Token otherlv_12=null;
-        Token otherlv_14=null;
-        Token otherlv_15=null;
-        Token otherlv_17=null;
-        AntlrDatatypeRuleToken lv_name_1_0 = null;
-
-        EObject lv_providedRoles_2_0 = null;
-
-        EObject lv_providedRoles_4_0 = null;
-
-        EObject lv_requiredRoles_5_0 = null;
-
-        EObject lv_requiredRoles_7_0 = null;
-
-        EObject lv_assembly_16_0 = null;
-
-
-         enterRule(); 
-            
-        try {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1743:28: ( (otherlv_0= 'CompositeComponent' ( (lv_name_1_0= ruleEString ) ) ( ( (lv_providedRoles_2_0= ruleProvidedRole ) ) (otherlv_3= ',' ( (lv_providedRoles_4_0= ruleProvidedRole ) ) )* )? ( ( (lv_requiredRoles_5_0= ruleRequiredRole ) ) (otherlv_6= ',' ( (lv_requiredRoles_7_0= ruleRequiredRole ) ) )* )? otherlv_8= '{' (otherlv_9= 'relationship' otherlv_10= '(' ( ( ruleEString ) ) (otherlv_12= ',' ( ( ruleEString ) ) )* otherlv_14= ')' )? (otherlv_15= 'assembly' ( (lv_assembly_16_0= ruleComposedStructureAssembly ) ) )? otherlv_17= '}' ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1744:1: (otherlv_0= 'CompositeComponent' ( (lv_name_1_0= ruleEString ) ) ( ( (lv_providedRoles_2_0= ruleProvidedRole ) ) (otherlv_3= ',' ( (lv_providedRoles_4_0= ruleProvidedRole ) ) )* )? ( ( (lv_requiredRoles_5_0= ruleRequiredRole ) ) (otherlv_6= ',' ( (lv_requiredRoles_7_0= ruleRequiredRole ) ) )* )? otherlv_8= '{' (otherlv_9= 'relationship' otherlv_10= '(' ( ( ruleEString ) ) (otherlv_12= ',' ( ( ruleEString ) ) )* otherlv_14= ')' )? (otherlv_15= 'assembly' ( (lv_assembly_16_0= ruleComposedStructureAssembly ) ) )? otherlv_17= '}' )
-            {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1744:1: (otherlv_0= 'CompositeComponent' ( (lv_name_1_0= ruleEString ) ) ( ( (lv_providedRoles_2_0= ruleProvidedRole ) ) (otherlv_3= ',' ( (lv_providedRoles_4_0= ruleProvidedRole ) ) )* )? ( ( (lv_requiredRoles_5_0= ruleRequiredRole ) ) (otherlv_6= ',' ( (lv_requiredRoles_7_0= ruleRequiredRole ) ) )* )? otherlv_8= '{' (otherlv_9= 'relationship' otherlv_10= '(' ( ( ruleEString ) ) (otherlv_12= ',' ( ( ruleEString ) ) )* otherlv_14= ')' )? (otherlv_15= 'assembly' ( (lv_assembly_16_0= ruleComposedStructureAssembly ) ) )? otherlv_17= '}' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1744:3: otherlv_0= 'CompositeComponent' ( (lv_name_1_0= ruleEString ) ) ( ( (lv_providedRoles_2_0= ruleProvidedRole ) ) (otherlv_3= ',' ( (lv_providedRoles_4_0= ruleProvidedRole ) ) )* )? ( ( (lv_requiredRoles_5_0= ruleRequiredRole ) ) (otherlv_6= ',' ( (lv_requiredRoles_7_0= ruleRequiredRole ) ) )* )? otherlv_8= '{' (otherlv_9= 'relationship' otherlv_10= '(' ( ( ruleEString ) ) (otherlv_12= ',' ( ( ruleEString ) ) )* otherlv_14= ')' )? (otherlv_15= 'assembly' ( (lv_assembly_16_0= ruleComposedStructureAssembly ) ) )? otherlv_17= '}'
-            {
-            otherlv_0=(Token)match(input,45,FollowSets000.FOLLOW_45_in_ruleCompositeComponent3901); 
-
-                	newLeafNode(otherlv_0, grammarAccess.getCompositeComponentAccess().getCompositeComponentKeyword_0());
-                
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1748:1: ( (lv_name_1_0= ruleEString ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1749:1: (lv_name_1_0= ruleEString )
-            {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1749:1: (lv_name_1_0= ruleEString )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1750:3: lv_name_1_0= ruleEString
-            {
-             
-            	        newCompositeNode(grammarAccess.getCompositeComponentAccess().getNameEStringParserRuleCall_1_0()); 
-            	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleCompositeComponent3922);
-            lv_name_1_0=ruleEString();
-
-            state._fsp--;
-
-
-            	        if (current==null) {
-            	            current = createModelElementForParent(grammarAccess.getCompositeComponentRule());
-            	        }
-                   		set(
-                   			current, 
-                   			"name",
-                    		lv_name_1_0, 
-                    		"EString");
-            	        afterParserOrEnumRuleCall();
-            	    
-
-            }
-
-
-            }
-
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1766:2: ( ( (lv_providedRoles_2_0= ruleProvidedRole ) ) (otherlv_3= ',' ( (lv_providedRoles_4_0= ruleProvidedRole ) ) )* )?
-            int alt40=2;
-            int LA40_0 = input.LA(1);
-
-            if ( (LA40_0==42) ) {
-                alt40=1;
-            }
-            switch (alt40) {
-                case 1 :
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1766:3: ( (lv_providedRoles_2_0= ruleProvidedRole ) ) (otherlv_3= ',' ( (lv_providedRoles_4_0= ruleProvidedRole ) ) )*
-                    {
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1766:3: ( (lv_providedRoles_2_0= ruleProvidedRole ) )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1767:1: (lv_providedRoles_2_0= ruleProvidedRole )
-                    {
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1767:1: (lv_providedRoles_2_0= ruleProvidedRole )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1768:3: lv_providedRoles_2_0= ruleProvidedRole
-                    {
-                     
-                    	        newCompositeNode(grammarAccess.getCompositeComponentAccess().getProvidedRolesProvidedRoleParserRuleCall_2_0_0()); 
-                    	    
-                    pushFollow(FollowSets000.FOLLOW_ruleProvidedRole_in_ruleCompositeComponent3944);
-                    lv_providedRoles_2_0=ruleProvidedRole();
-
-                    state._fsp--;
-
-
-                    	        if (current==null) {
-                    	            current = createModelElementForParent(grammarAccess.getCompositeComponentRule());
-                    	        }
-                           		add(
-                           			current, 
-                           			"providedRoles",
-                            		lv_providedRoles_2_0, 
-                            		"ProvidedRole");
-                    	        afterParserOrEnumRuleCall();
-                    	    
-
-                    }
-
-
-                    }
-
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1784:2: (otherlv_3= ',' ( (lv_providedRoles_4_0= ruleProvidedRole ) ) )*
-                    loop39:
-                    do {
-                        int alt39=2;
-                        int LA39_0 = input.LA(1);
-
-                        if ( (LA39_0==14) ) {
-                            alt39=1;
-                        }
-
-
-                        switch (alt39) {
-                    	case 1 :
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1784:4: otherlv_3= ',' ( (lv_providedRoles_4_0= ruleProvidedRole ) )
-                    	    {
-                    	    otherlv_3=(Token)match(input,14,FollowSets000.FOLLOW_14_in_ruleCompositeComponent3957); 
-
-                    	        	newLeafNode(otherlv_3, grammarAccess.getCompositeComponentAccess().getCommaKeyword_2_1_0());
-                    	        
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1788:1: ( (lv_providedRoles_4_0= ruleProvidedRole ) )
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1789:1: (lv_providedRoles_4_0= ruleProvidedRole )
-                    	    {
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1789:1: (lv_providedRoles_4_0= ruleProvidedRole )
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1790:3: lv_providedRoles_4_0= ruleProvidedRole
-                    	    {
-                    	     
-                    	    	        newCompositeNode(grammarAccess.getCompositeComponentAccess().getProvidedRolesProvidedRoleParserRuleCall_2_1_1_0()); 
-                    	    	    
-                    	    pushFollow(FollowSets000.FOLLOW_ruleProvidedRole_in_ruleCompositeComponent3978);
-                    	    lv_providedRoles_4_0=ruleProvidedRole();
-
-                    	    state._fsp--;
-
-
-                    	    	        if (current==null) {
-                    	    	            current = createModelElementForParent(grammarAccess.getCompositeComponentRule());
-                    	    	        }
-                    	           		add(
-                    	           			current, 
-                    	           			"providedRoles",
-                    	            		lv_providedRoles_4_0, 
-                    	            		"ProvidedRole");
-                    	    	        afterParserOrEnumRuleCall();
-                    	    	    
-
-                    	    }
-
-
-                    	    }
-
-
-                    	    }
-                    	    break;
-
-                    	default :
-                    	    break loop39;
-                        }
-                    } while (true);
-
-
-                    }
-                    break;
-
-            }
-
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1806:6: ( ( (lv_requiredRoles_5_0= ruleRequiredRole ) ) (otherlv_6= ',' ( (lv_requiredRoles_7_0= ruleRequiredRole ) ) )* )?
-            int alt42=2;
-            int LA42_0 = input.LA(1);
-
-            if ( (LA42_0==43) ) {
-                alt42=1;
-            }
-            switch (alt42) {
-                case 1 :
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1806:7: ( (lv_requiredRoles_5_0= ruleRequiredRole ) ) (otherlv_6= ',' ( (lv_requiredRoles_7_0= ruleRequiredRole ) ) )*
-                    {
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1806:7: ( (lv_requiredRoles_5_0= ruleRequiredRole ) )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1807:1: (lv_requiredRoles_5_0= ruleRequiredRole )
-                    {
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1807:1: (lv_requiredRoles_5_0= ruleRequiredRole )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1808:3: lv_requiredRoles_5_0= ruleRequiredRole
-                    {
-                     
-                    	        newCompositeNode(grammarAccess.getCompositeComponentAccess().getRequiredRolesRequiredRoleParserRuleCall_3_0_0()); 
-                    	    
-                    pushFollow(FollowSets000.FOLLOW_ruleRequiredRole_in_ruleCompositeComponent4004);
-                    lv_requiredRoles_5_0=ruleRequiredRole();
-
-                    state._fsp--;
-
-
-                    	        if (current==null) {
-                    	            current = createModelElementForParent(grammarAccess.getCompositeComponentRule());
-                    	        }
-                           		add(
-                           			current, 
-                           			"requiredRoles",
-                            		lv_requiredRoles_5_0, 
-                            		"RequiredRole");
-                    	        afterParserOrEnumRuleCall();
-                    	    
-
-                    }
-
-
-                    }
-
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1824:2: (otherlv_6= ',' ( (lv_requiredRoles_7_0= ruleRequiredRole ) ) )*
-                    loop41:
-                    do {
-                        int alt41=2;
-                        int LA41_0 = input.LA(1);
-
-                        if ( (LA41_0==14) ) {
-                            alt41=1;
-                        }
-
-
-                        switch (alt41) {
-                    	case 1 :
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1824:4: otherlv_6= ',' ( (lv_requiredRoles_7_0= ruleRequiredRole ) )
-                    	    {
-                    	    otherlv_6=(Token)match(input,14,FollowSets000.FOLLOW_14_in_ruleCompositeComponent4017); 
-
-                    	        	newLeafNode(otherlv_6, grammarAccess.getCompositeComponentAccess().getCommaKeyword_3_1_0());
-                    	        
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1828:1: ( (lv_requiredRoles_7_0= ruleRequiredRole ) )
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1829:1: (lv_requiredRoles_7_0= ruleRequiredRole )
-                    	    {
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1829:1: (lv_requiredRoles_7_0= ruleRequiredRole )
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1830:3: lv_requiredRoles_7_0= ruleRequiredRole
-                    	    {
-                    	     
-                    	    	        newCompositeNode(grammarAccess.getCompositeComponentAccess().getRequiredRolesRequiredRoleParserRuleCall_3_1_1_0()); 
-                    	    	    
-                    	    pushFollow(FollowSets000.FOLLOW_ruleRequiredRole_in_ruleCompositeComponent4038);
-                    	    lv_requiredRoles_7_0=ruleRequiredRole();
-
-                    	    state._fsp--;
-
-
-                    	    	        if (current==null) {
-                    	    	            current = createModelElementForParent(grammarAccess.getCompositeComponentRule());
-                    	    	        }
-                    	           		add(
-                    	           			current, 
-                    	           			"requiredRoles",
-                    	            		lv_requiredRoles_7_0, 
-                    	            		"RequiredRole");
-                    	    	        afterParserOrEnumRuleCall();
-                    	    	    
-
-                    	    }
-
-
-                    	    }
-
-
-                    	    }
-                    	    break;
-
-                    	default :
-                    	    break loop41;
-                        }
-                    } while (true);
-
-
-                    }
-                    break;
-
-            }
-
-            otherlv_8=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleCompositeComponent4054); 
-
-                	newLeafNode(otherlv_8, grammarAccess.getCompositeComponentAccess().getLeftCurlyBracketKeyword_4());
-                
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1850:1: (otherlv_9= 'relationship' otherlv_10= '(' ( ( ruleEString ) ) (otherlv_12= ',' ( ( ruleEString ) ) )* otherlv_14= ')' )?
-            int alt44=2;
-            int LA44_0 = input.LA(1);
-
-            if ( (LA44_0==28) ) {
-                alt44=1;
-            }
-            switch (alt44) {
-                case 1 :
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1850:3: otherlv_9= 'relationship' otherlv_10= '(' ( ( ruleEString ) ) (otherlv_12= ',' ( ( ruleEString ) ) )* otherlv_14= ')'
-                    {
-                    otherlv_9=(Token)match(input,28,FollowSets000.FOLLOW_28_in_ruleCompositeComponent4067); 
-
-                        	newLeafNode(otherlv_9, grammarAccess.getCompositeComponentAccess().getRelationshipKeyword_5_0());
-                        
-                    otherlv_10=(Token)match(input,25,FollowSets000.FOLLOW_25_in_ruleCompositeComponent4079); 
-
-                        	newLeafNode(otherlv_10, grammarAccess.getCompositeComponentAccess().getLeftParenthesisKeyword_5_1());
-                        
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1858:1: ( ( ruleEString ) )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1859:1: ( ruleEString )
-                    {
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1859:1: ( ruleEString )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1860:3: ruleEString
-                    {
-
-                    			if (current==null) {
-                    	            current = createModelElement(grammarAccess.getCompositeComponentRule());
-                    	        }
-                            
-                     
-                    	        newCompositeNode(grammarAccess.getCompositeComponentAccess().getRelationshipRelationshipCrossReference_5_2_0()); 
-                    	    
-                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleCompositeComponent4102);
-                    ruleEString();
-
-                    state._fsp--;
-
-                     
-                    	        afterParserOrEnumRuleCall();
-                    	    
-
-                    }
-
-
-                    }
-
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1873:2: (otherlv_12= ',' ( ( ruleEString ) ) )*
-                    loop43:
-                    do {
-                        int alt43=2;
-                        int LA43_0 = input.LA(1);
-
-                        if ( (LA43_0==14) ) {
-                            alt43=1;
-                        }
-
-
-                        switch (alt43) {
-                    	case 1 :
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1873:4: otherlv_12= ',' ( ( ruleEString ) )
-                    	    {
-                    	    otherlv_12=(Token)match(input,14,FollowSets000.FOLLOW_14_in_ruleCompositeComponent4115); 
-
-                    	        	newLeafNode(otherlv_12, grammarAccess.getCompositeComponentAccess().getCommaKeyword_5_3_0());
-                    	        
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1877:1: ( ( ruleEString ) )
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1878:1: ( ruleEString )
-                    	    {
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1878:1: ( ruleEString )
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1879:3: ruleEString
-                    	    {
-
-                    	    			if (current==null) {
-                    	    	            current = createModelElement(grammarAccess.getCompositeComponentRule());
-                    	    	        }
-                    	            
-                    	     
-                    	    	        newCompositeNode(grammarAccess.getCompositeComponentAccess().getRelationshipRelationshipCrossReference_5_3_1_0()); 
-                    	    	    
-                    	    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleCompositeComponent4138);
-                    	    ruleEString();
-
-                    	    state._fsp--;
-
-                    	     
-                    	    	        afterParserOrEnumRuleCall();
-                    	    	    
-
-                    	    }
-
-
-                    	    }
-
-
-                    	    }
-                    	    break;
-
-                    	default :
-                    	    break loop43;
-                        }
-                    } while (true);
-
-                    otherlv_14=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleCompositeComponent4152); 
-
-                        	newLeafNode(otherlv_14, grammarAccess.getCompositeComponentAccess().getRightParenthesisKeyword_5_4());
-                        
-
-                    }
-                    break;
-
-            }
-
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1896:3: (otherlv_15= 'assembly' ( (lv_assembly_16_0= ruleComposedStructureAssembly ) ) )?
-            int alt45=2;
-            int LA45_0 = input.LA(1);
-
-            if ( (LA45_0==46) ) {
-                alt45=1;
-            }
-            switch (alt45) {
-                case 1 :
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1896:5: otherlv_15= 'assembly' ( (lv_assembly_16_0= ruleComposedStructureAssembly ) )
-                    {
-                    otherlv_15=(Token)match(input,46,FollowSets000.FOLLOW_46_in_ruleCompositeComponent4167); 
-
-                        	newLeafNode(otherlv_15, grammarAccess.getCompositeComponentAccess().getAssemblyKeyword_6_0());
-                        
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1900:1: ( (lv_assembly_16_0= ruleComposedStructureAssembly ) )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1901:1: (lv_assembly_16_0= ruleComposedStructureAssembly )
-                    {
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1901:1: (lv_assembly_16_0= ruleComposedStructureAssembly )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1902:3: lv_assembly_16_0= ruleComposedStructureAssembly
-                    {
-                     
-                    	        newCompositeNode(grammarAccess.getCompositeComponentAccess().getAssemblyComposedStructureAssemblyParserRuleCall_6_1_0()); 
-                    	    
-                    pushFollow(FollowSets000.FOLLOW_ruleComposedStructureAssembly_in_ruleCompositeComponent4188);
-                    lv_assembly_16_0=ruleComposedStructureAssembly();
-
-                    state._fsp--;
-
-
-                    	        if (current==null) {
-                    	            current = createModelElementForParent(grammarAccess.getCompositeComponentRule());
-                    	        }
-                           		set(
-                           			current, 
-                           			"assembly",
-                            		lv_assembly_16_0, 
-                            		"ComposedStructureAssembly");
-                    	        afterParserOrEnumRuleCall();
-                    	    
-
-                    }
-
-
-                    }
-
-
-                    }
-                    break;
-
-            }
-
-            otherlv_17=(Token)match(input,15,FollowSets000.FOLLOW_15_in_ruleCompositeComponent4202); 
-
-                	newLeafNode(otherlv_17, grammarAccess.getCompositeComponentAccess().getRightCurlyBracketKeyword_7());
-                
-
-            }
-
-
-            }
-
-             leaveRule(); 
-        }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
-                appendSkippedTokens();
-            } 
-        finally {
-        }
-        return current;
-    }
-    // $ANTLR end "ruleCompositeComponent"
-
-
-    // $ANTLR start "entryRuleSubSystem"
-    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1930:1: entryRuleSubSystem returns [EObject current=null] : iv_ruleSubSystem= ruleSubSystem EOF ;
-    public final EObject entryRuleSubSystem() throws RecognitionException {
-        EObject current = null;
-
-        EObject iv_ruleSubSystem = null;
-
-
-        try {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1931:2: (iv_ruleSubSystem= ruleSubSystem EOF )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1932:2: iv_ruleSubSystem= ruleSubSystem EOF
-            {
-             newCompositeNode(grammarAccess.getSubSystemRule()); 
-            pushFollow(FollowSets000.FOLLOW_ruleSubSystem_in_entryRuleSubSystem4238);
-            iv_ruleSubSystem=ruleSubSystem();
-
-            state._fsp--;
-
-             current =iv_ruleSubSystem; 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleSubSystem4248); 
-
-            }
-
-        }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
-                appendSkippedTokens();
-            } 
-        finally {
-        }
-        return current;
-    }
-    // $ANTLR end "entryRuleSubSystem"
-
-
-    // $ANTLR start "ruleSubSystem"
-    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1939:1: ruleSubSystem returns [EObject current=null] : (otherlv_0= 'SubSystem' ( (lv_name_1_0= ruleEString ) ) (otherlv_2= 'providedRoles' otherlv_3= '{' ( (lv_providedRoles_4_0= ruleProvidedRole ) ) (otherlv_5= ',' ( (lv_providedRoles_6_0= ruleProvidedRole ) ) )* otherlv_7= '}' )? (otherlv_8= 'requiredRoles' otherlv_9= '{' ( (lv_requiredRoles_10_0= ruleRequiredRole ) ) (otherlv_11= ',' ( (lv_requiredRoles_12_0= ruleRequiredRole ) ) )* otherlv_13= '}' )? otherlv_14= '{' (otherlv_15= 'relationship' otherlv_16= '(' ( ( ruleEString ) ) (otherlv_18= ',' ( ( ruleEString ) ) )* otherlv_20= ')' )? (otherlv_21= 'assembly' ( (lv_assembly_22_0= ruleComposedStructureAssembly ) ) )? otherlv_23= '}' ) ;
-    public final EObject ruleSubSystem() throws RecognitionException {
-        EObject current = null;
-
-        Token otherlv_0=null;
-        Token otherlv_2=null;
-        Token otherlv_3=null;
-        Token otherlv_5=null;
-        Token otherlv_7=null;
-        Token otherlv_8=null;
-        Token otherlv_9=null;
-        Token otherlv_11=null;
-        Token otherlv_13=null;
-        Token otherlv_14=null;
-        Token otherlv_15=null;
-        Token otherlv_16=null;
-        Token otherlv_18=null;
-        Token otherlv_20=null;
-        Token otherlv_21=null;
-        Token otherlv_23=null;
-        AntlrDatatypeRuleToken lv_name_1_0 = null;
-
-        EObject lv_providedRoles_4_0 = null;
-
-        EObject lv_providedRoles_6_0 = null;
-
-        EObject lv_requiredRoles_10_0 = null;
-
-        EObject lv_requiredRoles_12_0 = null;
-
-        EObject lv_assembly_22_0 = null;
-
-
-         enterRule(); 
-            
-        try {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1942:28: ( (otherlv_0= 'SubSystem' ( (lv_name_1_0= ruleEString ) ) (otherlv_2= 'providedRoles' otherlv_3= '{' ( (lv_providedRoles_4_0= ruleProvidedRole ) ) (otherlv_5= ',' ( (lv_providedRoles_6_0= ruleProvidedRole ) ) )* otherlv_7= '}' )? (otherlv_8= 'requiredRoles' otherlv_9= '{' ( (lv_requiredRoles_10_0= ruleRequiredRole ) ) (otherlv_11= ',' ( (lv_requiredRoles_12_0= ruleRequiredRole ) ) )* otherlv_13= '}' )? otherlv_14= '{' (otherlv_15= 'relationship' otherlv_16= '(' ( ( ruleEString ) ) (otherlv_18= ',' ( ( ruleEString ) ) )* otherlv_20= ')' )? (otherlv_21= 'assembly' ( (lv_assembly_22_0= ruleComposedStructureAssembly ) ) )? otherlv_23= '}' ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1943:1: (otherlv_0= 'SubSystem' ( (lv_name_1_0= ruleEString ) ) (otherlv_2= 'providedRoles' otherlv_3= '{' ( (lv_providedRoles_4_0= ruleProvidedRole ) ) (otherlv_5= ',' ( (lv_providedRoles_6_0= ruleProvidedRole ) ) )* otherlv_7= '}' )? (otherlv_8= 'requiredRoles' otherlv_9= '{' ( (lv_requiredRoles_10_0= ruleRequiredRole ) ) (otherlv_11= ',' ( (lv_requiredRoles_12_0= ruleRequiredRole ) ) )* otherlv_13= '}' )? otherlv_14= '{' (otherlv_15= 'relationship' otherlv_16= '(' ( ( ruleEString ) ) (otherlv_18= ',' ( ( ruleEString ) ) )* otherlv_20= ')' )? (otherlv_21= 'assembly' ( (lv_assembly_22_0= ruleComposedStructureAssembly ) ) )? otherlv_23= '}' )
-            {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1943:1: (otherlv_0= 'SubSystem' ( (lv_name_1_0= ruleEString ) ) (otherlv_2= 'providedRoles' otherlv_3= '{' ( (lv_providedRoles_4_0= ruleProvidedRole ) ) (otherlv_5= ',' ( (lv_providedRoles_6_0= ruleProvidedRole ) ) )* otherlv_7= '}' )? (otherlv_8= 'requiredRoles' otherlv_9= '{' ( (lv_requiredRoles_10_0= ruleRequiredRole ) ) (otherlv_11= ',' ( (lv_requiredRoles_12_0= ruleRequiredRole ) ) )* otherlv_13= '}' )? otherlv_14= '{' (otherlv_15= 'relationship' otherlv_16= '(' ( ( ruleEString ) ) (otherlv_18= ',' ( ( ruleEString ) ) )* otherlv_20= ')' )? (otherlv_21= 'assembly' ( (lv_assembly_22_0= ruleComposedStructureAssembly ) ) )? otherlv_23= '}' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1943:3: otherlv_0= 'SubSystem' ( (lv_name_1_0= ruleEString ) ) (otherlv_2= 'providedRoles' otherlv_3= '{' ( (lv_providedRoles_4_0= ruleProvidedRole ) ) (otherlv_5= ',' ( (lv_providedRoles_6_0= ruleProvidedRole ) ) )* otherlv_7= '}' )? (otherlv_8= 'requiredRoles' otherlv_9= '{' ( (lv_requiredRoles_10_0= ruleRequiredRole ) ) (otherlv_11= ',' ( (lv_requiredRoles_12_0= ruleRequiredRole ) ) )* otherlv_13= '}' )? otherlv_14= '{' (otherlv_15= 'relationship' otherlv_16= '(' ( ( ruleEString ) ) (otherlv_18= ',' ( ( ruleEString ) ) )* otherlv_20= ')' )? (otherlv_21= 'assembly' ( (lv_assembly_22_0= ruleComposedStructureAssembly ) ) )? otherlv_23= '}'
-            {
-            otherlv_0=(Token)match(input,47,FollowSets000.FOLLOW_47_in_ruleSubSystem4285); 
-
-                	newLeafNode(otherlv_0, grammarAccess.getSubSystemAccess().getSubSystemKeyword_0());
-                
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1947:1: ( (lv_name_1_0= ruleEString ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1948:1: (lv_name_1_0= ruleEString )
-            {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1948:1: (lv_name_1_0= ruleEString )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1949:3: lv_name_1_0= ruleEString
-            {
-             
-            	        newCompositeNode(grammarAccess.getSubSystemAccess().getNameEStringParserRuleCall_1_0()); 
-            	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleSubSystem4306);
-            lv_name_1_0=ruleEString();
-
-            state._fsp--;
-
-
-            	        if (current==null) {
-            	            current = createModelElementForParent(grammarAccess.getSubSystemRule());
-            	        }
-                   		set(
-                   			current, 
-                   			"name",
-                    		lv_name_1_0, 
-                    		"EString");
-            	        afterParserOrEnumRuleCall();
-            	    
-
-            }
-
-
-            }
-
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1965:2: (otherlv_2= 'providedRoles' otherlv_3= '{' ( (lv_providedRoles_4_0= ruleProvidedRole ) ) (otherlv_5= ',' ( (lv_providedRoles_6_0= ruleProvidedRole ) ) )* otherlv_7= '}' )?
-            int alt47=2;
-            int LA47_0 = input.LA(1);
-
-            if ( (LA47_0==29) ) {
-                alt47=1;
-            }
-            switch (alt47) {
-                case 1 :
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1965:4: otherlv_2= 'providedRoles' otherlv_3= '{' ( (lv_providedRoles_4_0= ruleProvidedRole ) ) (otherlv_5= ',' ( (lv_providedRoles_6_0= ruleProvidedRole ) ) )* otherlv_7= '}'
-                    {
-                    otherlv_2=(Token)match(input,29,FollowSets000.FOLLOW_29_in_ruleSubSystem4319); 
-
-                        	newLeafNode(otherlv_2, grammarAccess.getSubSystemAccess().getProvidedRolesKeyword_2_0());
-                        
-                    otherlv_3=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleSubSystem4331); 
-
-                        	newLeafNode(otherlv_3, grammarAccess.getSubSystemAccess().getLeftCurlyBracketKeyword_2_1());
-                        
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1973:1: ( (lv_providedRoles_4_0= ruleProvidedRole ) )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1974:1: (lv_providedRoles_4_0= ruleProvidedRole )
-                    {
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1974:1: (lv_providedRoles_4_0= ruleProvidedRole )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1975:3: lv_providedRoles_4_0= ruleProvidedRole
-                    {
-                     
-                    	        newCompositeNode(grammarAccess.getSubSystemAccess().getProvidedRolesProvidedRoleParserRuleCall_2_2_0()); 
-                    	    
-                    pushFollow(FollowSets000.FOLLOW_ruleProvidedRole_in_ruleSubSystem4352);
-                    lv_providedRoles_4_0=ruleProvidedRole();
-
-                    state._fsp--;
-
-
-                    	        if (current==null) {
-                    	            current = createModelElementForParent(grammarAccess.getSubSystemRule());
-                    	        }
-                           		add(
-                           			current, 
-                           			"providedRoles",
-                            		lv_providedRoles_4_0, 
-                            		"ProvidedRole");
-                    	        afterParserOrEnumRuleCall();
-                    	    
-
-                    }
-
-
-                    }
-
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1991:2: (otherlv_5= ',' ( (lv_providedRoles_6_0= ruleProvidedRole ) ) )*
-                    loop46:
-                    do {
-                        int alt46=2;
-                        int LA46_0 = input.LA(1);
-
-                        if ( (LA46_0==14) ) {
-                            alt46=1;
-                        }
-
-
-                        switch (alt46) {
-                    	case 1 :
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1991:4: otherlv_5= ',' ( (lv_providedRoles_6_0= ruleProvidedRole ) )
-                    	    {
-                    	    otherlv_5=(Token)match(input,14,FollowSets000.FOLLOW_14_in_ruleSubSystem4365); 
-
-                    	        	newLeafNode(otherlv_5, grammarAccess.getSubSystemAccess().getCommaKeyword_2_3_0());
-                    	        
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1995:1: ( (lv_providedRoles_6_0= ruleProvidedRole ) )
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1996:1: (lv_providedRoles_6_0= ruleProvidedRole )
-                    	    {
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1996:1: (lv_providedRoles_6_0= ruleProvidedRole )
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1997:3: lv_providedRoles_6_0= ruleProvidedRole
-                    	    {
-                    	     
-                    	    	        newCompositeNode(grammarAccess.getSubSystemAccess().getProvidedRolesProvidedRoleParserRuleCall_2_3_1_0()); 
-                    	    	    
-                    	    pushFollow(FollowSets000.FOLLOW_ruleProvidedRole_in_ruleSubSystem4386);
-                    	    lv_providedRoles_6_0=ruleProvidedRole();
-
-                    	    state._fsp--;
-
-
-                    	    	        if (current==null) {
-                    	    	            current = createModelElementForParent(grammarAccess.getSubSystemRule());
-                    	    	        }
-                    	           		add(
-                    	           			current, 
-                    	           			"providedRoles",
-                    	            		lv_providedRoles_6_0, 
-                    	            		"ProvidedRole");
-                    	    	        afterParserOrEnumRuleCall();
-                    	    	    
-
-                    	    }
-
-
-                    	    }
-
-
-                    	    }
-                    	    break;
-
-                    	default :
-                    	    break loop46;
-                        }
-                    } while (true);
-
-                    otherlv_7=(Token)match(input,15,FollowSets000.FOLLOW_15_in_ruleSubSystem4400); 
-
-                        	newLeafNode(otherlv_7, grammarAccess.getSubSystemAccess().getRightCurlyBracketKeyword_2_4());
-                        
-
-                    }
-                    break;
-
-            }
-
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2017:3: (otherlv_8= 'requiredRoles' otherlv_9= '{' ( (lv_requiredRoles_10_0= ruleRequiredRole ) ) (otherlv_11= ',' ( (lv_requiredRoles_12_0= ruleRequiredRole ) ) )* otherlv_13= '}' )?
-            int alt49=2;
-            int LA49_0 = input.LA(1);
-
-            if ( (LA49_0==30) ) {
-                alt49=1;
-            }
-            switch (alt49) {
-                case 1 :
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2017:5: otherlv_8= 'requiredRoles' otherlv_9= '{' ( (lv_requiredRoles_10_0= ruleRequiredRole ) ) (otherlv_11= ',' ( (lv_requiredRoles_12_0= ruleRequiredRole ) ) )* otherlv_13= '}'
-                    {
-                    otherlv_8=(Token)match(input,30,FollowSets000.FOLLOW_30_in_ruleSubSystem4415); 
-
-                        	newLeafNode(otherlv_8, grammarAccess.getSubSystemAccess().getRequiredRolesKeyword_3_0());
-                        
-                    otherlv_9=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleSubSystem4427); 
-
-                        	newLeafNode(otherlv_9, grammarAccess.getSubSystemAccess().getLeftCurlyBracketKeyword_3_1());
-                        
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2025:1: ( (lv_requiredRoles_10_0= ruleRequiredRole ) )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2026:1: (lv_requiredRoles_10_0= ruleRequiredRole )
-                    {
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2026:1: (lv_requiredRoles_10_0= ruleRequiredRole )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2027:3: lv_requiredRoles_10_0= ruleRequiredRole
-                    {
-                     
-                    	        newCompositeNode(grammarAccess.getSubSystemAccess().getRequiredRolesRequiredRoleParserRuleCall_3_2_0()); 
-                    	    
-                    pushFollow(FollowSets000.FOLLOW_ruleRequiredRole_in_ruleSubSystem4448);
-                    lv_requiredRoles_10_0=ruleRequiredRole();
-
-                    state._fsp--;
-
-
-                    	        if (current==null) {
-                    	            current = createModelElementForParent(grammarAccess.getSubSystemRule());
-                    	        }
-                           		add(
-                           			current, 
-                           			"requiredRoles",
-                            		lv_requiredRoles_10_0, 
-                            		"RequiredRole");
-                    	        afterParserOrEnumRuleCall();
-                    	    
-
-                    }
-
-
-                    }
-
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2043:2: (otherlv_11= ',' ( (lv_requiredRoles_12_0= ruleRequiredRole ) ) )*
-                    loop48:
-                    do {
-                        int alt48=2;
-                        int LA48_0 = input.LA(1);
-
-                        if ( (LA48_0==14) ) {
-                            alt48=1;
-                        }
-
-
-                        switch (alt48) {
-                    	case 1 :
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2043:4: otherlv_11= ',' ( (lv_requiredRoles_12_0= ruleRequiredRole ) )
-                    	    {
-                    	    otherlv_11=(Token)match(input,14,FollowSets000.FOLLOW_14_in_ruleSubSystem4461); 
-
-                    	        	newLeafNode(otherlv_11, grammarAccess.getSubSystemAccess().getCommaKeyword_3_3_0());
-                    	        
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2047:1: ( (lv_requiredRoles_12_0= ruleRequiredRole ) )
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2048:1: (lv_requiredRoles_12_0= ruleRequiredRole )
-                    	    {
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2048:1: (lv_requiredRoles_12_0= ruleRequiredRole )
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2049:3: lv_requiredRoles_12_0= ruleRequiredRole
-                    	    {
-                    	     
-                    	    	        newCompositeNode(grammarAccess.getSubSystemAccess().getRequiredRolesRequiredRoleParserRuleCall_3_3_1_0()); 
-                    	    	    
-                    	    pushFollow(FollowSets000.FOLLOW_ruleRequiredRole_in_ruleSubSystem4482);
-                    	    lv_requiredRoles_12_0=ruleRequiredRole();
-
-                    	    state._fsp--;
-
-
-                    	    	        if (current==null) {
-                    	    	            current = createModelElementForParent(grammarAccess.getSubSystemRule());
-                    	    	        }
-                    	           		add(
-                    	           			current, 
-                    	           			"requiredRoles",
-                    	            		lv_requiredRoles_12_0, 
-                    	            		"RequiredRole");
-                    	    	        afterParserOrEnumRuleCall();
-                    	    	    
-
-                    	    }
-
-
-                    	    }
-
-
-                    	    }
-                    	    break;
-
-                    	default :
-                    	    break loop48;
-                        }
-                    } while (true);
-
-                    otherlv_13=(Token)match(input,15,FollowSets000.FOLLOW_15_in_ruleSubSystem4496); 
-
-                        	newLeafNode(otherlv_13, grammarAccess.getSubSystemAccess().getRightCurlyBracketKeyword_3_4());
-                        
-
-                    }
-                    break;
-
-            }
-
-            otherlv_14=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleSubSystem4510); 
-
-                	newLeafNode(otherlv_14, grammarAccess.getSubSystemAccess().getLeftCurlyBracketKeyword_4());
-                
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2073:1: (otherlv_15= 'relationship' otherlv_16= '(' ( ( ruleEString ) ) (otherlv_18= ',' ( ( ruleEString ) ) )* otherlv_20= ')' )?
-            int alt51=2;
-            int LA51_0 = input.LA(1);
-
-            if ( (LA51_0==28) ) {
-                alt51=1;
-            }
-            switch (alt51) {
-                case 1 :
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2073:3: otherlv_15= 'relationship' otherlv_16= '(' ( ( ruleEString ) ) (otherlv_18= ',' ( ( ruleEString ) ) )* otherlv_20= ')'
-                    {
-                    otherlv_15=(Token)match(input,28,FollowSets000.FOLLOW_28_in_ruleSubSystem4523); 
-
-                        	newLeafNode(otherlv_15, grammarAccess.getSubSystemAccess().getRelationshipKeyword_5_0());
-                        
-                    otherlv_16=(Token)match(input,25,FollowSets000.FOLLOW_25_in_ruleSubSystem4535); 
-
-                        	newLeafNode(otherlv_16, grammarAccess.getSubSystemAccess().getLeftParenthesisKeyword_5_1());
-                        
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2081:1: ( ( ruleEString ) )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2082:1: ( ruleEString )
-                    {
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2082:1: ( ruleEString )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2083:3: ruleEString
-                    {
-
-                    			if (current==null) {
-                    	            current = createModelElement(grammarAccess.getSubSystemRule());
-                    	        }
-                            
-                     
-                    	        newCompositeNode(grammarAccess.getSubSystemAccess().getRelationshipRelationshipCrossReference_5_2_0()); 
-                    	    
-                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleSubSystem4558);
-                    ruleEString();
-
-                    state._fsp--;
-
-                     
-                    	        afterParserOrEnumRuleCall();
-                    	    
-
-                    }
-
-
-                    }
-
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2096:2: (otherlv_18= ',' ( ( ruleEString ) ) )*
-                    loop50:
-                    do {
-                        int alt50=2;
-                        int LA50_0 = input.LA(1);
-
-                        if ( (LA50_0==14) ) {
-                            alt50=1;
-                        }
-
-
-                        switch (alt50) {
-                    	case 1 :
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2096:4: otherlv_18= ',' ( ( ruleEString ) )
-                    	    {
-                    	    otherlv_18=(Token)match(input,14,FollowSets000.FOLLOW_14_in_ruleSubSystem4571); 
-
-                    	        	newLeafNode(otherlv_18, grammarAccess.getSubSystemAccess().getCommaKeyword_5_3_0());
-                    	        
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2100:1: ( ( ruleEString ) )
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2101:1: ( ruleEString )
-                    	    {
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2101:1: ( ruleEString )
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2102:3: ruleEString
-                    	    {
-
-                    	    			if (current==null) {
-                    	    	            current = createModelElement(grammarAccess.getSubSystemRule());
-                    	    	        }
-                    	            
-                    	     
-                    	    	        newCompositeNode(grammarAccess.getSubSystemAccess().getRelationshipRelationshipCrossReference_5_3_1_0()); 
-                    	    	    
-                    	    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleSubSystem4594);
-                    	    ruleEString();
-
-                    	    state._fsp--;
-
-                    	     
-                    	    	        afterParserOrEnumRuleCall();
-                    	    	    
-
-                    	    }
-
-
-                    	    }
-
-
-                    	    }
-                    	    break;
-
-                    	default :
-                    	    break loop50;
-                        }
-                    } while (true);
-
-                    otherlv_20=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleSubSystem4608); 
-
-                        	newLeafNode(otherlv_20, grammarAccess.getSubSystemAccess().getRightParenthesisKeyword_5_4());
-                        
-
-                    }
-                    break;
-
-            }
-
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2119:3: (otherlv_21= 'assembly' ( (lv_assembly_22_0= ruleComposedStructureAssembly ) ) )?
-            int alt52=2;
-            int LA52_0 = input.LA(1);
-
-            if ( (LA52_0==46) ) {
-                alt52=1;
-            }
-            switch (alt52) {
-                case 1 :
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2119:5: otherlv_21= 'assembly' ( (lv_assembly_22_0= ruleComposedStructureAssembly ) )
-                    {
-                    otherlv_21=(Token)match(input,46,FollowSets000.FOLLOW_46_in_ruleSubSystem4623); 
-
-                        	newLeafNode(otherlv_21, grammarAccess.getSubSystemAccess().getAssemblyKeyword_6_0());
-                        
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2123:1: ( (lv_assembly_22_0= ruleComposedStructureAssembly ) )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2124:1: (lv_assembly_22_0= ruleComposedStructureAssembly )
-                    {
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2124:1: (lv_assembly_22_0= ruleComposedStructureAssembly )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2125:3: lv_assembly_22_0= ruleComposedStructureAssembly
-                    {
-                     
-                    	        newCompositeNode(grammarAccess.getSubSystemAccess().getAssemblyComposedStructureAssemblyParserRuleCall_6_1_0()); 
-                    	    
-                    pushFollow(FollowSets000.FOLLOW_ruleComposedStructureAssembly_in_ruleSubSystem4644);
-                    lv_assembly_22_0=ruleComposedStructureAssembly();
-
-                    state._fsp--;
-
-
-                    	        if (current==null) {
-                    	            current = createModelElementForParent(grammarAccess.getSubSystemRule());
-                    	        }
-                           		set(
-                           			current, 
-                           			"assembly",
-                            		lv_assembly_22_0, 
-                            		"ComposedStructureAssembly");
-                    	        afterParserOrEnumRuleCall();
-                    	    
-
-                    }
-
-
-                    }
-
-
-                    }
-                    break;
-
-            }
-
-            otherlv_23=(Token)match(input,15,FollowSets000.FOLLOW_15_in_ruleSubSystem4658); 
-
-                	newLeafNode(otherlv_23, grammarAccess.getSubSystemAccess().getRightCurlyBracketKeyword_7());
-                
-
-            }
-
-
-            }
-
-             leaveRule(); 
-        }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
-                appendSkippedTokens();
-            } 
-        finally {
-        }
-        return current;
-    }
-    // $ANTLR end "ruleSubSystem"
-
-
-    // $ANTLR start "entryRuleComposedStructureAssembly"
-    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2153:1: entryRuleComposedStructureAssembly returns [EObject current=null] : iv_ruleComposedStructureAssembly= ruleComposedStructureAssembly EOF ;
-    public final EObject entryRuleComposedStructureAssembly() throws RecognitionException {
-        EObject current = null;
-
-        EObject iv_ruleComposedStructureAssembly = null;
-
-
-        try {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2154:2: (iv_ruleComposedStructureAssembly= ruleComposedStructureAssembly EOF )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2155:2: iv_ruleComposedStructureAssembly= ruleComposedStructureAssembly EOF
-            {
-             newCompositeNode(grammarAccess.getComposedStructureAssemblyRule()); 
-            pushFollow(FollowSets000.FOLLOW_ruleComposedStructureAssembly_in_entryRuleComposedStructureAssembly4694);
-            iv_ruleComposedStructureAssembly=ruleComposedStructureAssembly();
-
-            state._fsp--;
-
-             current =iv_ruleComposedStructureAssembly; 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleComposedStructureAssembly4704); 
-
-            }
-
-        }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
-                appendSkippedTokens();
-            } 
-        finally {
-        }
-        return current;
-    }
-    // $ANTLR end "entryRuleComposedStructureAssembly"
-
-
-    // $ANTLR start "ruleComposedStructureAssembly"
-    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2162:1: ruleComposedStructureAssembly returns [EObject current=null] : ( () otherlv_1= 'ComposedStructureAssembly' otherlv_2= '{' (otherlv_3= 'assemblyContexts' otherlv_4= '{' ( (lv_assemblyContexts_5_0= ruleAssemblyContext ) ) (otherlv_6= ',' ( (lv_assemblyContexts_7_0= ruleAssemblyContext ) ) )* otherlv_8= '}' )? (otherlv_9= 'assemblyConnectors' otherlv_10= '{' ( (lv_assemblyConnectors_11_0= ruleAssemblyConnector ) ) (otherlv_12= ',' ( (lv_assemblyConnectors_13_0= ruleAssemblyConnector ) ) )* otherlv_14= '}' )? (otherlv_15= 'providedDelegationConnectors' otherlv_16= '{' ( (lv_providedDelegationConnectors_17_0= ruleProvidedDelegationConnector ) ) (otherlv_18= ',' ( (lv_providedDelegationConnectors_19_0= ruleProvidedDelegationConnector ) ) )* otherlv_20= '}' )? (otherlv_21= 'requiredDelegationConnectors' otherlv_22= '{' ( (lv_requiredDelegationConnectors_23_0= ruleRequiredDelegationConnector ) ) (otherlv_24= ',' ( (lv_requiredDelegationConnectors_25_0= ruleRequiredDelegationConnector ) ) )* otherlv_26= '}' )? otherlv_27= '}' ) ;
-    public final EObject ruleComposedStructureAssembly() throws RecognitionException {
-        EObject current = null;
-
-        Token otherlv_1=null;
-        Token otherlv_2=null;
-        Token otherlv_3=null;
-        Token otherlv_4=null;
-        Token otherlv_6=null;
-        Token otherlv_8=null;
-        Token otherlv_9=null;
-        Token otherlv_10=null;
-        Token otherlv_12=null;
-        Token otherlv_14=null;
-        Token otherlv_15=null;
-        Token otherlv_16=null;
-        Token otherlv_18=null;
-        Token otherlv_20=null;
-        Token otherlv_21=null;
-        Token otherlv_22=null;
-        Token otherlv_24=null;
-        Token otherlv_26=null;
-        Token otherlv_27=null;
-        EObject lv_assemblyContexts_5_0 = null;
-
-        EObject lv_assemblyContexts_7_0 = null;
-
-        EObject lv_assemblyConnectors_11_0 = null;
-
-        EObject lv_assemblyConnectors_13_0 = null;
-
-        EObject lv_providedDelegationConnectors_17_0 = null;
-
-        EObject lv_providedDelegationConnectors_19_0 = null;
-
-        EObject lv_requiredDelegationConnectors_23_0 = null;
-
-        EObject lv_requiredDelegationConnectors_25_0 = null;
-
-
-         enterRule(); 
-            
-        try {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2165:28: ( ( () otherlv_1= 'ComposedStructureAssembly' otherlv_2= '{' (otherlv_3= 'assemblyContexts' otherlv_4= '{' ( (lv_assemblyContexts_5_0= ruleAssemblyContext ) ) (otherlv_6= ',' ( (lv_assemblyContexts_7_0= ruleAssemblyContext ) ) )* otherlv_8= '}' )? (otherlv_9= 'assemblyConnectors' otherlv_10= '{' ( (lv_assemblyConnectors_11_0= ruleAssemblyConnector ) ) (otherlv_12= ',' ( (lv_assemblyConnectors_13_0= ruleAssemblyConnector ) ) )* otherlv_14= '}' )? (otherlv_15= 'providedDelegationConnectors' otherlv_16= '{' ( (lv_providedDelegationConnectors_17_0= ruleProvidedDelegationConnector ) ) (otherlv_18= ',' ( (lv_providedDelegationConnectors_19_0= ruleProvidedDelegationConnector ) ) )* otherlv_20= '}' )? (otherlv_21= 'requiredDelegationConnectors' otherlv_22= '{' ( (lv_requiredDelegationConnectors_23_0= ruleRequiredDelegationConnector ) ) (otherlv_24= ',' ( (lv_requiredDelegationConnectors_25_0= ruleRequiredDelegationConnector ) ) )* otherlv_26= '}' )? otherlv_27= '}' ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2166:1: ( () otherlv_1= 'ComposedStructureAssembly' otherlv_2= '{' (otherlv_3= 'assemblyContexts' otherlv_4= '{' ( (lv_assemblyContexts_5_0= ruleAssemblyContext ) ) (otherlv_6= ',' ( (lv_assemblyContexts_7_0= ruleAssemblyContext ) ) )* otherlv_8= '}' )? (otherlv_9= 'assemblyConnectors' otherlv_10= '{' ( (lv_assemblyConnectors_11_0= ruleAssemblyConnector ) ) (otherlv_12= ',' ( (lv_assemblyConnectors_13_0= ruleAssemblyConnector ) ) )* otherlv_14= '}' )? (otherlv_15= 'providedDelegationConnectors' otherlv_16= '{' ( (lv_providedDelegationConnectors_17_0= ruleProvidedDelegationConnector ) ) (otherlv_18= ',' ( (lv_providedDelegationConnectors_19_0= ruleProvidedDelegationConnector ) ) )* otherlv_20= '}' )? (otherlv_21= 'requiredDelegationConnectors' otherlv_22= '{' ( (lv_requiredDelegationConnectors_23_0= ruleRequiredDelegationConnector ) ) (otherlv_24= ',' ( (lv_requiredDelegationConnectors_25_0= ruleRequiredDelegationConnector ) ) )* otherlv_26= '}' )? otherlv_27= '}' )
-            {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2166:1: ( () otherlv_1= 'ComposedStructureAssembly' otherlv_2= '{' (otherlv_3= 'assemblyContexts' otherlv_4= '{' ( (lv_assemblyContexts_5_0= ruleAssemblyContext ) ) (otherlv_6= ',' ( (lv_assemblyContexts_7_0= ruleAssemblyContext ) ) )* otherlv_8= '}' )? (otherlv_9= 'assemblyConnectors' otherlv_10= '{' ( (lv_assemblyConnectors_11_0= ruleAssemblyConnector ) ) (otherlv_12= ',' ( (lv_assemblyConnectors_13_0= ruleAssemblyConnector ) ) )* otherlv_14= '}' )? (otherlv_15= 'providedDelegationConnectors' otherlv_16= '{' ( (lv_providedDelegationConnectors_17_0= ruleProvidedDelegationConnector ) ) (otherlv_18= ',' ( (lv_providedDelegationConnectors_19_0= ruleProvidedDelegationConnector ) ) )* otherlv_20= '}' )? (otherlv_21= 'requiredDelegationConnectors' otherlv_22= '{' ( (lv_requiredDelegationConnectors_23_0= ruleRequiredDelegationConnector ) ) (otherlv_24= ',' ( (lv_requiredDelegationConnectors_25_0= ruleRequiredDelegationConnector ) ) )* otherlv_26= '}' )? otherlv_27= '}' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2166:2: () otherlv_1= 'ComposedStructureAssembly' otherlv_2= '{' (otherlv_3= 'assemblyContexts' otherlv_4= '{' ( (lv_assemblyContexts_5_0= ruleAssemblyContext ) ) (otherlv_6= ',' ( (lv_assemblyContexts_7_0= ruleAssemblyContext ) ) )* otherlv_8= '}' )? (otherlv_9= 'assemblyConnectors' otherlv_10= '{' ( (lv_assemblyConnectors_11_0= ruleAssemblyConnector ) ) (otherlv_12= ',' ( (lv_assemblyConnectors_13_0= ruleAssemblyConnector ) ) )* otherlv_14= '}' )? (otherlv_15= 'providedDelegationConnectors' otherlv_16= '{' ( (lv_providedDelegationConnectors_17_0= ruleProvidedDelegationConnector ) ) (otherlv_18= ',' ( (lv_providedDelegationConnectors_19_0= ruleProvidedDelegationConnector ) ) )* otherlv_20= '}' )? (otherlv_21= 'requiredDelegationConnectors' otherlv_22= '{' ( (lv_requiredDelegationConnectors_23_0= ruleRequiredDelegationConnector ) ) (otherlv_24= ',' ( (lv_requiredDelegationConnectors_25_0= ruleRequiredDelegationConnector ) ) )* otherlv_26= '}' )? otherlv_27= '}'
-            {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2166:2: ()
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2167:5: 
-            {
-
-                    current = forceCreateModelElement(
-                        grammarAccess.getComposedStructureAssemblyAccess().getComposedStructureAssemblyAction_0(),
-                        current);
-                
-
-            }
-
-            otherlv_1=(Token)match(input,48,FollowSets000.FOLLOW_48_in_ruleComposedStructureAssembly4750); 
-
-                	newLeafNode(otherlv_1, grammarAccess.getComposedStructureAssemblyAccess().getComposedStructureAssemblyKeyword_1());
-                
-            otherlv_2=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleComposedStructureAssembly4762); 
-
-                	newLeafNode(otherlv_2, grammarAccess.getComposedStructureAssemblyAccess().getLeftCurlyBracketKeyword_2());
-                
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2180:1: (otherlv_3= 'assemblyContexts' otherlv_4= '{' ( (lv_assemblyContexts_5_0= ruleAssemblyContext ) ) (otherlv_6= ',' ( (lv_assemblyContexts_7_0= ruleAssemblyContext ) ) )* otherlv_8= '}' )?
-            int alt54=2;
-            int LA54_0 = input.LA(1);
-
-            if ( (LA54_0==49) ) {
-                alt54=1;
-            }
-            switch (alt54) {
-                case 1 :
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2180:3: otherlv_3= 'assemblyContexts' otherlv_4= '{' ( (lv_assemblyContexts_5_0= ruleAssemblyContext ) ) (otherlv_6= ',' ( (lv_assemblyContexts_7_0= ruleAssemblyContext ) ) )* otherlv_8= '}'
-                    {
-                    otherlv_3=(Token)match(input,49,FollowSets000.FOLLOW_49_in_ruleComposedStructureAssembly4775); 
-
-                        	newLeafNode(otherlv_3, grammarAccess.getComposedStructureAssemblyAccess().getAssemblyContextsKeyword_3_0());
-                        
-                    otherlv_4=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleComposedStructureAssembly4787); 
-
-                        	newLeafNode(otherlv_4, grammarAccess.getComposedStructureAssemblyAccess().getLeftCurlyBracketKeyword_3_1());
-                        
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2188:1: ( (lv_assemblyContexts_5_0= ruleAssemblyContext ) )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2189:1: (lv_assemblyContexts_5_0= ruleAssemblyContext )
-                    {
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2189:1: (lv_assemblyContexts_5_0= ruleAssemblyContext )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2190:3: lv_assemblyContexts_5_0= ruleAssemblyContext
-                    {
-                     
-                    	        newCompositeNode(grammarAccess.getComposedStructureAssemblyAccess().getAssemblyContextsAssemblyContextParserRuleCall_3_2_0()); 
-                    	    
-                    pushFollow(FollowSets000.FOLLOW_ruleAssemblyContext_in_ruleComposedStructureAssembly4808);
-                    lv_assemblyContexts_5_0=ruleAssemblyContext();
-
-                    state._fsp--;
-
-
-                    	        if (current==null) {
-                    	            current = createModelElementForParent(grammarAccess.getComposedStructureAssemblyRule());
-                    	        }
-                           		add(
-                           			current, 
-                           			"assemblyContexts",
-                            		lv_assemblyContexts_5_0, 
-                            		"AssemblyContext");
-                    	        afterParserOrEnumRuleCall();
-                    	    
-
-                    }
-
-
-                    }
-
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2206:2: (otherlv_6= ',' ( (lv_assemblyContexts_7_0= ruleAssemblyContext ) ) )*
-                    loop53:
-                    do {
-                        int alt53=2;
-                        int LA53_0 = input.LA(1);
-
-                        if ( (LA53_0==14) ) {
-                            alt53=1;
-                        }
-
-
-                        switch (alt53) {
-                    	case 1 :
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2206:4: otherlv_6= ',' ( (lv_assemblyContexts_7_0= ruleAssemblyContext ) )
-                    	    {
-                    	    otherlv_6=(Token)match(input,14,FollowSets000.FOLLOW_14_in_ruleComposedStructureAssembly4821); 
-
-                    	        	newLeafNode(otherlv_6, grammarAccess.getComposedStructureAssemblyAccess().getCommaKeyword_3_3_0());
-                    	        
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2210:1: ( (lv_assemblyContexts_7_0= ruleAssemblyContext ) )
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2211:1: (lv_assemblyContexts_7_0= ruleAssemblyContext )
-                    	    {
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2211:1: (lv_assemblyContexts_7_0= ruleAssemblyContext )
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2212:3: lv_assemblyContexts_7_0= ruleAssemblyContext
-                    	    {
-                    	     
-                    	    	        newCompositeNode(grammarAccess.getComposedStructureAssemblyAccess().getAssemblyContextsAssemblyContextParserRuleCall_3_3_1_0()); 
-                    	    	    
-                    	    pushFollow(FollowSets000.FOLLOW_ruleAssemblyContext_in_ruleComposedStructureAssembly4842);
-                    	    lv_assemblyContexts_7_0=ruleAssemblyContext();
-
-                    	    state._fsp--;
-
-
-                    	    	        if (current==null) {
-                    	    	            current = createModelElementForParent(grammarAccess.getComposedStructureAssemblyRule());
-                    	    	        }
-                    	           		add(
-                    	           			current, 
-                    	           			"assemblyContexts",
-                    	            		lv_assemblyContexts_7_0, 
-                    	            		"AssemblyContext");
-                    	    	        afterParserOrEnumRuleCall();
-                    	    	    
-
-                    	    }
-
-
-                    	    }
-
-
-                    	    }
-                    	    break;
-
-                    	default :
-                    	    break loop53;
-                        }
-                    } while (true);
-
-                    otherlv_8=(Token)match(input,15,FollowSets000.FOLLOW_15_in_ruleComposedStructureAssembly4856); 
-
-                        	newLeafNode(otherlv_8, grammarAccess.getComposedStructureAssemblyAccess().getRightCurlyBracketKeyword_3_4());
-                        
-
-                    }
-                    break;
-
-            }
-
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2232:3: (otherlv_9= 'assemblyConnectors' otherlv_10= '{' ( (lv_assemblyConnectors_11_0= ruleAssemblyConnector ) ) (otherlv_12= ',' ( (lv_assemblyConnectors_13_0= ruleAssemblyConnector ) ) )* otherlv_14= '}' )?
-            int alt56=2;
-            int LA56_0 = input.LA(1);
-
-            if ( (LA56_0==50) ) {
-                alt56=1;
-            }
-            switch (alt56) {
-                case 1 :
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2232:5: otherlv_9= 'assemblyConnectors' otherlv_10= '{' ( (lv_assemblyConnectors_11_0= ruleAssemblyConnector ) ) (otherlv_12= ',' ( (lv_assemblyConnectors_13_0= ruleAssemblyConnector ) ) )* otherlv_14= '}'
-                    {
-                    otherlv_9=(Token)match(input,50,FollowSets000.FOLLOW_50_in_ruleComposedStructureAssembly4871); 
-
-                        	newLeafNode(otherlv_9, grammarAccess.getComposedStructureAssemblyAccess().getAssemblyConnectorsKeyword_4_0());
-                        
-                    otherlv_10=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleComposedStructureAssembly4883); 
-
-                        	newLeafNode(otherlv_10, grammarAccess.getComposedStructureAssemblyAccess().getLeftCurlyBracketKeyword_4_1());
-                        
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2240:1: ( (lv_assemblyConnectors_11_0= ruleAssemblyConnector ) )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2241:1: (lv_assemblyConnectors_11_0= ruleAssemblyConnector )
-                    {
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2241:1: (lv_assemblyConnectors_11_0= ruleAssemblyConnector )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2242:3: lv_assemblyConnectors_11_0= ruleAssemblyConnector
-                    {
-                     
-                    	        newCompositeNode(grammarAccess.getComposedStructureAssemblyAccess().getAssemblyConnectorsAssemblyConnectorParserRuleCall_4_2_0()); 
-                    	    
-                    pushFollow(FollowSets000.FOLLOW_ruleAssemblyConnector_in_ruleComposedStructureAssembly4904);
-                    lv_assemblyConnectors_11_0=ruleAssemblyConnector();
-
-                    state._fsp--;
-
-
-                    	        if (current==null) {
-                    	            current = createModelElementForParent(grammarAccess.getComposedStructureAssemblyRule());
-                    	        }
-                           		add(
-                           			current, 
-                           			"assemblyConnectors",
-                            		lv_assemblyConnectors_11_0, 
-                            		"AssemblyConnector");
-                    	        afterParserOrEnumRuleCall();
-                    	    
-
-                    }
-
-
-                    }
-
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2258:2: (otherlv_12= ',' ( (lv_assemblyConnectors_13_0= ruleAssemblyConnector ) ) )*
-                    loop55:
-                    do {
-                        int alt55=2;
-                        int LA55_0 = input.LA(1);
-
-                        if ( (LA55_0==14) ) {
-                            alt55=1;
-                        }
-
-
-                        switch (alt55) {
-                    	case 1 :
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2258:4: otherlv_12= ',' ( (lv_assemblyConnectors_13_0= ruleAssemblyConnector ) )
-                    	    {
-                    	    otherlv_12=(Token)match(input,14,FollowSets000.FOLLOW_14_in_ruleComposedStructureAssembly4917); 
-
-                    	        	newLeafNode(otherlv_12, grammarAccess.getComposedStructureAssemblyAccess().getCommaKeyword_4_3_0());
-                    	        
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2262:1: ( (lv_assemblyConnectors_13_0= ruleAssemblyConnector ) )
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2263:1: (lv_assemblyConnectors_13_0= ruleAssemblyConnector )
-                    	    {
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2263:1: (lv_assemblyConnectors_13_0= ruleAssemblyConnector )
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2264:3: lv_assemblyConnectors_13_0= ruleAssemblyConnector
-                    	    {
-                    	     
-                    	    	        newCompositeNode(grammarAccess.getComposedStructureAssemblyAccess().getAssemblyConnectorsAssemblyConnectorParserRuleCall_4_3_1_0()); 
-                    	    	    
-                    	    pushFollow(FollowSets000.FOLLOW_ruleAssemblyConnector_in_ruleComposedStructureAssembly4938);
-                    	    lv_assemblyConnectors_13_0=ruleAssemblyConnector();
-
-                    	    state._fsp--;
-
-
-                    	    	        if (current==null) {
-                    	    	            current = createModelElementForParent(grammarAccess.getComposedStructureAssemblyRule());
-                    	    	        }
-                    	           		add(
-                    	           			current, 
-                    	           			"assemblyConnectors",
-                    	            		lv_assemblyConnectors_13_0, 
-                    	            		"AssemblyConnector");
-                    	    	        afterParserOrEnumRuleCall();
-                    	    	    
-
-                    	    }
-
-
-                    	    }
-
-
-                    	    }
-                    	    break;
-
-                    	default :
-                    	    break loop55;
-                        }
-                    } while (true);
-
-                    otherlv_14=(Token)match(input,15,FollowSets000.FOLLOW_15_in_ruleComposedStructureAssembly4952); 
-
-                        	newLeafNode(otherlv_14, grammarAccess.getComposedStructureAssemblyAccess().getRightCurlyBracketKeyword_4_4());
-                        
-
-                    }
-                    break;
-
-            }
-
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2284:3: (otherlv_15= 'providedDelegationConnectors' otherlv_16= '{' ( (lv_providedDelegationConnectors_17_0= ruleProvidedDelegationConnector ) ) (otherlv_18= ',' ( (lv_providedDelegationConnectors_19_0= ruleProvidedDelegationConnector ) ) )* otherlv_20= '}' )?
-            int alt58=2;
-            int LA58_0 = input.LA(1);
-
-            if ( (LA58_0==51) ) {
-                alt58=1;
-            }
-            switch (alt58) {
-                case 1 :
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2284:5: otherlv_15= 'providedDelegationConnectors' otherlv_16= '{' ( (lv_providedDelegationConnectors_17_0= ruleProvidedDelegationConnector ) ) (otherlv_18= ',' ( (lv_providedDelegationConnectors_19_0= ruleProvidedDelegationConnector ) ) )* otherlv_20= '}'
-                    {
-                    otherlv_15=(Token)match(input,51,FollowSets000.FOLLOW_51_in_ruleComposedStructureAssembly4967); 
-
-                        	newLeafNode(otherlv_15, grammarAccess.getComposedStructureAssemblyAccess().getProvidedDelegationConnectorsKeyword_5_0());
-                        
-                    otherlv_16=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleComposedStructureAssembly4979); 
-
-                        	newLeafNode(otherlv_16, grammarAccess.getComposedStructureAssemblyAccess().getLeftCurlyBracketKeyword_5_1());
-                        
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2292:1: ( (lv_providedDelegationConnectors_17_0= ruleProvidedDelegationConnector ) )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2293:1: (lv_providedDelegationConnectors_17_0= ruleProvidedDelegationConnector )
-                    {
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2293:1: (lv_providedDelegationConnectors_17_0= ruleProvidedDelegationConnector )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2294:3: lv_providedDelegationConnectors_17_0= ruleProvidedDelegationConnector
-                    {
-                     
-                    	        newCompositeNode(grammarAccess.getComposedStructureAssemblyAccess().getProvidedDelegationConnectorsProvidedDelegationConnectorParserRuleCall_5_2_0()); 
-                    	    
-                    pushFollow(FollowSets000.FOLLOW_ruleProvidedDelegationConnector_in_ruleComposedStructureAssembly5000);
-                    lv_providedDelegationConnectors_17_0=ruleProvidedDelegationConnector();
-
-                    state._fsp--;
-
-
-                    	        if (current==null) {
-                    	            current = createModelElementForParent(grammarAccess.getComposedStructureAssemblyRule());
-                    	        }
-                           		add(
-                           			current, 
-                           			"providedDelegationConnectors",
-                            		lv_providedDelegationConnectors_17_0, 
-                            		"ProvidedDelegationConnector");
-                    	        afterParserOrEnumRuleCall();
-                    	    
-
-                    }
-
-
-                    }
-
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2310:2: (otherlv_18= ',' ( (lv_providedDelegationConnectors_19_0= ruleProvidedDelegationConnector ) ) )*
-                    loop57:
-                    do {
-                        int alt57=2;
-                        int LA57_0 = input.LA(1);
-
-                        if ( (LA57_0==14) ) {
-                            alt57=1;
-                        }
-
-
-                        switch (alt57) {
-                    	case 1 :
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2310:4: otherlv_18= ',' ( (lv_providedDelegationConnectors_19_0= ruleProvidedDelegationConnector ) )
-                    	    {
-                    	    otherlv_18=(Token)match(input,14,FollowSets000.FOLLOW_14_in_ruleComposedStructureAssembly5013); 
-
-                    	        	newLeafNode(otherlv_18, grammarAccess.getComposedStructureAssemblyAccess().getCommaKeyword_5_3_0());
-                    	        
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2314:1: ( (lv_providedDelegationConnectors_19_0= ruleProvidedDelegationConnector ) )
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2315:1: (lv_providedDelegationConnectors_19_0= ruleProvidedDelegationConnector )
-                    	    {
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2315:1: (lv_providedDelegationConnectors_19_0= ruleProvidedDelegationConnector )
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2316:3: lv_providedDelegationConnectors_19_0= ruleProvidedDelegationConnector
-                    	    {
-                    	     
-                    	    	        newCompositeNode(grammarAccess.getComposedStructureAssemblyAccess().getProvidedDelegationConnectorsProvidedDelegationConnectorParserRuleCall_5_3_1_0()); 
-                    	    	    
-                    	    pushFollow(FollowSets000.FOLLOW_ruleProvidedDelegationConnector_in_ruleComposedStructureAssembly5034);
-                    	    lv_providedDelegationConnectors_19_0=ruleProvidedDelegationConnector();
-
-                    	    state._fsp--;
-
-
-                    	    	        if (current==null) {
-                    	    	            current = createModelElementForParent(grammarAccess.getComposedStructureAssemblyRule());
-                    	    	        }
-                    	           		add(
-                    	           			current, 
-                    	           			"providedDelegationConnectors",
-                    	            		lv_providedDelegationConnectors_19_0, 
-                    	            		"ProvidedDelegationConnector");
-                    	    	        afterParserOrEnumRuleCall();
-                    	    	    
-
-                    	    }
-
-
-                    	    }
-
-
-                    	    }
-                    	    break;
-
-                    	default :
-                    	    break loop57;
-                        }
-                    } while (true);
-
-                    otherlv_20=(Token)match(input,15,FollowSets000.FOLLOW_15_in_ruleComposedStructureAssembly5048); 
-
-                        	newLeafNode(otherlv_20, grammarAccess.getComposedStructureAssemblyAccess().getRightCurlyBracketKeyword_5_4());
-                        
-
-                    }
-                    break;
-
-            }
-
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2336:3: (otherlv_21= 'requiredDelegationConnectors' otherlv_22= '{' ( (lv_requiredDelegationConnectors_23_0= ruleRequiredDelegationConnector ) ) (otherlv_24= ',' ( (lv_requiredDelegationConnectors_25_0= ruleRequiredDelegationConnector ) ) )* otherlv_26= '}' )?
-            int alt60=2;
-            int LA60_0 = input.LA(1);
-
-            if ( (LA60_0==52) ) {
-                alt60=1;
-            }
-            switch (alt60) {
-                case 1 :
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2336:5: otherlv_21= 'requiredDelegationConnectors' otherlv_22= '{' ( (lv_requiredDelegationConnectors_23_0= ruleRequiredDelegationConnector ) ) (otherlv_24= ',' ( (lv_requiredDelegationConnectors_25_0= ruleRequiredDelegationConnector ) ) )* otherlv_26= '}'
-                    {
-                    otherlv_21=(Token)match(input,52,FollowSets000.FOLLOW_52_in_ruleComposedStructureAssembly5063); 
-
-                        	newLeafNode(otherlv_21, grammarAccess.getComposedStructureAssemblyAccess().getRequiredDelegationConnectorsKeyword_6_0());
-                        
-                    otherlv_22=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleComposedStructureAssembly5075); 
-
-                        	newLeafNode(otherlv_22, grammarAccess.getComposedStructureAssemblyAccess().getLeftCurlyBracketKeyword_6_1());
-                        
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2344:1: ( (lv_requiredDelegationConnectors_23_0= ruleRequiredDelegationConnector ) )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2345:1: (lv_requiredDelegationConnectors_23_0= ruleRequiredDelegationConnector )
-                    {
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2345:1: (lv_requiredDelegationConnectors_23_0= ruleRequiredDelegationConnector )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2346:3: lv_requiredDelegationConnectors_23_0= ruleRequiredDelegationConnector
-                    {
-                     
-                    	        newCompositeNode(grammarAccess.getComposedStructureAssemblyAccess().getRequiredDelegationConnectorsRequiredDelegationConnectorParserRuleCall_6_2_0()); 
-                    	    
-                    pushFollow(FollowSets000.FOLLOW_ruleRequiredDelegationConnector_in_ruleComposedStructureAssembly5096);
-                    lv_requiredDelegationConnectors_23_0=ruleRequiredDelegationConnector();
-
-                    state._fsp--;
-
-
-                    	        if (current==null) {
-                    	            current = createModelElementForParent(grammarAccess.getComposedStructureAssemblyRule());
-                    	        }
-                           		add(
-                           			current, 
-                           			"requiredDelegationConnectors",
-                            		lv_requiredDelegationConnectors_23_0, 
-                            		"RequiredDelegationConnector");
-                    	        afterParserOrEnumRuleCall();
-                    	    
-
-                    }
-
-
-                    }
-
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2362:2: (otherlv_24= ',' ( (lv_requiredDelegationConnectors_25_0= ruleRequiredDelegationConnector ) ) )*
-                    loop59:
-                    do {
-                        int alt59=2;
-                        int LA59_0 = input.LA(1);
-
-                        if ( (LA59_0==14) ) {
-                            alt59=1;
-                        }
-
-
-                        switch (alt59) {
-                    	case 1 :
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2362:4: otherlv_24= ',' ( (lv_requiredDelegationConnectors_25_0= ruleRequiredDelegationConnector ) )
-                    	    {
-                    	    otherlv_24=(Token)match(input,14,FollowSets000.FOLLOW_14_in_ruleComposedStructureAssembly5109); 
-
-                    	        	newLeafNode(otherlv_24, grammarAccess.getComposedStructureAssemblyAccess().getCommaKeyword_6_3_0());
-                    	        
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2366:1: ( (lv_requiredDelegationConnectors_25_0= ruleRequiredDelegationConnector ) )
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2367:1: (lv_requiredDelegationConnectors_25_0= ruleRequiredDelegationConnector )
-                    	    {
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2367:1: (lv_requiredDelegationConnectors_25_0= ruleRequiredDelegationConnector )
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2368:3: lv_requiredDelegationConnectors_25_0= ruleRequiredDelegationConnector
-                    	    {
-                    	     
-                    	    	        newCompositeNode(grammarAccess.getComposedStructureAssemblyAccess().getRequiredDelegationConnectorsRequiredDelegationConnectorParserRuleCall_6_3_1_0()); 
-                    	    	    
-                    	    pushFollow(FollowSets000.FOLLOW_ruleRequiredDelegationConnector_in_ruleComposedStructureAssembly5130);
-                    	    lv_requiredDelegationConnectors_25_0=ruleRequiredDelegationConnector();
-
-                    	    state._fsp--;
-
-
-                    	    	        if (current==null) {
-                    	    	            current = createModelElementForParent(grammarAccess.getComposedStructureAssemblyRule());
-                    	    	        }
-                    	           		add(
-                    	           			current, 
-                    	           			"requiredDelegationConnectors",
-                    	            		lv_requiredDelegationConnectors_25_0, 
-                    	            		"RequiredDelegationConnector");
-                    	    	        afterParserOrEnumRuleCall();
-                    	    	    
-
-                    	    }
-
-
-                    	    }
-
-
-                    	    }
-                    	    break;
-
-                    	default :
-                    	    break loop59;
-                        }
-                    } while (true);
-
-                    otherlv_26=(Token)match(input,15,FollowSets000.FOLLOW_15_in_ruleComposedStructureAssembly5144); 
-
-                        	newLeafNode(otherlv_26, grammarAccess.getComposedStructureAssemblyAccess().getRightCurlyBracketKeyword_6_4());
-                        
-
-                    }
-                    break;
-
-            }
-
-            otherlv_27=(Token)match(input,15,FollowSets000.FOLLOW_15_in_ruleComposedStructureAssembly5158); 
-
-                	newLeafNode(otherlv_27, grammarAccess.getComposedStructureAssemblyAccess().getRightCurlyBracketKeyword_7());
-                
-
-            }
-
-
-            }
-
-             leaveRule(); 
-        }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
-                appendSkippedTokens();
-            } 
-        finally {
-        }
-        return current;
-    }
-    // $ANTLR end "ruleComposedStructureAssembly"
-
-
-    // $ANTLR start "entryRuleAssemblyContext"
-    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2400:1: entryRuleAssemblyContext returns [EObject current=null] : iv_ruleAssemblyContext= ruleAssemblyContext EOF ;
-    public final EObject entryRuleAssemblyContext() throws RecognitionException {
-        EObject current = null;
-
-        EObject iv_ruleAssemblyContext = null;
-
-
-        try {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2401:2: (iv_ruleAssemblyContext= ruleAssemblyContext EOF )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2402:2: iv_ruleAssemblyContext= ruleAssemblyContext EOF
-            {
-             newCompositeNode(grammarAccess.getAssemblyContextRule()); 
-            pushFollow(FollowSets000.FOLLOW_ruleAssemblyContext_in_entryRuleAssemblyContext5194);
-            iv_ruleAssemblyContext=ruleAssemblyContext();
-
-            state._fsp--;
-
-             current =iv_ruleAssemblyContext; 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleAssemblyContext5204); 
-
-            }
-
-        }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
-                appendSkippedTokens();
-            } 
-        finally {
-        }
-        return current;
-    }
-    // $ANTLR end "entryRuleAssemblyContext"
-
-
-    // $ANTLR start "ruleAssemblyContext"
-    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2409:1: ruleAssemblyContext returns [EObject current=null] : (otherlv_0= 'AssemblyContext' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' otherlv_3= 'encapsulatedComponent' ( ( ruleEString ) ) otherlv_5= '}' ) ;
-    public final EObject ruleAssemblyContext() throws RecognitionException {
-        EObject current = null;
-
-        Token otherlv_0=null;
-        Token otherlv_2=null;
-        Token otherlv_3=null;
-        Token otherlv_5=null;
-        AntlrDatatypeRuleToken lv_name_1_0 = null;
-
-
-         enterRule(); 
-            
-        try {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2412:28: ( (otherlv_0= 'AssemblyContext' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' otherlv_3= 'encapsulatedComponent' ( ( ruleEString ) ) otherlv_5= '}' ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2413:1: (otherlv_0= 'AssemblyContext' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' otherlv_3= 'encapsulatedComponent' ( ( ruleEString ) ) otherlv_5= '}' )
-            {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2413:1: (otherlv_0= 'AssemblyContext' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' otherlv_3= 'encapsulatedComponent' ( ( ruleEString ) ) otherlv_5= '}' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2413:3: otherlv_0= 'AssemblyContext' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' otherlv_3= 'encapsulatedComponent' ( ( ruleEString ) ) otherlv_5= '}'
-            {
-            otherlv_0=(Token)match(input,53,FollowSets000.FOLLOW_53_in_ruleAssemblyContext5241); 
-
-                	newLeafNode(otherlv_0, grammarAccess.getAssemblyContextAccess().getAssemblyContextKeyword_0());
-                
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2417:1: ( (lv_name_1_0= ruleEString ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2418:1: (lv_name_1_0= ruleEString )
-            {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2418:1: (lv_name_1_0= ruleEString )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2419:3: lv_name_1_0= ruleEString
-            {
-             
-            	        newCompositeNode(grammarAccess.getAssemblyContextAccess().getNameEStringParserRuleCall_1_0()); 
-            	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleAssemblyContext5262);
-            lv_name_1_0=ruleEString();
-
-            state._fsp--;
-
-
-            	        if (current==null) {
-            	            current = createModelElementForParent(grammarAccess.getAssemblyContextRule());
-            	        }
-                   		set(
-                   			current, 
-                   			"name",
-                    		lv_name_1_0, 
-                    		"EString");
-            	        afterParserOrEnumRuleCall();
-            	    
-
-            }
-
-
-            }
-
-            otherlv_2=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleAssemblyContext5274); 
-
-                	newLeafNode(otherlv_2, grammarAccess.getAssemblyContextAccess().getLeftCurlyBracketKeyword_2());
-                
-            otherlv_3=(Token)match(input,54,FollowSets000.FOLLOW_54_in_ruleAssemblyContext5286); 
-
-                	newLeafNode(otherlv_3, grammarAccess.getAssemblyContextAccess().getEncapsulatedComponentKeyword_3());
-                
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2443:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2444:1: ( ruleEString )
-            {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2444:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2445:3: ruleEString
-            {
-
-            			if (current==null) {
-            	            current = createModelElement(grammarAccess.getAssemblyContextRule());
-            	        }
-                    
-             
-            	        newCompositeNode(grammarAccess.getAssemblyContextAccess().getEncapsulatedComponentRepositoryComponentCrossReference_4_0()); 
-            	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleAssemblyContext5309);
-            ruleEString();
-
-            state._fsp--;
-
-             
-            	        afterParserOrEnumRuleCall();
-            	    
-
-            }
-
-
-            }
-
-            otherlv_5=(Token)match(input,15,FollowSets000.FOLLOW_15_in_ruleAssemblyContext5321); 
-
-                	newLeafNode(otherlv_5, grammarAccess.getAssemblyContextAccess().getRightCurlyBracketKeyword_5());
-                
-
-            }
-
-
-            }
-
-             leaveRule(); 
-        }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
-                appendSkippedTokens();
-            } 
-        finally {
-        }
-        return current;
-    }
-    // $ANTLR end "ruleAssemblyContext"
-
-
-    // $ANTLR start "entryRuleAssemblyConnector"
-    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2470:1: entryRuleAssemblyConnector returns [EObject current=null] : iv_ruleAssemblyConnector= ruleAssemblyConnector EOF ;
-    public final EObject entryRuleAssemblyConnector() throws RecognitionException {
-        EObject current = null;
-
-        EObject iv_ruleAssemblyConnector = null;
-
-
-        try {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2471:2: (iv_ruleAssemblyConnector= ruleAssemblyConnector EOF )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2472:2: iv_ruleAssemblyConnector= ruleAssemblyConnector EOF
-            {
-             newCompositeNode(grammarAccess.getAssemblyConnectorRule()); 
-            pushFollow(FollowSets000.FOLLOW_ruleAssemblyConnector_in_entryRuleAssemblyConnector5357);
-            iv_ruleAssemblyConnector=ruleAssemblyConnector();
-
-            state._fsp--;
-
-             current =iv_ruleAssemblyConnector; 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleAssemblyConnector5367); 
-
-            }
-
-        }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
-                appendSkippedTokens();
-            } 
-        finally {
-        }
-        return current;
-    }
-    // $ANTLR end "entryRuleAssemblyConnector"
-
-
-    // $ANTLR start "ruleAssemblyConnector"
-    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2479:1: ruleAssemblyConnector returns [EObject current=null] : (otherlv_0= 'AssemblyConnector' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' otherlv_3= 'requiredRole' ( ( ruleEString ) ) otherlv_5= 'providedRole' ( ( ruleEString ) ) otherlv_7= 'providingAssemblyContext' ( ( ruleEString ) ) otherlv_9= 'requiringAssemblyContext' ( ( ruleEString ) ) otherlv_11= '}' ) ;
-    public final EObject ruleAssemblyConnector() throws RecognitionException {
-        EObject current = null;
-
-        Token otherlv_0=null;
-        Token otherlv_2=null;
-        Token otherlv_3=null;
-        Token otherlv_5=null;
-        Token otherlv_7=null;
-        Token otherlv_9=null;
-        Token otherlv_11=null;
-        AntlrDatatypeRuleToken lv_name_1_0 = null;
-
-
-         enterRule(); 
-            
-        try {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2482:28: ( (otherlv_0= 'AssemblyConnector' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' otherlv_3= 'requiredRole' ( ( ruleEString ) ) otherlv_5= 'providedRole' ( ( ruleEString ) ) otherlv_7= 'providingAssemblyContext' ( ( ruleEString ) ) otherlv_9= 'requiringAssemblyContext' ( ( ruleEString ) ) otherlv_11= '}' ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2483:1: (otherlv_0= 'AssemblyConnector' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' otherlv_3= 'requiredRole' ( ( ruleEString ) ) otherlv_5= 'providedRole' ( ( ruleEString ) ) otherlv_7= 'providingAssemblyContext' ( ( ruleEString ) ) otherlv_9= 'requiringAssemblyContext' ( ( ruleEString ) ) otherlv_11= '}' )
-            {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2483:1: (otherlv_0= 'AssemblyConnector' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' otherlv_3= 'requiredRole' ( ( ruleEString ) ) otherlv_5= 'providedRole' ( ( ruleEString ) ) otherlv_7= 'providingAssemblyContext' ( ( ruleEString ) ) otherlv_9= 'requiringAssemblyContext' ( ( ruleEString ) ) otherlv_11= '}' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2483:3: otherlv_0= 'AssemblyConnector' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' otherlv_3= 'requiredRole' ( ( ruleEString ) ) otherlv_5= 'providedRole' ( ( ruleEString ) ) otherlv_7= 'providingAssemblyContext' ( ( ruleEString ) ) otherlv_9= 'requiringAssemblyContext' ( ( ruleEString ) ) otherlv_11= '}'
-            {
-            otherlv_0=(Token)match(input,55,FollowSets000.FOLLOW_55_in_ruleAssemblyConnector5404); 
-
-                	newLeafNode(otherlv_0, grammarAccess.getAssemblyConnectorAccess().getAssemblyConnectorKeyword_0());
-                
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2487:1: ( (lv_name_1_0= ruleEString ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2488:1: (lv_name_1_0= ruleEString )
-            {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2488:1: (lv_name_1_0= ruleEString )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2489:3: lv_name_1_0= ruleEString
-            {
-             
-            	        newCompositeNode(grammarAccess.getAssemblyConnectorAccess().getNameEStringParserRuleCall_1_0()); 
-            	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleAssemblyConnector5425);
-            lv_name_1_0=ruleEString();
-
-            state._fsp--;
-
-
-            	        if (current==null) {
-            	            current = createModelElementForParent(grammarAccess.getAssemblyConnectorRule());
-            	        }
-                   		set(
-                   			current, 
-                   			"name",
-                    		lv_name_1_0, 
-                    		"EString");
-            	        afterParserOrEnumRuleCall();
-            	    
-
-            }
-
-
-            }
-
-            otherlv_2=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleAssemblyConnector5437); 
-
-                	newLeafNode(otherlv_2, grammarAccess.getAssemblyConnectorAccess().getLeftCurlyBracketKeyword_2());
-                
-            otherlv_3=(Token)match(input,56,FollowSets000.FOLLOW_56_in_ruleAssemblyConnector5449); 
-
-                	newLeafNode(otherlv_3, grammarAccess.getAssemblyConnectorAccess().getRequiredRoleKeyword_3());
-                
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2513:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2514:1: ( ruleEString )
-            {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2514:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2515:3: ruleEString
-            {
-
-            			if (current==null) {
-            	            current = createModelElement(grammarAccess.getAssemblyConnectorRule());
-            	        }
-                    
-             
-            	        newCompositeNode(grammarAccess.getAssemblyConnectorAccess().getRequiredRoleRequiredRoleCrossReference_4_0()); 
-            	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleAssemblyConnector5472);
-            ruleEString();
-
-            state._fsp--;
-
-             
-            	        afterParserOrEnumRuleCall();
-            	    
-
-            }
-
-
-            }
-
-            otherlv_5=(Token)match(input,57,FollowSets000.FOLLOW_57_in_ruleAssemblyConnector5484); 
-
-                	newLeafNode(otherlv_5, grammarAccess.getAssemblyConnectorAccess().getProvidedRoleKeyword_5());
-                
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2532:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2533:1: ( ruleEString )
-            {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2533:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2534:3: ruleEString
-            {
-
-            			if (current==null) {
-            	            current = createModelElement(grammarAccess.getAssemblyConnectorRule());
-            	        }
-                    
-             
-            	        newCompositeNode(grammarAccess.getAssemblyConnectorAccess().getProvidedRoleProvidedRoleCrossReference_6_0()); 
-            	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleAssemblyConnector5507);
-            ruleEString();
-
-            state._fsp--;
-
-             
-            	        afterParserOrEnumRuleCall();
-            	    
-
-            }
-
-
-            }
-
-            otherlv_7=(Token)match(input,58,FollowSets000.FOLLOW_58_in_ruleAssemblyConnector5519); 
-
-                	newLeafNode(otherlv_7, grammarAccess.getAssemblyConnectorAccess().getProvidingAssemblyContextKeyword_7());
-                
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2551:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2552:1: ( ruleEString )
-            {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2552:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2553:3: ruleEString
-            {
-
-            			if (current==null) {
-            	            current = createModelElement(grammarAccess.getAssemblyConnectorRule());
-            	        }
-                    
-             
-            	        newCompositeNode(grammarAccess.getAssemblyConnectorAccess().getProvidingAssemblyContextAssemblyContextCrossReference_8_0()); 
-            	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleAssemblyConnector5542);
-            ruleEString();
-
-            state._fsp--;
-
-             
-            	        afterParserOrEnumRuleCall();
-            	    
-
-            }
-
-
-            }
-
-            otherlv_9=(Token)match(input,59,FollowSets000.FOLLOW_59_in_ruleAssemblyConnector5554); 
-
-                	newLeafNode(otherlv_9, grammarAccess.getAssemblyConnectorAccess().getRequiringAssemblyContextKeyword_9());
-                
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2570:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2571:1: ( ruleEString )
-            {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2571:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2572:3: ruleEString
-            {
-
-            			if (current==null) {
-            	            current = createModelElement(grammarAccess.getAssemblyConnectorRule());
-            	        }
-                    
-             
-            	        newCompositeNode(grammarAccess.getAssemblyConnectorAccess().getRequiringAssemblyContextAssemblyContextCrossReference_10_0()); 
-            	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleAssemblyConnector5577);
-            ruleEString();
-
-            state._fsp--;
-
-             
-            	        afterParserOrEnumRuleCall();
-            	    
-
-            }
-
-
-            }
-
-            otherlv_11=(Token)match(input,15,FollowSets000.FOLLOW_15_in_ruleAssemblyConnector5589); 
-
-                	newLeafNode(otherlv_11, grammarAccess.getAssemblyConnectorAccess().getRightCurlyBracketKeyword_11());
-                
-
-            }
-
-
-            }
-
-             leaveRule(); 
-        }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
-                appendSkippedTokens();
-            } 
-        finally {
-        }
-        return current;
-    }
-    // $ANTLR end "ruleAssemblyConnector"
-
-
-    // $ANTLR start "entryRuleProvidedDelegationConnector"
-    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2597:1: entryRuleProvidedDelegationConnector returns [EObject current=null] : iv_ruleProvidedDelegationConnector= ruleProvidedDelegationConnector EOF ;
-    public final EObject entryRuleProvidedDelegationConnector() throws RecognitionException {
-        EObject current = null;
-
-        EObject iv_ruleProvidedDelegationConnector = null;
-
-
-        try {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2598:2: (iv_ruleProvidedDelegationConnector= ruleProvidedDelegationConnector EOF )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2599:2: iv_ruleProvidedDelegationConnector= ruleProvidedDelegationConnector EOF
-            {
-             newCompositeNode(grammarAccess.getProvidedDelegationConnectorRule()); 
-            pushFollow(FollowSets000.FOLLOW_ruleProvidedDelegationConnector_in_entryRuleProvidedDelegationConnector5625);
-            iv_ruleProvidedDelegationConnector=ruleProvidedDelegationConnector();
-
-            state._fsp--;
-
-             current =iv_ruleProvidedDelegationConnector; 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleProvidedDelegationConnector5635); 
-
-            }
-
-        }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
-                appendSkippedTokens();
-            } 
-        finally {
-        }
-        return current;
-    }
-    // $ANTLR end "entryRuleProvidedDelegationConnector"
-
-
-    // $ANTLR start "ruleProvidedDelegationConnector"
-    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2606:1: ruleProvidedDelegationConnector returns [EObject current=null] : (otherlv_0= 'ProvidedDelegationConnector' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' otherlv_3= 'assemblyContext' ( ( ruleEString ) ) otherlv_5= 'innerProvidedRole' ( ( ruleEString ) ) otherlv_7= 'outerProvidedRole' ( ( ruleEString ) ) otherlv_9= '}' ) ;
-    public final EObject ruleProvidedDelegationConnector() throws RecognitionException {
-        EObject current = null;
-
-        Token otherlv_0=null;
-        Token otherlv_2=null;
-        Token otherlv_3=null;
-        Token otherlv_5=null;
-        Token otherlv_7=null;
-        Token otherlv_9=null;
-        AntlrDatatypeRuleToken lv_name_1_0 = null;
-
-
-         enterRule(); 
-            
-        try {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2609:28: ( (otherlv_0= 'ProvidedDelegationConnector' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' otherlv_3= 'assemblyContext' ( ( ruleEString ) ) otherlv_5= 'innerProvidedRole' ( ( ruleEString ) ) otherlv_7= 'outerProvidedRole' ( ( ruleEString ) ) otherlv_9= '}' ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2610:1: (otherlv_0= 'ProvidedDelegationConnector' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' otherlv_3= 'assemblyContext' ( ( ruleEString ) ) otherlv_5= 'innerProvidedRole' ( ( ruleEString ) ) otherlv_7= 'outerProvidedRole' ( ( ruleEString ) ) otherlv_9= '}' )
-            {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2610:1: (otherlv_0= 'ProvidedDelegationConnector' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' otherlv_3= 'assemblyContext' ( ( ruleEString ) ) otherlv_5= 'innerProvidedRole' ( ( ruleEString ) ) otherlv_7= 'outerProvidedRole' ( ( ruleEString ) ) otherlv_9= '}' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2610:3: otherlv_0= 'ProvidedDelegationConnector' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' otherlv_3= 'assemblyContext' ( ( ruleEString ) ) otherlv_5= 'innerProvidedRole' ( ( ruleEString ) ) otherlv_7= 'outerProvidedRole' ( ( ruleEString ) ) otherlv_9= '}'
-            {
-            otherlv_0=(Token)match(input,60,FollowSets000.FOLLOW_60_in_ruleProvidedDelegationConnector5672); 
-
-                	newLeafNode(otherlv_0, grammarAccess.getProvidedDelegationConnectorAccess().getProvidedDelegationConnectorKeyword_0());
-                
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2614:1: ( (lv_name_1_0= ruleEString ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2615:1: (lv_name_1_0= ruleEString )
-            {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2615:1: (lv_name_1_0= ruleEString )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2616:3: lv_name_1_0= ruleEString
-            {
-             
-            	        newCompositeNode(grammarAccess.getProvidedDelegationConnectorAccess().getNameEStringParserRuleCall_1_0()); 
-            	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleProvidedDelegationConnector5693);
-            lv_name_1_0=ruleEString();
-
-            state._fsp--;
-
-
-            	        if (current==null) {
-            	            current = createModelElementForParent(grammarAccess.getProvidedDelegationConnectorRule());
-            	        }
-                   		set(
-                   			current, 
-                   			"name",
-                    		lv_name_1_0, 
-                    		"EString");
-            	        afterParserOrEnumRuleCall();
-            	    
-
-            }
-
-
-            }
-
-            otherlv_2=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleProvidedDelegationConnector5705); 
-
-                	newLeafNode(otherlv_2, grammarAccess.getProvidedDelegationConnectorAccess().getLeftCurlyBracketKeyword_2());
-                
-            otherlv_3=(Token)match(input,61,FollowSets000.FOLLOW_61_in_ruleProvidedDelegationConnector5717); 
-
-                	newLeafNode(otherlv_3, grammarAccess.getProvidedDelegationConnectorAccess().getAssemblyContextKeyword_3());
-                
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2640:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2641:1: ( ruleEString )
-            {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2641:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2642:3: ruleEString
-            {
-
-            			if (current==null) {
-            	            current = createModelElement(grammarAccess.getProvidedDelegationConnectorRule());
-            	        }
-                    
-             
-            	        newCompositeNode(grammarAccess.getProvidedDelegationConnectorAccess().getAssemblyContextAssemblyContextCrossReference_4_0()); 
-            	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleProvidedDelegationConnector5740);
-            ruleEString();
-
-            state._fsp--;
-
-             
-            	        afterParserOrEnumRuleCall();
-            	    
-
-            }
-
-
-            }
-
-            otherlv_5=(Token)match(input,62,FollowSets000.FOLLOW_62_in_ruleProvidedDelegationConnector5752); 
-
-                	newLeafNode(otherlv_5, grammarAccess.getProvidedDelegationConnectorAccess().getInnerProvidedRoleKeyword_5());
-                
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2659:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2660:1: ( ruleEString )
-            {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2660:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2661:3: ruleEString
-            {
-
-            			if (current==null) {
-            	            current = createModelElement(grammarAccess.getProvidedDelegationConnectorRule());
-            	        }
-                    
-             
-            	        newCompositeNode(grammarAccess.getProvidedDelegationConnectorAccess().getInnerProvidedRoleProvidedRoleCrossReference_6_0()); 
-            	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleProvidedDelegationConnector5775);
-            ruleEString();
-
-            state._fsp--;
-
-             
-            	        afterParserOrEnumRuleCall();
-            	    
-
-            }
-
-
-            }
-
-            otherlv_7=(Token)match(input,63,FollowSets000.FOLLOW_63_in_ruleProvidedDelegationConnector5787); 
-
-                	newLeafNode(otherlv_7, grammarAccess.getProvidedDelegationConnectorAccess().getOuterProvidedRoleKeyword_7());
-                
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2678:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2679:1: ( ruleEString )
-            {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2679:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2680:3: ruleEString
-            {
-
-            			if (current==null) {
-            	            current = createModelElement(grammarAccess.getProvidedDelegationConnectorRule());
-            	        }
-                    
-             
-            	        newCompositeNode(grammarAccess.getProvidedDelegationConnectorAccess().getOuterProvidedRoleProvidedRoleCrossReference_8_0()); 
-            	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleProvidedDelegationConnector5810);
-            ruleEString();
-
-            state._fsp--;
-
-             
-            	        afterParserOrEnumRuleCall();
-            	    
-
-            }
-
-
-            }
-
-            otherlv_9=(Token)match(input,15,FollowSets000.FOLLOW_15_in_ruleProvidedDelegationConnector5822); 
-
-                	newLeafNode(otherlv_9, grammarAccess.getProvidedDelegationConnectorAccess().getRightCurlyBracketKeyword_9());
-                
-
-            }
-
-
-            }
-
-             leaveRule(); 
-        }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
-                appendSkippedTokens();
-            } 
-        finally {
-        }
-        return current;
-    }
-    // $ANTLR end "ruleProvidedDelegationConnector"
-
-
-    // $ANTLR start "entryRuleRequiredDelegationConnector"
-    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2705:1: entryRuleRequiredDelegationConnector returns [EObject current=null] : iv_ruleRequiredDelegationConnector= ruleRequiredDelegationConnector EOF ;
-    public final EObject entryRuleRequiredDelegationConnector() throws RecognitionException {
-        EObject current = null;
-
-        EObject iv_ruleRequiredDelegationConnector = null;
-
-
-        try {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2706:2: (iv_ruleRequiredDelegationConnector= ruleRequiredDelegationConnector EOF )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2707:2: iv_ruleRequiredDelegationConnector= ruleRequiredDelegationConnector EOF
-            {
-             newCompositeNode(grammarAccess.getRequiredDelegationConnectorRule()); 
-            pushFollow(FollowSets000.FOLLOW_ruleRequiredDelegationConnector_in_entryRuleRequiredDelegationConnector5858);
-            iv_ruleRequiredDelegationConnector=ruleRequiredDelegationConnector();
-
-            state._fsp--;
-
-             current =iv_ruleRequiredDelegationConnector; 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleRequiredDelegationConnector5868); 
-
-            }
-
-        }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
-                appendSkippedTokens();
-            } 
-        finally {
-        }
-        return current;
-    }
-    // $ANTLR end "entryRuleRequiredDelegationConnector"
-
-
-    // $ANTLR start "ruleRequiredDelegationConnector"
-    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2714:1: ruleRequiredDelegationConnector returns [EObject current=null] : (otherlv_0= 'RequiredDelegationConnector' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' otherlv_3= 'assemblyContext' ( ( ruleEString ) ) otherlv_5= 'innerRequiredRole' ( ( ruleEString ) ) otherlv_7= 'outerRequiredRole' ( ( ruleEString ) ) otherlv_9= '}' ) ;
-    public final EObject ruleRequiredDelegationConnector() throws RecognitionException {
-        EObject current = null;
-
-        Token otherlv_0=null;
-        Token otherlv_2=null;
-        Token otherlv_3=null;
-        Token otherlv_5=null;
-        Token otherlv_7=null;
-        Token otherlv_9=null;
-        AntlrDatatypeRuleToken lv_name_1_0 = null;
-
-
-         enterRule(); 
-            
-        try {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2717:28: ( (otherlv_0= 'RequiredDelegationConnector' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' otherlv_3= 'assemblyContext' ( ( ruleEString ) ) otherlv_5= 'innerRequiredRole' ( ( ruleEString ) ) otherlv_7= 'outerRequiredRole' ( ( ruleEString ) ) otherlv_9= '}' ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2718:1: (otherlv_0= 'RequiredDelegationConnector' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' otherlv_3= 'assemblyContext' ( ( ruleEString ) ) otherlv_5= 'innerRequiredRole' ( ( ruleEString ) ) otherlv_7= 'outerRequiredRole' ( ( ruleEString ) ) otherlv_9= '}' )
-            {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2718:1: (otherlv_0= 'RequiredDelegationConnector' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' otherlv_3= 'assemblyContext' ( ( ruleEString ) ) otherlv_5= 'innerRequiredRole' ( ( ruleEString ) ) otherlv_7= 'outerRequiredRole' ( ( ruleEString ) ) otherlv_9= '}' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2718:3: otherlv_0= 'RequiredDelegationConnector' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' otherlv_3= 'assemblyContext' ( ( ruleEString ) ) otherlv_5= 'innerRequiredRole' ( ( ruleEString ) ) otherlv_7= 'outerRequiredRole' ( ( ruleEString ) ) otherlv_9= '}'
-            {
-            otherlv_0=(Token)match(input,64,FollowSets000.FOLLOW_64_in_ruleRequiredDelegationConnector5905); 
-
-                	newLeafNode(otherlv_0, grammarAccess.getRequiredDelegationConnectorAccess().getRequiredDelegationConnectorKeyword_0());
-                
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2722:1: ( (lv_name_1_0= ruleEString ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2723:1: (lv_name_1_0= ruleEString )
-            {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2723:1: (lv_name_1_0= ruleEString )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2724:3: lv_name_1_0= ruleEString
-            {
-             
-            	        newCompositeNode(grammarAccess.getRequiredDelegationConnectorAccess().getNameEStringParserRuleCall_1_0()); 
-            	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleRequiredDelegationConnector5926);
-            lv_name_1_0=ruleEString();
-
-            state._fsp--;
-
-
-            	        if (current==null) {
-            	            current = createModelElementForParent(grammarAccess.getRequiredDelegationConnectorRule());
-            	        }
-                   		set(
-                   			current, 
-                   			"name",
-                    		lv_name_1_0, 
-                    		"EString");
-            	        afterParserOrEnumRuleCall();
-            	    
-
-            }
-
-
-            }
-
-            otherlv_2=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleRequiredDelegationConnector5938); 
-
-                	newLeafNode(otherlv_2, grammarAccess.getRequiredDelegationConnectorAccess().getLeftCurlyBracketKeyword_2());
-                
-            otherlv_3=(Token)match(input,61,FollowSets000.FOLLOW_61_in_ruleRequiredDelegationConnector5950); 
-
-                	newLeafNode(otherlv_3, grammarAccess.getRequiredDelegationConnectorAccess().getAssemblyContextKeyword_3());
-                
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2748:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2749:1: ( ruleEString )
-            {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2749:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2750:3: ruleEString
-            {
-
-            			if (current==null) {
-            	            current = createModelElement(grammarAccess.getRequiredDelegationConnectorRule());
-            	        }
-                    
-             
-            	        newCompositeNode(grammarAccess.getRequiredDelegationConnectorAccess().getAssemblyContextAssemblyContextCrossReference_4_0()); 
-            	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleRequiredDelegationConnector5973);
-            ruleEString();
-
-            state._fsp--;
-
-             
-            	        afterParserOrEnumRuleCall();
-            	    
-
-            }
-
-
-            }
-
-            otherlv_5=(Token)match(input,65,FollowSets000.FOLLOW_65_in_ruleRequiredDelegationConnector5985); 
-
-                	newLeafNode(otherlv_5, grammarAccess.getRequiredDelegationConnectorAccess().getInnerRequiredRoleKeyword_5());
-                
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2767:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2768:1: ( ruleEString )
-            {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2768:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2769:3: ruleEString
-            {
-
-            			if (current==null) {
-            	            current = createModelElement(grammarAccess.getRequiredDelegationConnectorRule());
-            	        }
-                    
-             
-            	        newCompositeNode(grammarAccess.getRequiredDelegationConnectorAccess().getInnerRequiredRoleRequiredRoleCrossReference_6_0()); 
-            	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleRequiredDelegationConnector6008);
-            ruleEString();
-
-            state._fsp--;
-
-             
-            	        afterParserOrEnumRuleCall();
-            	    
-
-            }
-
-
-            }
-
-            otherlv_7=(Token)match(input,66,FollowSets000.FOLLOW_66_in_ruleRequiredDelegationConnector6020); 
-
-                	newLeafNode(otherlv_7, grammarAccess.getRequiredDelegationConnectorAccess().getOuterRequiredRoleKeyword_7());
-                
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2786:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2787:1: ( ruleEString )
-            {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2787:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2788:3: ruleEString
-            {
-
-            			if (current==null) {
-            	            current = createModelElement(grammarAccess.getRequiredDelegationConnectorRule());
-            	        }
-                    
-             
-            	        newCompositeNode(grammarAccess.getRequiredDelegationConnectorAccess().getOuterRequiredRoleRequiredRoleCrossReference_8_0()); 
-            	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleRequiredDelegationConnector6043);
-            ruleEString();
-
-            state._fsp--;
-
-             
-            	        afterParserOrEnumRuleCall();
-            	    
-
-            }
-
-
-            }
-
-            otherlv_9=(Token)match(input,15,FollowSets000.FOLLOW_15_in_ruleRequiredDelegationConnector6055); 
-
-                	newLeafNode(otherlv_9, grammarAccess.getRequiredDelegationConnectorAccess().getRightCurlyBracketKeyword_9());
-                
-
-            }
-
-
-            }
-
-             leaveRule(); 
-        }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
-                appendSkippedTokens();
-            } 
-        finally {
-        }
-        return current;
-    }
-    // $ANTLR end "ruleRequiredDelegationConnector"
-
-
-    // $ANTLR start "rulePrimitiveTypeEnum"
-    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2813:1: rulePrimitiveTypeEnum returns [Enumerator current=null] : ( (enumLiteral_0= 'INT' ) | (enumLiteral_1= 'STRING' ) | (enumLiteral_2= 'BOOL' ) | (enumLiteral_3= 'DOUBLE' ) | (enumLiteral_4= 'CHAR' ) | (enumLiteral_5= 'BYTE' ) | (enumLiteral_6= 'LONG' ) ) ;
-    public final Enumerator rulePrimitiveTypeEnum() throws RecognitionException {
-        Enumerator current = null;
-
-        Token enumLiteral_0=null;
-        Token enumLiteral_1=null;
-        Token enumLiteral_2=null;
-        Token enumLiteral_3=null;
-        Token enumLiteral_4=null;
-        Token enumLiteral_5=null;
-        Token enumLiteral_6=null;
-
-         enterRule(); 
-        try {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2815:28: ( ( (enumLiteral_0= 'INT' ) | (enumLiteral_1= 'STRING' ) | (enumLiteral_2= 'BOOL' ) | (enumLiteral_3= 'DOUBLE' ) | (enumLiteral_4= 'CHAR' ) | (enumLiteral_5= 'BYTE' ) | (enumLiteral_6= 'LONG' ) ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2816:1: ( (enumLiteral_0= 'INT' ) | (enumLiteral_1= 'STRING' ) | (enumLiteral_2= 'BOOL' ) | (enumLiteral_3= 'DOUBLE' ) | (enumLiteral_4= 'CHAR' ) | (enumLiteral_5= 'BYTE' ) | (enumLiteral_6= 'LONG' ) )
-            {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2816:1: ( (enumLiteral_0= 'INT' ) | (enumLiteral_1= 'STRING' ) | (enumLiteral_2= 'BOOL' ) | (enumLiteral_3= 'DOUBLE' ) | (enumLiteral_4= 'CHAR' ) | (enumLiteral_5= 'BYTE' ) | (enumLiteral_6= 'LONG' ) )
-            int alt61=7;
-            switch ( input.LA(1) ) {
-            case 67:
-                {
-                alt61=1;
-                }
-                break;
-            case 68:
-                {
-                alt61=2;
-                }
-                break;
-            case 69:
-                {
-                alt61=3;
-                }
-                break;
-            case 70:
-                {
-                alt61=4;
-                }
-                break;
-            case 71:
-                {
-                alt61=5;
-                }
-                break;
-            case 72:
-                {
-                alt61=6;
-                }
-                break;
-            case 73:
-                {
-                alt61=7;
-                }
-                break;
-            default:
-                NoViableAltException nvae =
-                    new NoViableAltException("", 61, 0, input);
-
-                throw nvae;
-            }
-
-            switch (alt61) {
-                case 1 :
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2816:2: (enumLiteral_0= 'INT' )
-                    {
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2816:2: (enumLiteral_0= 'INT' )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2816:4: enumLiteral_0= 'INT'
-                    {
-                    enumLiteral_0=(Token)match(input,67,FollowSets000.FOLLOW_67_in_rulePrimitiveTypeEnum6105); 
-
-                            current = grammarAccess.getPrimitiveTypeEnumAccess().getINTEnumLiteralDeclaration_0().getEnumLiteral().getInstance();
-                            newLeafNode(enumLiteral_0, grammarAccess.getPrimitiveTypeEnumAccess().getINTEnumLiteralDeclaration_0()); 
-                        
-
-                    }
-
-
-                    }
-                    break;
-                case 2 :
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2822:6: (enumLiteral_1= 'STRING' )
-                    {
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2822:6: (enumLiteral_1= 'STRING' )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2822:8: enumLiteral_1= 'STRING'
-                    {
-                    enumLiteral_1=(Token)match(input,68,FollowSets000.FOLLOW_68_in_rulePrimitiveTypeEnum6122); 
-
-                            current = grammarAccess.getPrimitiveTypeEnumAccess().getSTRINGEnumLiteralDeclaration_1().getEnumLiteral().getInstance();
-                            newLeafNode(enumLiteral_1, grammarAccess.getPrimitiveTypeEnumAccess().getSTRINGEnumLiteralDeclaration_1()); 
-                        
-
-                    }
-
-
-                    }
-                    break;
-                case 3 :
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2828:6: (enumLiteral_2= 'BOOL' )
-                    {
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2828:6: (enumLiteral_2= 'BOOL' )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2828:8: enumLiteral_2= 'BOOL'
-                    {
-                    enumLiteral_2=(Token)match(input,69,FollowSets000.FOLLOW_69_in_rulePrimitiveTypeEnum6139); 
-
-                            current = grammarAccess.getPrimitiveTypeEnumAccess().getBOOLEnumLiteralDeclaration_2().getEnumLiteral().getInstance();
-                            newLeafNode(enumLiteral_2, grammarAccess.getPrimitiveTypeEnumAccess().getBOOLEnumLiteralDeclaration_2()); 
-                        
-
-                    }
-
-
-                    }
-                    break;
-                case 4 :
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2834:6: (enumLiteral_3= 'DOUBLE' )
-                    {
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2834:6: (enumLiteral_3= 'DOUBLE' )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2834:8: enumLiteral_3= 'DOUBLE'
-                    {
-                    enumLiteral_3=(Token)match(input,70,FollowSets000.FOLLOW_70_in_rulePrimitiveTypeEnum6156); 
-
-                            current = grammarAccess.getPrimitiveTypeEnumAccess().getDOUBLEEnumLiteralDeclaration_3().getEnumLiteral().getInstance();
-                            newLeafNode(enumLiteral_3, grammarAccess.getPrimitiveTypeEnumAccess().getDOUBLEEnumLiteralDeclaration_3()); 
-                        
-
-                    }
-
-
-                    }
-                    break;
-                case 5 :
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2840:6: (enumLiteral_4= 'CHAR' )
-                    {
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2840:6: (enumLiteral_4= 'CHAR' )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2840:8: enumLiteral_4= 'CHAR'
-                    {
-                    enumLiteral_4=(Token)match(input,71,FollowSets000.FOLLOW_71_in_rulePrimitiveTypeEnum6173); 
-
-                            current = grammarAccess.getPrimitiveTypeEnumAccess().getCHAREnumLiteralDeclaration_4().getEnumLiteral().getInstance();
-                            newLeafNode(enumLiteral_4, grammarAccess.getPrimitiveTypeEnumAccess().getCHAREnumLiteralDeclaration_4()); 
-                        
-
-                    }
-
-
-                    }
-                    break;
-                case 6 :
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2846:6: (enumLiteral_5= 'BYTE' )
-                    {
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2846:6: (enumLiteral_5= 'BYTE' )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2846:8: enumLiteral_5= 'BYTE'
-                    {
-                    enumLiteral_5=(Token)match(input,72,FollowSets000.FOLLOW_72_in_rulePrimitiveTypeEnum6190); 
-
-                            current = grammarAccess.getPrimitiveTypeEnumAccess().getBYTEEnumLiteralDeclaration_5().getEnumLiteral().getInstance();
-                            newLeafNode(enumLiteral_5, grammarAccess.getPrimitiveTypeEnumAccess().getBYTEEnumLiteralDeclaration_5()); 
-                        
-
-                    }
-
-
-                    }
-                    break;
-                case 7 :
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2852:6: (enumLiteral_6= 'LONG' )
-                    {
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2852:6: (enumLiteral_6= 'LONG' )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2852:8: enumLiteral_6= 'LONG'
-                    {
-                    enumLiteral_6=(Token)match(input,73,FollowSets000.FOLLOW_73_in_rulePrimitiveTypeEnum6207); 
-
-                            current = grammarAccess.getPrimitiveTypeEnumAccess().getLONGEnumLiteralDeclaration_6().getEnumLiteral().getInstance();
-                            newLeafNode(enumLiteral_6, grammarAccess.getPrimitiveTypeEnumAccess().getLONGEnumLiteralDeclaration_6()); 
-                        
-
-                    }
-
-
-                    }
-                    break;
-
-            }
-
-
-            }
-
-             leaveRule(); 
-        }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
-                appendSkippedTokens();
-            } 
-        finally {
-        }
-        return current;
-    }
-    // $ANTLR end "rulePrimitiveTypeEnum"
-
-    // Delegated rules
-
-
- 
-
-    
-    private static class FollowSets000 {
-        public static final BitSet FOLLOW_ruleRepository_in_entryRuleRepository75 = new BitSet(new long[]{0x0000000000000000L});
-        public static final BitSet FOLLOW_EOF_in_entryRuleRepository85 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_11_in_ruleRepository122 = new BitSet(new long[]{0x0000000000000010L});
-        public static final BitSet FOLLOW_ruleQualifiedName_in_ruleRepository143 = new BitSet(new long[]{0x0000000000001000L});
-        public static final BitSet FOLLOW_12_in_ruleRepository155 = new BitSet(new long[]{0x00000000000BA000L});
-        public static final BitSet FOLLOW_13_in_ruleRepository168 = new BitSet(new long[]{0x0000000000001000L});
-        public static final BitSet FOLLOW_12_in_ruleRepository180 = new BitSet(new long[]{0x0000000000100000L});
-        public static final BitSet FOLLOW_ruleImport_in_ruleRepository201 = new BitSet(new long[]{0x000000000000C000L});
-        public static final BitSet FOLLOW_14_in_ruleRepository214 = new BitSet(new long[]{0x0000000000100000L});
-        public static final BitSet FOLLOW_ruleImport_in_ruleRepository235 = new BitSet(new long[]{0x000000000000C000L});
-        public static final BitSet FOLLOW_15_in_ruleRepository249 = new BitSet(new long[]{0x00000000000B8000L});
-        public static final BitSet FOLLOW_16_in_ruleRepository264 = new BitSet(new long[]{0x0000000000001000L});
-        public static final BitSet FOLLOW_12_in_ruleRepository276 = new BitSet(new long[]{0x0000001280000000L});
-        public static final BitSet FOLLOW_ruleDataType_in_ruleRepository297 = new BitSet(new long[]{0x000000000000C000L});
-        public static final BitSet FOLLOW_14_in_ruleRepository310 = new BitSet(new long[]{0x0000001280000000L});
-        public static final BitSet FOLLOW_ruleDataType_in_ruleRepository331 = new BitSet(new long[]{0x000000000000C000L});
-        public static final BitSet FOLLOW_15_in_ruleRepository345 = new BitSet(new long[]{0x00000000000A8000L});
-        public static final BitSet FOLLOW_17_in_ruleRepository360 = new BitSet(new long[]{0x0000000000001000L});
-        public static final BitSet FOLLOW_12_in_ruleRepository372 = new BitSet(new long[]{0x0000B00008000000L});
-        public static final BitSet FOLLOW_ruleRepositoryComponent_in_ruleRepository393 = new BitSet(new long[]{0x0000000000048000L});
-        public static final BitSet FOLLOW_18_in_ruleRepository406 = new BitSet(new long[]{0x0000B00008000000L});
-        public static final BitSet FOLLOW_ruleRepositoryComponent_in_ruleRepository427 = new BitSet(new long[]{0x0000000000048000L});
-        public static final BitSet FOLLOW_15_in_ruleRepository441 = new BitSet(new long[]{0x0000000000088000L});
-        public static final BitSet FOLLOW_19_in_ruleRepository456 = new BitSet(new long[]{0x0000000000001000L});
-        public static final BitSet FOLLOW_12_in_ruleRepository468 = new BitSet(new long[]{0x0000000000800000L});
-        public static final BitSet FOLLOW_ruleInterface_in_ruleRepository489 = new BitSet(new long[]{0x000000000000C000L});
-        public static final BitSet FOLLOW_14_in_ruleRepository502 = new BitSet(new long[]{0x0000000000800000L});
-        public static final BitSet FOLLOW_ruleInterface_in_ruleRepository523 = new BitSet(new long[]{0x000000000000C000L});
-        public static final BitSet FOLLOW_15_in_ruleRepository537 = new BitSet(new long[]{0x0000000000008000L});
-        public static final BitSet FOLLOW_15_in_ruleRepository551 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleImport_in_entryRuleImport587 = new BitSet(new long[]{0x0000000000000000L});
-        public static final BitSet FOLLOW_EOF_in_entryRuleImport597 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_20_in_ruleImport634 = new BitSet(new long[]{0x0000000000000010L});
-        public static final BitSet FOLLOW_ruleQualifiedNameWithWildCard_in_ruleImport655 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleQualifiedNameWithWildCard_in_entryRuleQualifiedNameWithWildCard692 = new BitSet(new long[]{0x0000000000000000L});
-        public static final BitSet FOLLOW_EOF_in_entryRuleQualifiedNameWithWildCard703 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleQualifiedName_in_ruleQualifiedNameWithWildCard750 = new BitSet(new long[]{0x0000000000200002L});
-        public static final BitSet FOLLOW_21_in_ruleQualifiedNameWithWildCard769 = new BitSet(new long[]{0x0000000000400000L});
-        public static final BitSet FOLLOW_22_in_ruleQualifiedNameWithWildCard782 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleQualifiedName_in_entryRuleQualifiedName825 = new BitSet(new long[]{0x0000000000000000L});
-        public static final BitSet FOLLOW_EOF_in_entryRuleQualifiedName836 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_RULE_ID_in_ruleQualifiedName876 = new BitSet(new long[]{0x0000000000200002L});
-        public static final BitSet FOLLOW_21_in_ruleQualifiedName895 = new BitSet(new long[]{0x0000000000000010L});
-        public static final BitSet FOLLOW_RULE_ID_in_ruleQualifiedName910 = new BitSet(new long[]{0x0000000000200002L});
-        public static final BitSet FOLLOW_ruleDataType_in_entryRuleDataType957 = new BitSet(new long[]{0x0000000000000000L});
-        public static final BitSet FOLLOW_EOF_in_entryRuleDataType967 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleCollectionDataType_in_ruleDataType1014 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleCompositeDataType_in_ruleDataType1041 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rulePrimitiveDataType_in_ruleDataType1068 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleRepositoryComponent_in_entryRuleRepositoryComponent1103 = new BitSet(new long[]{0x0000000000000000L});
-        public static final BitSet FOLLOW_EOF_in_entryRuleRepositoryComponent1113 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleRepositoryComponent_Impl_in_ruleRepositoryComponent1160 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleBasicComponent_in_ruleRepositoryComponent1187 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleCompositeComponent_in_ruleRepositoryComponent1214 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleSubSystem_in_ruleRepositoryComponent1241 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleEString_in_entryRuleEString1277 = new BitSet(new long[]{0x0000000000000000L});
-        public static final BitSet FOLLOW_EOF_in_entryRuleEString1288 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_RULE_STRING_in_ruleEString1328 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_RULE_ID_in_ruleEString1354 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleInterface_in_entryRuleInterface1399 = new BitSet(new long[]{0x0000000000000000L});
-        public static final BitSet FOLLOW_EOF_in_entryRuleInterface1409 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_23_in_ruleInterface1446 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleInterface1467 = new BitSet(new long[]{0x0000000000001000L});
-        public static final BitSet FOLLOW_12_in_ruleInterface1479 = new BitSet(new long[]{0x0000020001008030L});
-        public static final BitSet FOLLOW_24_in_ruleInterface1492 = new BitSet(new long[]{0x0000000002000000L});
-        public static final BitSet FOLLOW_25_in_ruleInterface1504 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleInterface1527 = new BitSet(new long[]{0x0000000004004000L});
-        public static final BitSet FOLLOW_14_in_ruleInterface1540 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleInterface1563 = new BitSet(new long[]{0x0000000004004000L});
-        public static final BitSet FOLLOW_26_in_ruleInterface1577 = new BitSet(new long[]{0x0000020000008030L});
-        public static final BitSet FOLLOW_ruleSignature_in_ruleInterface1601 = new BitSet(new long[]{0x000000000000C000L});
-        public static final BitSet FOLLOW_14_in_ruleInterface1614 = new BitSet(new long[]{0x0000020000000030L});
-        public static final BitSet FOLLOW_ruleSignature_in_ruleInterface1635 = new BitSet(new long[]{0x000000000000C000L});
-        public static final BitSet FOLLOW_15_in_ruleInterface1651 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleRepositoryComponent_Impl_in_entryRuleRepositoryComponent_Impl1687 = new BitSet(new long[]{0x0000000000000000L});
-        public static final BitSet FOLLOW_EOF_in_entryRuleRepositoryComponent_Impl1697 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_27_in_ruleRepositoryComponent_Impl1734 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleRepositoryComponent_Impl1755 = new BitSet(new long[]{0x0000000000001000L});
-        public static final BitSet FOLLOW_12_in_ruleRepositoryComponent_Impl1767 = new BitSet(new long[]{0x0000000070008000L});
-        public static final BitSet FOLLOW_28_in_ruleRepositoryComponent_Impl1780 = new BitSet(new long[]{0x0000000002000000L});
-        public static final BitSet FOLLOW_25_in_ruleRepositoryComponent_Impl1792 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleRepositoryComponent_Impl1815 = new BitSet(new long[]{0x0000000004004000L});
-        public static final BitSet FOLLOW_14_in_ruleRepositoryComponent_Impl1828 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleRepositoryComponent_Impl1851 = new BitSet(new long[]{0x0000000004004000L});
-        public static final BitSet FOLLOW_26_in_ruleRepositoryComponent_Impl1865 = new BitSet(new long[]{0x0000000060008000L});
-        public static final BitSet FOLLOW_29_in_ruleRepositoryComponent_Impl1880 = new BitSet(new long[]{0x0000000000001000L});
-        public static final BitSet FOLLOW_12_in_ruleRepositoryComponent_Impl1892 = new BitSet(new long[]{0x0000040000000000L});
-        public static final BitSet FOLLOW_ruleProvidedRole_in_ruleRepositoryComponent_Impl1913 = new BitSet(new long[]{0x000000000000C000L});
-        public static final BitSet FOLLOW_14_in_ruleRepositoryComponent_Impl1926 = new BitSet(new long[]{0x0000040000000000L});
-        public static final BitSet FOLLOW_ruleProvidedRole_in_ruleRepositoryComponent_Impl1947 = new BitSet(new long[]{0x000000000000C000L});
-        public static final BitSet FOLLOW_15_in_ruleRepositoryComponent_Impl1961 = new BitSet(new long[]{0x0000000040008000L});
-        public static final BitSet FOLLOW_30_in_ruleRepositoryComponent_Impl1976 = new BitSet(new long[]{0x0000000000001000L});
-        public static final BitSet FOLLOW_12_in_ruleRepositoryComponent_Impl1988 = new BitSet(new long[]{0x0000080000000000L});
-        public static final BitSet FOLLOW_ruleRequiredRole_in_ruleRepositoryComponent_Impl2009 = new BitSet(new long[]{0x000000000000C000L});
-        public static final BitSet FOLLOW_14_in_ruleRepositoryComponent_Impl2022 = new BitSet(new long[]{0x0000080000000000L});
-        public static final BitSet FOLLOW_ruleRequiredRole_in_ruleRepositoryComponent_Impl2043 = new BitSet(new long[]{0x000000000000C000L});
-        public static final BitSet FOLLOW_15_in_ruleRepositoryComponent_Impl2057 = new BitSet(new long[]{0x0000000000008000L});
-        public static final BitSet FOLLOW_15_in_ruleRepositoryComponent_Impl2071 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleCollectionDataType_in_entryRuleCollectionDataType2107 = new BitSet(new long[]{0x0000000000000000L});
-        public static final BitSet FOLLOW_EOF_in_entryRuleCollectionDataType2117 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_31_in_ruleCollectionDataType2154 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleCollectionDataType2175 = new BitSet(new long[]{0x0000000000001000L});
-        public static final BitSet FOLLOW_12_in_ruleCollectionDataType2187 = new BitSet(new long[]{0x0000000100000000L});
-        public static final BitSet FOLLOW_32_in_ruleCollectionDataType2199 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleCollectionDataType2222 = new BitSet(new long[]{0x0000000000008000L});
-        public static final BitSet FOLLOW_15_in_ruleCollectionDataType2234 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleCompositeDataType_in_entryRuleCompositeDataType2270 = new BitSet(new long[]{0x0000000000000000L});
-        public static final BitSet FOLLOW_EOF_in_entryRuleCompositeDataType2280 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_33_in_ruleCompositeDataType2317 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleCompositeDataType2338 = new BitSet(new long[]{0x0000000000001000L});
-        public static final BitSet FOLLOW_12_in_ruleCompositeDataType2350 = new BitSet(new long[]{0x0000000C00008000L});
-        public static final BitSet FOLLOW_34_in_ruleCompositeDataType2363 = new BitSet(new long[]{0x0000000002000000L});
-        public static final BitSet FOLLOW_25_in_ruleCompositeDataType2375 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleCompositeDataType2398 = new BitSet(new long[]{0x0000000004004000L});
-        public static final BitSet FOLLOW_14_in_ruleCompositeDataType2411 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleCompositeDataType2434 = new BitSet(new long[]{0x0000000004004000L});
-        public static final BitSet FOLLOW_26_in_ruleCompositeDataType2448 = new BitSet(new long[]{0x0000000800008000L});
-        public static final BitSet FOLLOW_35_in_ruleCompositeDataType2463 = new BitSet(new long[]{0x0000000000001000L});
-        public static final BitSet FOLLOW_12_in_ruleCompositeDataType2475 = new BitSet(new long[]{0x0000008000000000L});
-        public static final BitSet FOLLOW_ruleInnerDeclaration_in_ruleCompositeDataType2496 = new BitSet(new long[]{0x000000000000C000L});
-        public static final BitSet FOLLOW_14_in_ruleCompositeDataType2509 = new BitSet(new long[]{0x0000008000000000L});
-        public static final BitSet FOLLOW_ruleInnerDeclaration_in_ruleCompositeDataType2530 = new BitSet(new long[]{0x000000000000C000L});
-        public static final BitSet FOLLOW_15_in_ruleCompositeDataType2544 = new BitSet(new long[]{0x0000000000008000L});
-        public static final BitSet FOLLOW_15_in_ruleCompositeDataType2558 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rulePrimitiveDataType_in_entryRulePrimitiveDataType2594 = new BitSet(new long[]{0x0000000000000000L});
-        public static final BitSet FOLLOW_EOF_in_entryRulePrimitiveDataType2604 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_36_in_rulePrimitiveDataType2641 = new BitSet(new long[]{0x0000000000001000L});
-        public static final BitSet FOLLOW_12_in_rulePrimitiveDataType2653 = new BitSet(new long[]{0x0000002000000000L});
-        public static final BitSet FOLLOW_37_in_rulePrimitiveDataType2665 = new BitSet(new long[]{0x0000000000000000L,0x00000000000003F8L});
-        public static final BitSet FOLLOW_rulePrimitiveTypeEnum_in_rulePrimitiveDataType2686 = new BitSet(new long[]{0x0000004000000000L});
-        public static final BitSet FOLLOW_38_in_rulePrimitiveDataType2698 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_rulePrimitiveDataType2719 = new BitSet(new long[]{0x0000000000008000L});
-        public static final BitSet FOLLOW_15_in_rulePrimitiveDataType2731 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleInnerDeclaration_in_entryRuleInnerDeclaration2767 = new BitSet(new long[]{0x0000000000000000L});
-        public static final BitSet FOLLOW_EOF_in_entryRuleInnerDeclaration2777 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_39_in_ruleInnerDeclaration2814 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleInnerDeclaration2835 = new BitSet(new long[]{0x0000000000001000L});
-        public static final BitSet FOLLOW_12_in_ruleInnerDeclaration2847 = new BitSet(new long[]{0x0000010000000000L});
-        public static final BitSet FOLLOW_40_in_ruleInnerDeclaration2859 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleInnerDeclaration2882 = new BitSet(new long[]{0x0000000000008000L});
-        public static final BitSet FOLLOW_15_in_ruleInnerDeclaration2894 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleSignature_in_entryRuleSignature2930 = new BitSet(new long[]{0x0000000000000000L});
-        public static final BitSet FOLLOW_EOF_in_entryRuleSignature2940 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleSignature2989 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_41_in_ruleSignature3007 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleSignature3029 = new BitSet(new long[]{0x0000000002000000L});
-        public static final BitSet FOLLOW_25_in_ruleSignature3041 = new BitSet(new long[]{0x0000000004000030L});
-        public static final BitSet FOLLOW_ruleParameter_in_ruleSignature3063 = new BitSet(new long[]{0x0000000004004000L});
-        public static final BitSet FOLLOW_14_in_ruleSignature3076 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleParameter_in_ruleSignature3097 = new BitSet(new long[]{0x0000000004004000L});
-        public static final BitSet FOLLOW_26_in_ruleSignature3113 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleParameter_in_entryRuleParameter3149 = new BitSet(new long[]{0x0000000000000000L});
-        public static final BitSet FOLLOW_EOF_in_entryRuleParameter3159 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleParameter3207 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleParameter3228 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleProvidedRole_in_entryRuleProvidedRole3264 = new BitSet(new long[]{0x0000000000000000L});
-        public static final BitSet FOLLOW_EOF_in_entryRuleProvidedRole3274 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_42_in_ruleProvidedRole3311 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleProvidedRole3334 = new BitSet(new long[]{0x0000000000004002L});
-        public static final BitSet FOLLOW_14_in_ruleProvidedRole3347 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleRequiredRole_in_entryRuleRequiredRole3385 = new BitSet(new long[]{0x0000000000000000L});
-        public static final BitSet FOLLOW_EOF_in_entryRuleRequiredRole3395 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_43_in_ruleRequiredRole3432 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleRequiredRole3455 = new BitSet(new long[]{0x0000000000004002L});
-        public static final BitSet FOLLOW_14_in_ruleRequiredRole3468 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleBasicComponent_in_entryRuleBasicComponent3506 = new BitSet(new long[]{0x0000000000000000L});
-        public static final BitSet FOLLOW_EOF_in_entryRuleBasicComponent3516 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_44_in_ruleBasicComponent3553 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleBasicComponent3574 = new BitSet(new long[]{0x00000C0000001000L});
-        public static final BitSet FOLLOW_ruleProvidedRole_in_ruleBasicComponent3596 = new BitSet(new long[]{0x0000080000005000L});
-        public static final BitSet FOLLOW_14_in_ruleBasicComponent3609 = new BitSet(new long[]{0x0000040000000000L});
-        public static final BitSet FOLLOW_ruleProvidedRole_in_ruleBasicComponent3630 = new BitSet(new long[]{0x0000080000005000L});
-        public static final BitSet FOLLOW_ruleRequiredRole_in_ruleBasicComponent3656 = new BitSet(new long[]{0x0000000000005000L});
-        public static final BitSet FOLLOW_14_in_ruleBasicComponent3669 = new BitSet(new long[]{0x0000080000000000L});
-        public static final BitSet FOLLOW_ruleRequiredRole_in_ruleBasicComponent3690 = new BitSet(new long[]{0x0000000000005000L});
-        public static final BitSet FOLLOW_12_in_ruleBasicComponent3706 = new BitSet(new long[]{0x0000000010008000L});
-        public static final BitSet FOLLOW_28_in_ruleBasicComponent3719 = new BitSet(new long[]{0x0000000002000000L});
-        public static final BitSet FOLLOW_25_in_ruleBasicComponent3731 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleBasicComponent3754 = new BitSet(new long[]{0x0000000004004000L});
-        public static final BitSet FOLLOW_14_in_ruleBasicComponent3767 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleBasicComponent3790 = new BitSet(new long[]{0x0000000004004000L});
-        public static final BitSet FOLLOW_26_in_ruleBasicComponent3804 = new BitSet(new long[]{0x0000000000008000L});
-        public static final BitSet FOLLOW_15_in_ruleBasicComponent3818 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleCompositeComponent_in_entryRuleCompositeComponent3854 = new BitSet(new long[]{0x0000000000000000L});
-        public static final BitSet FOLLOW_EOF_in_entryRuleCompositeComponent3864 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_45_in_ruleCompositeComponent3901 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleCompositeComponent3922 = new BitSet(new long[]{0x00000C0000001000L});
-        public static final BitSet FOLLOW_ruleProvidedRole_in_ruleCompositeComponent3944 = new BitSet(new long[]{0x0000080000005000L});
-        public static final BitSet FOLLOW_14_in_ruleCompositeComponent3957 = new BitSet(new long[]{0x0000040000000000L});
-        public static final BitSet FOLLOW_ruleProvidedRole_in_ruleCompositeComponent3978 = new BitSet(new long[]{0x0000080000005000L});
-        public static final BitSet FOLLOW_ruleRequiredRole_in_ruleCompositeComponent4004 = new BitSet(new long[]{0x0000000000005000L});
-        public static final BitSet FOLLOW_14_in_ruleCompositeComponent4017 = new BitSet(new long[]{0x0000080000000000L});
-        public static final BitSet FOLLOW_ruleRequiredRole_in_ruleCompositeComponent4038 = new BitSet(new long[]{0x0000000000005000L});
-        public static final BitSet FOLLOW_12_in_ruleCompositeComponent4054 = new BitSet(new long[]{0x0000400010008000L});
-        public static final BitSet FOLLOW_28_in_ruleCompositeComponent4067 = new BitSet(new long[]{0x0000000002000000L});
-        public static final BitSet FOLLOW_25_in_ruleCompositeComponent4079 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleCompositeComponent4102 = new BitSet(new long[]{0x0000000004004000L});
-        public static final BitSet FOLLOW_14_in_ruleCompositeComponent4115 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleCompositeComponent4138 = new BitSet(new long[]{0x0000000004004000L});
-        public static final BitSet FOLLOW_26_in_ruleCompositeComponent4152 = new BitSet(new long[]{0x0000400000008000L});
-        public static final BitSet FOLLOW_46_in_ruleCompositeComponent4167 = new BitSet(new long[]{0x0001000000000000L});
-        public static final BitSet FOLLOW_ruleComposedStructureAssembly_in_ruleCompositeComponent4188 = new BitSet(new long[]{0x0000000000008000L});
-        public static final BitSet FOLLOW_15_in_ruleCompositeComponent4202 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleSubSystem_in_entryRuleSubSystem4238 = new BitSet(new long[]{0x0000000000000000L});
-        public static final BitSet FOLLOW_EOF_in_entryRuleSubSystem4248 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_47_in_ruleSubSystem4285 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleSubSystem4306 = new BitSet(new long[]{0x0000000060001000L});
-        public static final BitSet FOLLOW_29_in_ruleSubSystem4319 = new BitSet(new long[]{0x0000000000001000L});
-        public static final BitSet FOLLOW_12_in_ruleSubSystem4331 = new BitSet(new long[]{0x0000040000000000L});
-        public static final BitSet FOLLOW_ruleProvidedRole_in_ruleSubSystem4352 = new BitSet(new long[]{0x000000000000C000L});
-        public static final BitSet FOLLOW_14_in_ruleSubSystem4365 = new BitSet(new long[]{0x0000040000000000L});
-        public static final BitSet FOLLOW_ruleProvidedRole_in_ruleSubSystem4386 = new BitSet(new long[]{0x000000000000C000L});
-        public static final BitSet FOLLOW_15_in_ruleSubSystem4400 = new BitSet(new long[]{0x0000000040001000L});
-        public static final BitSet FOLLOW_30_in_ruleSubSystem4415 = new BitSet(new long[]{0x0000000000001000L});
-        public static final BitSet FOLLOW_12_in_ruleSubSystem4427 = new BitSet(new long[]{0x0000080000000000L});
-        public static final BitSet FOLLOW_ruleRequiredRole_in_ruleSubSystem4448 = new BitSet(new long[]{0x000000000000C000L});
-        public static final BitSet FOLLOW_14_in_ruleSubSystem4461 = new BitSet(new long[]{0x0000080000000000L});
-        public static final BitSet FOLLOW_ruleRequiredRole_in_ruleSubSystem4482 = new BitSet(new long[]{0x000000000000C000L});
-        public static final BitSet FOLLOW_15_in_ruleSubSystem4496 = new BitSet(new long[]{0x0000000000001000L});
-        public static final BitSet FOLLOW_12_in_ruleSubSystem4510 = new BitSet(new long[]{0x0000400010008000L});
-        public static final BitSet FOLLOW_28_in_ruleSubSystem4523 = new BitSet(new long[]{0x0000000002000000L});
-        public static final BitSet FOLLOW_25_in_ruleSubSystem4535 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleSubSystem4558 = new BitSet(new long[]{0x0000000004004000L});
-        public static final BitSet FOLLOW_14_in_ruleSubSystem4571 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleSubSystem4594 = new BitSet(new long[]{0x0000000004004000L});
-        public static final BitSet FOLLOW_26_in_ruleSubSystem4608 = new BitSet(new long[]{0x0000400000008000L});
-        public static final BitSet FOLLOW_46_in_ruleSubSystem4623 = new BitSet(new long[]{0x0001000000000000L});
-        public static final BitSet FOLLOW_ruleComposedStructureAssembly_in_ruleSubSystem4644 = new BitSet(new long[]{0x0000000000008000L});
-        public static final BitSet FOLLOW_15_in_ruleSubSystem4658 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleComposedStructureAssembly_in_entryRuleComposedStructureAssembly4694 = new BitSet(new long[]{0x0000000000000000L});
-        public static final BitSet FOLLOW_EOF_in_entryRuleComposedStructureAssembly4704 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_48_in_ruleComposedStructureAssembly4750 = new BitSet(new long[]{0x0000000000001000L});
-        public static final BitSet FOLLOW_12_in_ruleComposedStructureAssembly4762 = new BitSet(new long[]{0x001E000000008000L});
-        public static final BitSet FOLLOW_49_in_ruleComposedStructureAssembly4775 = new BitSet(new long[]{0x0000000000001000L});
-        public static final BitSet FOLLOW_12_in_ruleComposedStructureAssembly4787 = new BitSet(new long[]{0x0020000000000000L});
-        public static final BitSet FOLLOW_ruleAssemblyContext_in_ruleComposedStructureAssembly4808 = new BitSet(new long[]{0x000000000000C000L});
-        public static final BitSet FOLLOW_14_in_ruleComposedStructureAssembly4821 = new BitSet(new long[]{0x0020000000000000L});
-        public static final BitSet FOLLOW_ruleAssemblyContext_in_ruleComposedStructureAssembly4842 = new BitSet(new long[]{0x000000000000C000L});
-        public static final BitSet FOLLOW_15_in_ruleComposedStructureAssembly4856 = new BitSet(new long[]{0x001C000000008000L});
-        public static final BitSet FOLLOW_50_in_ruleComposedStructureAssembly4871 = new BitSet(new long[]{0x0000000000001000L});
-        public static final BitSet FOLLOW_12_in_ruleComposedStructureAssembly4883 = new BitSet(new long[]{0x0080000000000000L});
-        public static final BitSet FOLLOW_ruleAssemblyConnector_in_ruleComposedStructureAssembly4904 = new BitSet(new long[]{0x000000000000C000L});
-        public static final BitSet FOLLOW_14_in_ruleComposedStructureAssembly4917 = new BitSet(new long[]{0x0080000000000000L});
-        public static final BitSet FOLLOW_ruleAssemblyConnector_in_ruleComposedStructureAssembly4938 = new BitSet(new long[]{0x000000000000C000L});
-        public static final BitSet FOLLOW_15_in_ruleComposedStructureAssembly4952 = new BitSet(new long[]{0x0018000000008000L});
-        public static final BitSet FOLLOW_51_in_ruleComposedStructureAssembly4967 = new BitSet(new long[]{0x0000000000001000L});
-        public static final BitSet FOLLOW_12_in_ruleComposedStructureAssembly4979 = new BitSet(new long[]{0x1000000000000000L});
-        public static final BitSet FOLLOW_ruleProvidedDelegationConnector_in_ruleComposedStructureAssembly5000 = new BitSet(new long[]{0x000000000000C000L});
-        public static final BitSet FOLLOW_14_in_ruleComposedStructureAssembly5013 = new BitSet(new long[]{0x1000000000000000L});
-        public static final BitSet FOLLOW_ruleProvidedDelegationConnector_in_ruleComposedStructureAssembly5034 = new BitSet(new long[]{0x000000000000C000L});
-        public static final BitSet FOLLOW_15_in_ruleComposedStructureAssembly5048 = new BitSet(new long[]{0x0010000000008000L});
-        public static final BitSet FOLLOW_52_in_ruleComposedStructureAssembly5063 = new BitSet(new long[]{0x0000000000001000L});
-        public static final BitSet FOLLOW_12_in_ruleComposedStructureAssembly5075 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000001L});
-        public static final BitSet FOLLOW_ruleRequiredDelegationConnector_in_ruleComposedStructureAssembly5096 = new BitSet(new long[]{0x000000000000C000L});
-        public static final BitSet FOLLOW_14_in_ruleComposedStructureAssembly5109 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000001L});
-        public static final BitSet FOLLOW_ruleRequiredDelegationConnector_in_ruleComposedStructureAssembly5130 = new BitSet(new long[]{0x000000000000C000L});
-        public static final BitSet FOLLOW_15_in_ruleComposedStructureAssembly5144 = new BitSet(new long[]{0x0000000000008000L});
-        public static final BitSet FOLLOW_15_in_ruleComposedStructureAssembly5158 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleAssemblyContext_in_entryRuleAssemblyContext5194 = new BitSet(new long[]{0x0000000000000000L});
-        public static final BitSet FOLLOW_EOF_in_entryRuleAssemblyContext5204 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_53_in_ruleAssemblyContext5241 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleAssemblyContext5262 = new BitSet(new long[]{0x0000000000001000L});
-        public static final BitSet FOLLOW_12_in_ruleAssemblyContext5274 = new BitSet(new long[]{0x0040000000000000L});
-        public static final BitSet FOLLOW_54_in_ruleAssemblyContext5286 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleAssemblyContext5309 = new BitSet(new long[]{0x0000000000008000L});
-        public static final BitSet FOLLOW_15_in_ruleAssemblyContext5321 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleAssemblyConnector_in_entryRuleAssemblyConnector5357 = new BitSet(new long[]{0x0000000000000000L});
-        public static final BitSet FOLLOW_EOF_in_entryRuleAssemblyConnector5367 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_55_in_ruleAssemblyConnector5404 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleAssemblyConnector5425 = new BitSet(new long[]{0x0000000000001000L});
-        public static final BitSet FOLLOW_12_in_ruleAssemblyConnector5437 = new BitSet(new long[]{0x0100000000000000L});
-        public static final BitSet FOLLOW_56_in_ruleAssemblyConnector5449 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleAssemblyConnector5472 = new BitSet(new long[]{0x0200000000000000L});
-        public static final BitSet FOLLOW_57_in_ruleAssemblyConnector5484 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleAssemblyConnector5507 = new BitSet(new long[]{0x0400000000000000L});
-        public static final BitSet FOLLOW_58_in_ruleAssemblyConnector5519 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleAssemblyConnector5542 = new BitSet(new long[]{0x0800000000000000L});
-        public static final BitSet FOLLOW_59_in_ruleAssemblyConnector5554 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleAssemblyConnector5577 = new BitSet(new long[]{0x0000000000008000L});
-        public static final BitSet FOLLOW_15_in_ruleAssemblyConnector5589 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleProvidedDelegationConnector_in_entryRuleProvidedDelegationConnector5625 = new BitSet(new long[]{0x0000000000000000L});
-        public static final BitSet FOLLOW_EOF_in_entryRuleProvidedDelegationConnector5635 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_60_in_ruleProvidedDelegationConnector5672 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleProvidedDelegationConnector5693 = new BitSet(new long[]{0x0000000000001000L});
-        public static final BitSet FOLLOW_12_in_ruleProvidedDelegationConnector5705 = new BitSet(new long[]{0x2000000000000000L});
-        public static final BitSet FOLLOW_61_in_ruleProvidedDelegationConnector5717 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleProvidedDelegationConnector5740 = new BitSet(new long[]{0x4000000000000000L});
-        public static final BitSet FOLLOW_62_in_ruleProvidedDelegationConnector5752 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleProvidedDelegationConnector5775 = new BitSet(new long[]{0x8000000000000000L});
-        public static final BitSet FOLLOW_63_in_ruleProvidedDelegationConnector5787 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleProvidedDelegationConnector5810 = new BitSet(new long[]{0x0000000000008000L});
-        public static final BitSet FOLLOW_15_in_ruleProvidedDelegationConnector5822 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleRequiredDelegationConnector_in_entryRuleRequiredDelegationConnector5858 = new BitSet(new long[]{0x0000000000000000L});
-        public static final BitSet FOLLOW_EOF_in_entryRuleRequiredDelegationConnector5868 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_64_in_ruleRequiredDelegationConnector5905 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleRequiredDelegationConnector5926 = new BitSet(new long[]{0x0000000000001000L});
-        public static final BitSet FOLLOW_12_in_ruleRequiredDelegationConnector5938 = new BitSet(new long[]{0x2000000000000000L});
-        public static final BitSet FOLLOW_61_in_ruleRequiredDelegationConnector5950 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleRequiredDelegationConnector5973 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000002L});
-        public static final BitSet FOLLOW_65_in_ruleRequiredDelegationConnector5985 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleRequiredDelegationConnector6008 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000004L});
-        public static final BitSet FOLLOW_66_in_ruleRequiredDelegationConnector6020 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleRequiredDelegationConnector6043 = new BitSet(new long[]{0x0000000000008000L});
-        public static final BitSet FOLLOW_15_in_ruleRequiredDelegationConnector6055 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_67_in_rulePrimitiveTypeEnum6105 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_68_in_rulePrimitiveTypeEnum6122 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_69_in_rulePrimitiveTypeEnum6139 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_70_in_rulePrimitiveTypeEnum6156 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_71_in_rulePrimitiveTypeEnum6173 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_72_in_rulePrimitiveTypeEnum6190 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_73_in_rulePrimitiveTypeEnum6207 = new BitSet(new long[]{0x0000000000000002L});
-    }
-
-
-}
\ No newline at end of file
diff --git a/org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/services/MyDslTestGrammarAccess.java b/org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/services/MyDslTestGrammarAccess.java
deleted file mode 100644
index 32cdd1e0..00000000
--- a/org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/services/MyDslTestGrammarAccess.java
+++ /dev/null
@@ -1,2762 +0,0 @@
-/*
-* generated by Xtext
-*/
-
-package org.xtext.example.mydsl.services;
-
-import com.google.inject.Singleton;
-import com.google.inject.Inject;
-
-import java.util.List;
-
-import org.eclipse.xtext.*;
-import org.eclipse.xtext.service.GrammarProvider;
-import org.eclipse.xtext.service.AbstractElementFinder.*;
-
-import org.eclipse.xtext.common.services.TerminalsGrammarAccess;
-
-@Singleton
-public class MyDslTestGrammarAccess extends AbstractGrammarElementFinder {
-	
-	
-	public class RepositoryElements extends AbstractParserRuleElementFinder {
-		private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "Repository");
-		private final Group cGroup = (Group)rule.eContents().get(1);
-		private final Keyword cRepositoryKeyword_0 = (Keyword)cGroup.eContents().get(0);
-		private final Assignment cNameAssignment_1 = (Assignment)cGroup.eContents().get(1);
-		private final RuleCall cNameQualifiedNameParserRuleCall_1_0 = (RuleCall)cNameAssignment_1.eContents().get(0);
-		private final Keyword cLeftCurlyBracketKeyword_2 = (Keyword)cGroup.eContents().get(2);
-		private final Group cGroup_3 = (Group)cGroup.eContents().get(3);
-		private final Keyword cImportsKeyword_3_0 = (Keyword)cGroup_3.eContents().get(0);
-		private final Keyword cLeftCurlyBracketKeyword_3_1 = (Keyword)cGroup_3.eContents().get(1);
-		private final Assignment cImportsAssignment_3_2 = (Assignment)cGroup_3.eContents().get(2);
-		private final RuleCall cImportsImportParserRuleCall_3_2_0 = (RuleCall)cImportsAssignment_3_2.eContents().get(0);
-		private final Group cGroup_3_3 = (Group)cGroup_3.eContents().get(3);
-		private final Keyword cCommaKeyword_3_3_0 = (Keyword)cGroup_3_3.eContents().get(0);
-		private final Assignment cImportsAssignment_3_3_1 = (Assignment)cGroup_3_3.eContents().get(1);
-		private final RuleCall cImportsImportParserRuleCall_3_3_1_0 = (RuleCall)cImportsAssignment_3_3_1.eContents().get(0);
-		private final Keyword cRightCurlyBracketKeyword_3_4 = (Keyword)cGroup_3.eContents().get(4);
-		private final Group cGroup_4 = (Group)cGroup.eContents().get(4);
-		private final Keyword cDatatypesKeyword_4_0 = (Keyword)cGroup_4.eContents().get(0);
-		private final Keyword cLeftCurlyBracketKeyword_4_1 = (Keyword)cGroup_4.eContents().get(1);
-		private final Assignment cDatatypesAssignment_4_2 = (Assignment)cGroup_4.eContents().get(2);
-		private final RuleCall cDatatypesDataTypeParserRuleCall_4_2_0 = (RuleCall)cDatatypesAssignment_4_2.eContents().get(0);
-		private final Group cGroup_4_3 = (Group)cGroup_4.eContents().get(3);
-		private final Keyword cCommaKeyword_4_3_0 = (Keyword)cGroup_4_3.eContents().get(0);
-		private final Assignment cDatatypesAssignment_4_3_1 = (Assignment)cGroup_4_3.eContents().get(1);
-		private final RuleCall cDatatypesDataTypeParserRuleCall_4_3_1_0 = (RuleCall)cDatatypesAssignment_4_3_1.eContents().get(0);
-		private final Keyword cRightCurlyBracketKeyword_4_4 = (Keyword)cGroup_4.eContents().get(4);
-		private final Group cGroup_5 = (Group)cGroup.eContents().get(5);
-		private final Keyword cComponentsKeyword_5_0 = (Keyword)cGroup_5.eContents().get(0);
-		private final Keyword cLeftCurlyBracketKeyword_5_1 = (Keyword)cGroup_5.eContents().get(1);
-		private final Assignment cComponentsAssignment_5_2 = (Assignment)cGroup_5.eContents().get(2);
-		private final RuleCall cComponentsRepositoryComponentParserRuleCall_5_2_0 = (RuleCall)cComponentsAssignment_5_2.eContents().get(0);
-		private final Group cGroup_5_3 = (Group)cGroup_5.eContents().get(3);
-		private final Keyword cSemicolonKeyword_5_3_0 = (Keyword)cGroup_5_3.eContents().get(0);
-		private final Assignment cComponentsAssignment_5_3_1 = (Assignment)cGroup_5_3.eContents().get(1);
-		private final RuleCall cComponentsRepositoryComponentParserRuleCall_5_3_1_0 = (RuleCall)cComponentsAssignment_5_3_1.eContents().get(0);
-		private final Keyword cRightCurlyBracketKeyword_5_4 = (Keyword)cGroup_5.eContents().get(4);
-		private final Group cGroup_6 = (Group)cGroup.eContents().get(6);
-		private final Keyword cInterfacesKeyword_6_0 = (Keyword)cGroup_6.eContents().get(0);
-		private final Keyword cLeftCurlyBracketKeyword_6_1 = (Keyword)cGroup_6.eContents().get(1);
-		private final Assignment cInterfacesAssignment_6_2 = (Assignment)cGroup_6.eContents().get(2);
-		private final RuleCall cInterfacesInterfaceParserRuleCall_6_2_0 = (RuleCall)cInterfacesAssignment_6_2.eContents().get(0);
-		private final Group cGroup_6_3 = (Group)cGroup_6.eContents().get(3);
-		private final Keyword cCommaKeyword_6_3_0 = (Keyword)cGroup_6_3.eContents().get(0);
-		private final Assignment cInterfacesAssignment_6_3_1 = (Assignment)cGroup_6_3.eContents().get(1);
-		private final RuleCall cInterfacesInterfaceParserRuleCall_6_3_1_0 = (RuleCall)cInterfacesAssignment_6_3_1.eContents().get(0);
-		private final Keyword cRightCurlyBracketKeyword_6_4 = (Keyword)cGroup_6.eContents().get(4);
-		private final Keyword cRightCurlyBracketKeyword_7 = (Keyword)cGroup.eContents().get(7);
-		
-		/// *Repository returns repository::Repository:
-		//	'Repository'
-		//	name=QualifiedName
-		//	'{' 
-		//(
-		//		( datatypes+=DataType ) | 
-		//		(interfaces+=Interface) |
-		//		(components+=RepositoryComponent )|
-		//		(imports+=Import)
-		//		
-		//)*
-		//    '}';
-		//    
-		//  * /
-		//
-		//Repository returns repository::Repository:
-		//
-		//	"Repository" name=QualifiedName "{" ("imports" "{" imports+=Import ("," imports+=Import)* "}")? ("datatypes" "{"
-		//
-		//	datatypes+=DataType ("," datatypes+=DataType)* "}")? ("components" "{" components+=RepositoryComponent (";"
-		//
-		//	components+=RepositoryComponent)* "}")? ("interfaces" "{" interfaces+=Interface ("," interfaces+=Interface)* "}")?
-		//
-		//	"}";
-		public ParserRule getRule() { return rule; }
-
-		//"Repository" name=QualifiedName "{" ("imports" "{" imports+=Import ("," imports+=Import)* "}")? ("datatypes" "{"
-		//
-		//datatypes+=DataType ("," datatypes+=DataType)* "}")? ("components" "{" components+=RepositoryComponent (";"
-		//
-		//components+=RepositoryComponent)* "}")? ("interfaces" "{" interfaces+=Interface ("," interfaces+=Interface)* "}")? "}"
-		public Group getGroup() { return cGroup; }
-
-		//"Repository"
-		public Keyword getRepositoryKeyword_0() { return cRepositoryKeyword_0; }
-
-		//name=QualifiedName
-		public Assignment getNameAssignment_1() { return cNameAssignment_1; }
-
-		//QualifiedName
-		public RuleCall getNameQualifiedNameParserRuleCall_1_0() { return cNameQualifiedNameParserRuleCall_1_0; }
-
-		//"{"
-		public Keyword getLeftCurlyBracketKeyword_2() { return cLeftCurlyBracketKeyword_2; }
-
-		//("imports" "{" imports+=Import ("," imports+=Import)* "}")?
-		public Group getGroup_3() { return cGroup_3; }
-
-		//"imports"
-		public Keyword getImportsKeyword_3_0() { return cImportsKeyword_3_0; }
-
-		//"{"
-		public Keyword getLeftCurlyBracketKeyword_3_1() { return cLeftCurlyBracketKeyword_3_1; }
-
-		//imports+=Import
-		public Assignment getImportsAssignment_3_2() { return cImportsAssignment_3_2; }
-
-		//Import
-		public RuleCall getImportsImportParserRuleCall_3_2_0() { return cImportsImportParserRuleCall_3_2_0; }
-
-		//("," imports+=Import)*
-		public Group getGroup_3_3() { return cGroup_3_3; }
-
-		//","
-		public Keyword getCommaKeyword_3_3_0() { return cCommaKeyword_3_3_0; }
-
-		//imports+=Import
-		public Assignment getImportsAssignment_3_3_1() { return cImportsAssignment_3_3_1; }
-
-		//Import
-		public RuleCall getImportsImportParserRuleCall_3_3_1_0() { return cImportsImportParserRuleCall_3_3_1_0; }
-
-		//"}"
-		public Keyword getRightCurlyBracketKeyword_3_4() { return cRightCurlyBracketKeyword_3_4; }
-
-		//("datatypes" "{" datatypes+=DataType ("," datatypes+=DataType)* "}")?
-		public Group getGroup_4() { return cGroup_4; }
-
-		//"datatypes"
-		public Keyword getDatatypesKeyword_4_0() { return cDatatypesKeyword_4_0; }
-
-		//"{"
-		public Keyword getLeftCurlyBracketKeyword_4_1() { return cLeftCurlyBracketKeyword_4_1; }
-
-		//datatypes+=DataType
-		public Assignment getDatatypesAssignment_4_2() { return cDatatypesAssignment_4_2; }
-
-		//DataType
-		public RuleCall getDatatypesDataTypeParserRuleCall_4_2_0() { return cDatatypesDataTypeParserRuleCall_4_2_0; }
-
-		//("," datatypes+=DataType)*
-		public Group getGroup_4_3() { return cGroup_4_3; }
-
-		//","
-		public Keyword getCommaKeyword_4_3_0() { return cCommaKeyword_4_3_0; }
-
-		//datatypes+=DataType
-		public Assignment getDatatypesAssignment_4_3_1() { return cDatatypesAssignment_4_3_1; }
-
-		//DataType
-		public RuleCall getDatatypesDataTypeParserRuleCall_4_3_1_0() { return cDatatypesDataTypeParserRuleCall_4_3_1_0; }
-
-		//"}"
-		public Keyword getRightCurlyBracketKeyword_4_4() { return cRightCurlyBracketKeyword_4_4; }
-
-		//("components" "{" components+=RepositoryComponent (";" components+=RepositoryComponent)* "}")?
-		public Group getGroup_5() { return cGroup_5; }
-
-		//"components"
-		public Keyword getComponentsKeyword_5_0() { return cComponentsKeyword_5_0; }
-
-		//"{"
-		public Keyword getLeftCurlyBracketKeyword_5_1() { return cLeftCurlyBracketKeyword_5_1; }
-
-		//components+=RepositoryComponent
-		public Assignment getComponentsAssignment_5_2() { return cComponentsAssignment_5_2; }
-
-		//RepositoryComponent
-		public RuleCall getComponentsRepositoryComponentParserRuleCall_5_2_0() { return cComponentsRepositoryComponentParserRuleCall_5_2_0; }
-
-		//(";" components+=RepositoryComponent)*
-		public Group getGroup_5_3() { return cGroup_5_3; }
-
-		//";"
-		public Keyword getSemicolonKeyword_5_3_0() { return cSemicolonKeyword_5_3_0; }
-
-		//components+=RepositoryComponent
-		public Assignment getComponentsAssignment_5_3_1() { return cComponentsAssignment_5_3_1; }
-
-		//RepositoryComponent
-		public RuleCall getComponentsRepositoryComponentParserRuleCall_5_3_1_0() { return cComponentsRepositoryComponentParserRuleCall_5_3_1_0; }
-
-		//"}"
-		public Keyword getRightCurlyBracketKeyword_5_4() { return cRightCurlyBracketKeyword_5_4; }
-
-		//("interfaces" "{" interfaces+=Interface ("," interfaces+=Interface)* "}")?
-		public Group getGroup_6() { return cGroup_6; }
-
-		//"interfaces"
-		public Keyword getInterfacesKeyword_6_0() { return cInterfacesKeyword_6_0; }
-
-		//"{"
-		public Keyword getLeftCurlyBracketKeyword_6_1() { return cLeftCurlyBracketKeyword_6_1; }
-
-		//interfaces+=Interface
-		public Assignment getInterfacesAssignment_6_2() { return cInterfacesAssignment_6_2; }
-
-		//Interface
-		public RuleCall getInterfacesInterfaceParserRuleCall_6_2_0() { return cInterfacesInterfaceParserRuleCall_6_2_0; }
-
-		//("," interfaces+=Interface)*
-		public Group getGroup_6_3() { return cGroup_6_3; }
-
-		//","
-		public Keyword getCommaKeyword_6_3_0() { return cCommaKeyword_6_3_0; }
-
-		//interfaces+=Interface
-		public Assignment getInterfacesAssignment_6_3_1() { return cInterfacesAssignment_6_3_1; }
-
-		//Interface
-		public RuleCall getInterfacesInterfaceParserRuleCall_6_3_1_0() { return cInterfacesInterfaceParserRuleCall_6_3_1_0; }
-
-		//"}"
-		public Keyword getRightCurlyBracketKeyword_6_4() { return cRightCurlyBracketKeyword_6_4; }
-
-		//"}"
-		public Keyword getRightCurlyBracketKeyword_7() { return cRightCurlyBracketKeyword_7; }
-	}
-
-	public class ImportElements extends AbstractParserRuleElementFinder {
-		private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "Import");
-		private final Group cGroup = (Group)rule.eContents().get(1);
-		private final Keyword cImportKeyword_0 = (Keyword)cGroup.eContents().get(0);
-		private final Assignment cImportedNamespaceAssignment_1 = (Assignment)cGroup.eContents().get(1);
-		private final RuleCall cImportedNamespaceQualifiedNameWithWildCardParserRuleCall_1_0 = (RuleCall)cImportedNamespaceAssignment_1.eContents().get(0);
-		
-		//Import returns repository::Import:
-		//
-		//	"import" importedNamespace=QualifiedNameWithWildCard;
-		public ParserRule getRule() { return rule; }
-
-		//"import" importedNamespace=QualifiedNameWithWildCard
-		public Group getGroup() { return cGroup; }
-
-		//"import"
-		public Keyword getImportKeyword_0() { return cImportKeyword_0; }
-
-		//importedNamespace=QualifiedNameWithWildCard
-		public Assignment getImportedNamespaceAssignment_1() { return cImportedNamespaceAssignment_1; }
-
-		//QualifiedNameWithWildCard
-		public RuleCall getImportedNamespaceQualifiedNameWithWildCardParserRuleCall_1_0() { return cImportedNamespaceQualifiedNameWithWildCardParserRuleCall_1_0; }
-	}
-
-	public class QualifiedNameWithWildCardElements extends AbstractParserRuleElementFinder {
-		private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "QualifiedNameWithWildCard");
-		private final Group cGroup = (Group)rule.eContents().get(1);
-		private final RuleCall cQualifiedNameParserRuleCall_0 = (RuleCall)cGroup.eContents().get(0);
-		private final Group cGroup_1 = (Group)cGroup.eContents().get(1);
-		private final Keyword cFullStopKeyword_1_0 = (Keyword)cGroup_1.eContents().get(0);
-		private final Keyword cAsteriskKeyword_1_1 = (Keyword)cGroup_1.eContents().get(1);
-		
-		//QualifiedNameWithWildCard:
-		//
-		//	QualifiedName ("." "*")?;
-		public ParserRule getRule() { return rule; }
-
-		//QualifiedName ("." "*")?
-		public Group getGroup() { return cGroup; }
-
-		//QualifiedName
-		public RuleCall getQualifiedNameParserRuleCall_0() { return cQualifiedNameParserRuleCall_0; }
-
-		//("." "*")?
-		public Group getGroup_1() { return cGroup_1; }
-
-		//"."
-		public Keyword getFullStopKeyword_1_0() { return cFullStopKeyword_1_0; }
-
-		//"*"
-		public Keyword getAsteriskKeyword_1_1() { return cAsteriskKeyword_1_1; }
-	}
-
-	public class QualifiedNameElements extends AbstractParserRuleElementFinder {
-		private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "QualifiedName");
-		private final Group cGroup = (Group)rule.eContents().get(1);
-		private final RuleCall cIDTerminalRuleCall_0 = (RuleCall)cGroup.eContents().get(0);
-		private final Group cGroup_1 = (Group)cGroup.eContents().get(1);
-		private final Keyword cFullStopKeyword_1_0 = (Keyword)cGroup_1.eContents().get(0);
-		private final RuleCall cIDTerminalRuleCall_1_1 = (RuleCall)cGroup_1.eContents().get(1);
-		
-		//QualifiedName:
-		//
-		//	ID ("." ID)*;
-		public ParserRule getRule() { return rule; }
-
-		//ID ("." ID)*
-		public Group getGroup() { return cGroup; }
-
-		//ID
-		public RuleCall getIDTerminalRuleCall_0() { return cIDTerminalRuleCall_0; }
-
-		//("." ID)*
-		public Group getGroup_1() { return cGroup_1; }
-
-		//"."
-		public Keyword getFullStopKeyword_1_0() { return cFullStopKeyword_1_0; }
-
-		//ID
-		public RuleCall getIDTerminalRuleCall_1_1() { return cIDTerminalRuleCall_1_1; }
-	}
-
-	public class DataTypeElements extends AbstractParserRuleElementFinder {
-		private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "DataType");
-		private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
-		private final RuleCall cCollectionDataTypeParserRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0);
-		private final RuleCall cCompositeDataTypeParserRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1);
-		private final RuleCall cPrimitiveDataTypeParserRuleCall_2 = (RuleCall)cAlternatives.eContents().get(2);
-		
-		//DataType returns repository::DataType:
-		//
-		//	CollectionDataType | CompositeDataType | PrimitiveDataType;
-		public ParserRule getRule() { return rule; }
-
-		//CollectionDataType | CompositeDataType | PrimitiveDataType
-		public Alternatives getAlternatives() { return cAlternatives; }
-
-		//CollectionDataType
-		public RuleCall getCollectionDataTypeParserRuleCall_0() { return cCollectionDataTypeParserRuleCall_0; }
-
-		//CompositeDataType
-		public RuleCall getCompositeDataTypeParserRuleCall_1() { return cCompositeDataTypeParserRuleCall_1; }
-
-		//PrimitiveDataType
-		public RuleCall getPrimitiveDataTypeParserRuleCall_2() { return cPrimitiveDataTypeParserRuleCall_2; }
-	}
-
-	public class RepositoryComponentElements extends AbstractParserRuleElementFinder {
-		private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "RepositoryComponent");
-		private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
-		private final RuleCall cRepositoryComponent_ImplParserRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0);
-		private final RuleCall cBasicComponentParserRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1);
-		private final RuleCall cCompositeComponentParserRuleCall_2 = (RuleCall)cAlternatives.eContents().get(2);
-		private final RuleCall cSubSystemParserRuleCall_3 = (RuleCall)cAlternatives.eContents().get(3);
-		
-		//RepositoryComponent returns repository::RepositoryComponent:
-		//
-		//	RepositoryComponent_Impl | BasicComponent | CompositeComponent | SubSystem;
-		public ParserRule getRule() { return rule; }
-
-		//RepositoryComponent_Impl | BasicComponent | CompositeComponent | SubSystem
-		public Alternatives getAlternatives() { return cAlternatives; }
-
-		//RepositoryComponent_Impl
-		public RuleCall getRepositoryComponent_ImplParserRuleCall_0() { return cRepositoryComponent_ImplParserRuleCall_0; }
-
-		//BasicComponent
-		public RuleCall getBasicComponentParserRuleCall_1() { return cBasicComponentParserRuleCall_1; }
-
-		//CompositeComponent
-		public RuleCall getCompositeComponentParserRuleCall_2() { return cCompositeComponentParserRuleCall_2; }
-
-		//SubSystem
-		public RuleCall getSubSystemParserRuleCall_3() { return cSubSystemParserRuleCall_3; }
-	}
-
-	public class EStringElements extends AbstractParserRuleElementFinder {
-		private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "EString");
-		private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
-		private final RuleCall cSTRINGTerminalRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0);
-		private final RuleCall cIDTerminalRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1);
-		
-		//EString returns ecore::EString:
-		//
-		//	STRING | ID;
-		public ParserRule getRule() { return rule; }
-
-		//STRING | ID
-		public Alternatives getAlternatives() { return cAlternatives; }
-
-		//STRING
-		public RuleCall getSTRINGTerminalRuleCall_0() { return cSTRINGTerminalRuleCall_0; }
-
-		//ID
-		public RuleCall getIDTerminalRuleCall_1() { return cIDTerminalRuleCall_1; }
-	}
-
-	public class InterfaceElements extends AbstractParserRuleElementFinder {
-		private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "Interface");
-		private final Group cGroup = (Group)rule.eContents().get(1);
-		private final Keyword cInterfaceKeyword_0 = (Keyword)cGroup.eContents().get(0);
-		private final Assignment cNameAssignment_1 = (Assignment)cGroup.eContents().get(1);
-		private final RuleCall cNameEStringParserRuleCall_1_0 = (RuleCall)cNameAssignment_1.eContents().get(0);
-		private final Keyword cLeftCurlyBracketKeyword_2 = (Keyword)cGroup.eContents().get(2);
-		private final Group cGroup_3 = (Group)cGroup.eContents().get(3);
-		private final Keyword cParentInterfacesKeyword_3_0 = (Keyword)cGroup_3.eContents().get(0);
-		private final Keyword cLeftParenthesisKeyword_3_1 = (Keyword)cGroup_3.eContents().get(1);
-		private final Assignment cParentInterfacesAssignment_3_2 = (Assignment)cGroup_3.eContents().get(2);
-		private final CrossReference cParentInterfacesInterfaceCrossReference_3_2_0 = (CrossReference)cParentInterfacesAssignment_3_2.eContents().get(0);
-		private final RuleCall cParentInterfacesInterfaceEStringParserRuleCall_3_2_0_1 = (RuleCall)cParentInterfacesInterfaceCrossReference_3_2_0.eContents().get(1);
-		private final Group cGroup_3_3 = (Group)cGroup_3.eContents().get(3);
-		private final Keyword cCommaKeyword_3_3_0 = (Keyword)cGroup_3_3.eContents().get(0);
-		private final Assignment cParentInterfacesAssignment_3_3_1 = (Assignment)cGroup_3_3.eContents().get(1);
-		private final CrossReference cParentInterfacesInterfaceCrossReference_3_3_1_0 = (CrossReference)cParentInterfacesAssignment_3_3_1.eContents().get(0);
-		private final RuleCall cParentInterfacesInterfaceEStringParserRuleCall_3_3_1_0_1 = (RuleCall)cParentInterfacesInterfaceCrossReference_3_3_1_0.eContents().get(1);
-		private final Keyword cRightParenthesisKeyword_3_4 = (Keyword)cGroup_3.eContents().get(4);
-		private final Group cGroup_4 = (Group)cGroup.eContents().get(4);
-		private final Assignment cSignaturesAssignment_4_0 = (Assignment)cGroup_4.eContents().get(0);
-		private final RuleCall cSignaturesSignatureParserRuleCall_4_0_0 = (RuleCall)cSignaturesAssignment_4_0.eContents().get(0);
-		private final Group cGroup_4_1 = (Group)cGroup_4.eContents().get(1);
-		private final Keyword cCommaKeyword_4_1_0 = (Keyword)cGroup_4_1.eContents().get(0);
-		private final Assignment cSignaturesAssignment_4_1_1 = (Assignment)cGroup_4_1.eContents().get(1);
-		private final RuleCall cSignaturesSignatureParserRuleCall_4_1_1_0 = (RuleCall)cSignaturesAssignment_4_1_1.eContents().get(0);
-		private final Keyword cRightCurlyBracketKeyword_5 = (Keyword)cGroup.eContents().get(5);
-		
-		//Interface returns repository::Interface:
-		//
-		//	"Interface" name=EString "{" ("parentInterfaces" "(" parentInterfaces+=[repository::Interface|EString] (","
-		//
-		//	parentInterfaces+=[repository::Interface|EString])* ")")? (signatures+=Signature ("," signatures+=Signature)*)? "}";
-		public ParserRule getRule() { return rule; }
-
-		//"Interface" name=EString "{" ("parentInterfaces" "(" parentInterfaces+=[repository::Interface|EString] (","
-		//
-		//parentInterfaces+=[repository::Interface|EString])* ")")? (signatures+=Signature ("," signatures+=Signature)*)? "}"
-		public Group getGroup() { return cGroup; }
-
-		//"Interface"
-		public Keyword getInterfaceKeyword_0() { return cInterfaceKeyword_0; }
-
-		//name=EString
-		public Assignment getNameAssignment_1() { return cNameAssignment_1; }
-
-		//EString
-		public RuleCall getNameEStringParserRuleCall_1_0() { return cNameEStringParserRuleCall_1_0; }
-
-		//"{"
-		public Keyword getLeftCurlyBracketKeyword_2() { return cLeftCurlyBracketKeyword_2; }
-
-		//("parentInterfaces" "(" parentInterfaces+=[repository::Interface|EString] (","
-		//
-		//parentInterfaces+=[repository::Interface|EString])* ")")?
-		public Group getGroup_3() { return cGroup_3; }
-
-		//"parentInterfaces"
-		public Keyword getParentInterfacesKeyword_3_0() { return cParentInterfacesKeyword_3_0; }
-
-		//"("
-		public Keyword getLeftParenthesisKeyword_3_1() { return cLeftParenthesisKeyword_3_1; }
-
-		//parentInterfaces+=[repository::Interface|EString]
-		public Assignment getParentInterfacesAssignment_3_2() { return cParentInterfacesAssignment_3_2; }
-
-		//[repository::Interface|EString]
-		public CrossReference getParentInterfacesInterfaceCrossReference_3_2_0() { return cParentInterfacesInterfaceCrossReference_3_2_0; }
-
-		//EString
-		public RuleCall getParentInterfacesInterfaceEStringParserRuleCall_3_2_0_1() { return cParentInterfacesInterfaceEStringParserRuleCall_3_2_0_1; }
-
-		//("," parentInterfaces+=[repository::Interface|EString])*
-		public Group getGroup_3_3() { return cGroup_3_3; }
-
-		//","
-		public Keyword getCommaKeyword_3_3_0() { return cCommaKeyword_3_3_0; }
-
-		//parentInterfaces+=[repository::Interface|EString]
-		public Assignment getParentInterfacesAssignment_3_3_1() { return cParentInterfacesAssignment_3_3_1; }
-
-		//[repository::Interface|EString]
-		public CrossReference getParentInterfacesInterfaceCrossReference_3_3_1_0() { return cParentInterfacesInterfaceCrossReference_3_3_1_0; }
-
-		//EString
-		public RuleCall getParentInterfacesInterfaceEStringParserRuleCall_3_3_1_0_1() { return cParentInterfacesInterfaceEStringParserRuleCall_3_3_1_0_1; }
-
-		//")"
-		public Keyword getRightParenthesisKeyword_3_4() { return cRightParenthesisKeyword_3_4; }
-
-		//(signatures+=Signature ("," signatures+=Signature)*)?
-		public Group getGroup_4() { return cGroup_4; }
-
-		//signatures+=Signature
-		public Assignment getSignaturesAssignment_4_0() { return cSignaturesAssignment_4_0; }
-
-		//Signature
-		public RuleCall getSignaturesSignatureParserRuleCall_4_0_0() { return cSignaturesSignatureParserRuleCall_4_0_0; }
-
-		//("," signatures+=Signature)*
-		public Group getGroup_4_1() { return cGroup_4_1; }
-
-		//","
-		public Keyword getCommaKeyword_4_1_0() { return cCommaKeyword_4_1_0; }
-
-		//signatures+=Signature
-		public Assignment getSignaturesAssignment_4_1_1() { return cSignaturesAssignment_4_1_1; }
-
-		//Signature
-		public RuleCall getSignaturesSignatureParserRuleCall_4_1_1_0() { return cSignaturesSignatureParserRuleCall_4_1_1_0; }
-
-		//"}"
-		public Keyword getRightCurlyBracketKeyword_5() { return cRightCurlyBracketKeyword_5; }
-	}
-
-	public class RepositoryComponent_ImplElements extends AbstractParserRuleElementFinder {
-		private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "RepositoryComponent_Impl");
-		private final Group cGroup = (Group)rule.eContents().get(1);
-		private final Keyword cRepositoryComponentKeyword_0 = (Keyword)cGroup.eContents().get(0);
-		private final Assignment cNameAssignment_1 = (Assignment)cGroup.eContents().get(1);
-		private final RuleCall cNameEStringParserRuleCall_1_0 = (RuleCall)cNameAssignment_1.eContents().get(0);
-		private final Keyword cLeftCurlyBracketKeyword_2 = (Keyword)cGroup.eContents().get(2);
-		private final Group cGroup_3 = (Group)cGroup.eContents().get(3);
-		private final Keyword cRelationshipKeyword_3_0 = (Keyword)cGroup_3.eContents().get(0);
-		private final Keyword cLeftParenthesisKeyword_3_1 = (Keyword)cGroup_3.eContents().get(1);
-		private final Assignment cRelationshipAssignment_3_2 = (Assignment)cGroup_3.eContents().get(2);
-		private final CrossReference cRelationshipRelationshipCrossReference_3_2_0 = (CrossReference)cRelationshipAssignment_3_2.eContents().get(0);
-		private final RuleCall cRelationshipRelationshipEStringParserRuleCall_3_2_0_1 = (RuleCall)cRelationshipRelationshipCrossReference_3_2_0.eContents().get(1);
-		private final Group cGroup_3_3 = (Group)cGroup_3.eContents().get(3);
-		private final Keyword cCommaKeyword_3_3_0 = (Keyword)cGroup_3_3.eContents().get(0);
-		private final Assignment cRelationshipAssignment_3_3_1 = (Assignment)cGroup_3_3.eContents().get(1);
-		private final CrossReference cRelationshipRelationshipCrossReference_3_3_1_0 = (CrossReference)cRelationshipAssignment_3_3_1.eContents().get(0);
-		private final RuleCall cRelationshipRelationshipEStringParserRuleCall_3_3_1_0_1 = (RuleCall)cRelationshipRelationshipCrossReference_3_3_1_0.eContents().get(1);
-		private final Keyword cRightParenthesisKeyword_3_4 = (Keyword)cGroup_3.eContents().get(4);
-		private final Group cGroup_4 = (Group)cGroup.eContents().get(4);
-		private final Keyword cProvidedRolesKeyword_4_0 = (Keyword)cGroup_4.eContents().get(0);
-		private final Keyword cLeftCurlyBracketKeyword_4_1 = (Keyword)cGroup_4.eContents().get(1);
-		private final Assignment cProvidedRolesAssignment_4_2 = (Assignment)cGroup_4.eContents().get(2);
-		private final RuleCall cProvidedRolesProvidedRoleParserRuleCall_4_2_0 = (RuleCall)cProvidedRolesAssignment_4_2.eContents().get(0);
-		private final Group cGroup_4_3 = (Group)cGroup_4.eContents().get(3);
-		private final Keyword cCommaKeyword_4_3_0 = (Keyword)cGroup_4_3.eContents().get(0);
-		private final Assignment cProvidedRolesAssignment_4_3_1 = (Assignment)cGroup_4_3.eContents().get(1);
-		private final RuleCall cProvidedRolesProvidedRoleParserRuleCall_4_3_1_0 = (RuleCall)cProvidedRolesAssignment_4_3_1.eContents().get(0);
-		private final Keyword cRightCurlyBracketKeyword_4_4 = (Keyword)cGroup_4.eContents().get(4);
-		private final Group cGroup_5 = (Group)cGroup.eContents().get(5);
-		private final Keyword cRequiredRolesKeyword_5_0 = (Keyword)cGroup_5.eContents().get(0);
-		private final Keyword cLeftCurlyBracketKeyword_5_1 = (Keyword)cGroup_5.eContents().get(1);
-		private final Assignment cRequiredRolesAssignment_5_2 = (Assignment)cGroup_5.eContents().get(2);
-		private final RuleCall cRequiredRolesRequiredRoleParserRuleCall_5_2_0 = (RuleCall)cRequiredRolesAssignment_5_2.eContents().get(0);
-		private final Group cGroup_5_3 = (Group)cGroup_5.eContents().get(3);
-		private final Keyword cCommaKeyword_5_3_0 = (Keyword)cGroup_5_3.eContents().get(0);
-		private final Assignment cRequiredRolesAssignment_5_3_1 = (Assignment)cGroup_5_3.eContents().get(1);
-		private final RuleCall cRequiredRolesRequiredRoleParserRuleCall_5_3_1_0 = (RuleCall)cRequiredRolesAssignment_5_3_1.eContents().get(0);
-		private final Keyword cRightCurlyBracketKeyword_5_4 = (Keyword)cGroup_5.eContents().get(4);
-		private final Keyword cRightCurlyBracketKeyword_6 = (Keyword)cGroup.eContents().get(6);
-		
-		//RepositoryComponent_Impl returns repository::RepositoryComponent:
-		//
-		//	"RepositoryComponent" name=EString "{" ("relationship" "(" relationship+=[Relationship|EString] (","
-		//
-		//	relationship+=[Relationship|EString])* ")")? ("providedRoles" "{" providedRoles+=ProvidedRole (","
-		//
-		//	providedRoles+=ProvidedRole)* "}")? ("requiredRoles" "{" requiredRoles+=RequiredRole (","
-		//
-		//	requiredRoles+=RequiredRole)* "}")? "}";
-		public ParserRule getRule() { return rule; }
-
-		//"RepositoryComponent" name=EString "{" ("relationship" "(" relationship+=[Relationship|EString] (","
-		//
-		//relationship+=[Relationship|EString])* ")")? ("providedRoles" "{" providedRoles+=ProvidedRole (","
-		//
-		//providedRoles+=ProvidedRole)* "}")? ("requiredRoles" "{" requiredRoles+=RequiredRole (","
-		//
-		//requiredRoles+=RequiredRole)* "}")? "}"
-		public Group getGroup() { return cGroup; }
-
-		//"RepositoryComponent"
-		public Keyword getRepositoryComponentKeyword_0() { return cRepositoryComponentKeyword_0; }
-
-		//name=EString
-		public Assignment getNameAssignment_1() { return cNameAssignment_1; }
-
-		//EString
-		public RuleCall getNameEStringParserRuleCall_1_0() { return cNameEStringParserRuleCall_1_0; }
-
-		//"{"
-		public Keyword getLeftCurlyBracketKeyword_2() { return cLeftCurlyBracketKeyword_2; }
-
-		//("relationship" "(" relationship+=[Relationship|EString] ("," relationship+=[Relationship|EString])* ")")?
-		public Group getGroup_3() { return cGroup_3; }
-
-		//"relationship"
-		public Keyword getRelationshipKeyword_3_0() { return cRelationshipKeyword_3_0; }
-
-		//"("
-		public Keyword getLeftParenthesisKeyword_3_1() { return cLeftParenthesisKeyword_3_1; }
-
-		//relationship+=[Relationship|EString]
-		public Assignment getRelationshipAssignment_3_2() { return cRelationshipAssignment_3_2; }
-
-		//[Relationship|EString]
-		public CrossReference getRelationshipRelationshipCrossReference_3_2_0() { return cRelationshipRelationshipCrossReference_3_2_0; }
-
-		//EString
-		public RuleCall getRelationshipRelationshipEStringParserRuleCall_3_2_0_1() { return cRelationshipRelationshipEStringParserRuleCall_3_2_0_1; }
-
-		//("," relationship+=[Relationship|EString])*
-		public Group getGroup_3_3() { return cGroup_3_3; }
-
-		//","
-		public Keyword getCommaKeyword_3_3_0() { return cCommaKeyword_3_3_0; }
-
-		//relationship+=[Relationship|EString]
-		public Assignment getRelationshipAssignment_3_3_1() { return cRelationshipAssignment_3_3_1; }
-
-		//[Relationship|EString]
-		public CrossReference getRelationshipRelationshipCrossReference_3_3_1_0() { return cRelationshipRelationshipCrossReference_3_3_1_0; }
-
-		//EString
-		public RuleCall getRelationshipRelationshipEStringParserRuleCall_3_3_1_0_1() { return cRelationshipRelationshipEStringParserRuleCall_3_3_1_0_1; }
-
-		//")"
-		public Keyword getRightParenthesisKeyword_3_4() { return cRightParenthesisKeyword_3_4; }
-
-		//("providedRoles" "{" providedRoles+=ProvidedRole ("," providedRoles+=ProvidedRole)* "}")?
-		public Group getGroup_4() { return cGroup_4; }
-
-		//"providedRoles"
-		public Keyword getProvidedRolesKeyword_4_0() { return cProvidedRolesKeyword_4_0; }
-
-		//"{"
-		public Keyword getLeftCurlyBracketKeyword_4_1() { return cLeftCurlyBracketKeyword_4_1; }
-
-		//providedRoles+=ProvidedRole
-		public Assignment getProvidedRolesAssignment_4_2() { return cProvidedRolesAssignment_4_2; }
-
-		//ProvidedRole
-		public RuleCall getProvidedRolesProvidedRoleParserRuleCall_4_2_0() { return cProvidedRolesProvidedRoleParserRuleCall_4_2_0; }
-
-		//("," providedRoles+=ProvidedRole)*
-		public Group getGroup_4_3() { return cGroup_4_3; }
-
-		//","
-		public Keyword getCommaKeyword_4_3_0() { return cCommaKeyword_4_3_0; }
-
-		//providedRoles+=ProvidedRole
-		public Assignment getProvidedRolesAssignment_4_3_1() { return cProvidedRolesAssignment_4_3_1; }
-
-		//ProvidedRole
-		public RuleCall getProvidedRolesProvidedRoleParserRuleCall_4_3_1_0() { return cProvidedRolesProvidedRoleParserRuleCall_4_3_1_0; }
-
-		//"}"
-		public Keyword getRightCurlyBracketKeyword_4_4() { return cRightCurlyBracketKeyword_4_4; }
-
-		//("requiredRoles" "{" requiredRoles+=RequiredRole ("," requiredRoles+=RequiredRole)* "}")?
-		public Group getGroup_5() { return cGroup_5; }
-
-		//"requiredRoles"
-		public Keyword getRequiredRolesKeyword_5_0() { return cRequiredRolesKeyword_5_0; }
-
-		//"{"
-		public Keyword getLeftCurlyBracketKeyword_5_1() { return cLeftCurlyBracketKeyword_5_1; }
-
-		//requiredRoles+=RequiredRole
-		public Assignment getRequiredRolesAssignment_5_2() { return cRequiredRolesAssignment_5_2; }
-
-		//RequiredRole
-		public RuleCall getRequiredRolesRequiredRoleParserRuleCall_5_2_0() { return cRequiredRolesRequiredRoleParserRuleCall_5_2_0; }
-
-		//("," requiredRoles+=RequiredRole)*
-		public Group getGroup_5_3() { return cGroup_5_3; }
-
-		//","
-		public Keyword getCommaKeyword_5_3_0() { return cCommaKeyword_5_3_0; }
-
-		//requiredRoles+=RequiredRole
-		public Assignment getRequiredRolesAssignment_5_3_1() { return cRequiredRolesAssignment_5_3_1; }
-
-		//RequiredRole
-		public RuleCall getRequiredRolesRequiredRoleParserRuleCall_5_3_1_0() { return cRequiredRolesRequiredRoleParserRuleCall_5_3_1_0; }
-
-		//"}"
-		public Keyword getRightCurlyBracketKeyword_5_4() { return cRightCurlyBracketKeyword_5_4; }
-
-		//"}"
-		public Keyword getRightCurlyBracketKeyword_6() { return cRightCurlyBracketKeyword_6; }
-	}
-
-	public class CollectionDataTypeElements extends AbstractParserRuleElementFinder {
-		private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "CollectionDataType");
-		private final Group cGroup = (Group)rule.eContents().get(1);
-		private final Keyword cCollectionDataTypeKeyword_0 = (Keyword)cGroup.eContents().get(0);
-		private final Assignment cNameAssignment_1 = (Assignment)cGroup.eContents().get(1);
-		private final RuleCall cNameEStringParserRuleCall_1_0 = (RuleCall)cNameAssignment_1.eContents().get(0);
-		private final Keyword cLeftCurlyBracketKeyword_2 = (Keyword)cGroup.eContents().get(2);
-		private final Keyword cInnerTypeKeyword_3 = (Keyword)cGroup.eContents().get(3);
-		private final Assignment cInnerTypeAssignment_4 = (Assignment)cGroup.eContents().get(4);
-		private final CrossReference cInnerTypeDataTypeCrossReference_4_0 = (CrossReference)cInnerTypeAssignment_4.eContents().get(0);
-		private final RuleCall cInnerTypeDataTypeEStringParserRuleCall_4_0_1 = (RuleCall)cInnerTypeDataTypeCrossReference_4_0.eContents().get(1);
-		private final Keyword cRightCurlyBracketKeyword_5 = (Keyword)cGroup.eContents().get(5);
-		
-		//CollectionDataType returns repository::CollectionDataType:
-		//
-		//	"CollectionDataType" name=EString "{" "innerType" innerType=[repository::DataType|EString] "}";
-		public ParserRule getRule() { return rule; }
-
-		//"CollectionDataType" name=EString "{" "innerType" innerType=[repository::DataType|EString] "}"
-		public Group getGroup() { return cGroup; }
-
-		//"CollectionDataType"
-		public Keyword getCollectionDataTypeKeyword_0() { return cCollectionDataTypeKeyword_0; }
-
-		//name=EString
-		public Assignment getNameAssignment_1() { return cNameAssignment_1; }
-
-		//EString
-		public RuleCall getNameEStringParserRuleCall_1_0() { return cNameEStringParserRuleCall_1_0; }
-
-		//"{"
-		public Keyword getLeftCurlyBracketKeyword_2() { return cLeftCurlyBracketKeyword_2; }
-
-		//"innerType"
-		public Keyword getInnerTypeKeyword_3() { return cInnerTypeKeyword_3; }
-
-		//innerType=[repository::DataType|EString]
-		public Assignment getInnerTypeAssignment_4() { return cInnerTypeAssignment_4; }
-
-		//[repository::DataType|EString]
-		public CrossReference getInnerTypeDataTypeCrossReference_4_0() { return cInnerTypeDataTypeCrossReference_4_0; }
-
-		//EString
-		public RuleCall getInnerTypeDataTypeEStringParserRuleCall_4_0_1() { return cInnerTypeDataTypeEStringParserRuleCall_4_0_1; }
-
-		//"}"
-		public Keyword getRightCurlyBracketKeyword_5() { return cRightCurlyBracketKeyword_5; }
-	}
-
-	public class CompositeDataTypeElements extends AbstractParserRuleElementFinder {
-		private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "CompositeDataType");
-		private final Group cGroup = (Group)rule.eContents().get(1);
-		private final Keyword cCompositeDataTypeKeyword_0 = (Keyword)cGroup.eContents().get(0);
-		private final Assignment cNameAssignment_1 = (Assignment)cGroup.eContents().get(1);
-		private final RuleCall cNameEStringParserRuleCall_1_0 = (RuleCall)cNameAssignment_1.eContents().get(0);
-		private final Keyword cLeftCurlyBracketKeyword_2 = (Keyword)cGroup.eContents().get(2);
-		private final Group cGroup_3 = (Group)cGroup.eContents().get(3);
-		private final Keyword cParentTypesKeyword_3_0 = (Keyword)cGroup_3.eContents().get(0);
-		private final Keyword cLeftParenthesisKeyword_3_1 = (Keyword)cGroup_3.eContents().get(1);
-		private final Assignment cParentTypesAssignment_3_2 = (Assignment)cGroup_3.eContents().get(2);
-		private final CrossReference cParentTypesCompositeDataTypeCrossReference_3_2_0 = (CrossReference)cParentTypesAssignment_3_2.eContents().get(0);
-		private final RuleCall cParentTypesCompositeDataTypeEStringParserRuleCall_3_2_0_1 = (RuleCall)cParentTypesCompositeDataTypeCrossReference_3_2_0.eContents().get(1);
-		private final Group cGroup_3_3 = (Group)cGroup_3.eContents().get(3);
-		private final Keyword cCommaKeyword_3_3_0 = (Keyword)cGroup_3_3.eContents().get(0);
-		private final Assignment cParentTypesAssignment_3_3_1 = (Assignment)cGroup_3_3.eContents().get(1);
-		private final CrossReference cParentTypesCompositeDataTypeCrossReference_3_3_1_0 = (CrossReference)cParentTypesAssignment_3_3_1.eContents().get(0);
-		private final RuleCall cParentTypesCompositeDataTypeEStringParserRuleCall_3_3_1_0_1 = (RuleCall)cParentTypesCompositeDataTypeCrossReference_3_3_1_0.eContents().get(1);
-		private final Keyword cRightParenthesisKeyword_3_4 = (Keyword)cGroup_3.eContents().get(4);
-		private final Group cGroup_4 = (Group)cGroup.eContents().get(4);
-		private final Keyword cInnerDeclarationsKeyword_4_0 = (Keyword)cGroup_4.eContents().get(0);
-		private final Keyword cLeftCurlyBracketKeyword_4_1 = (Keyword)cGroup_4.eContents().get(1);
-		private final Assignment cInnerDeclarationsAssignment_4_2 = (Assignment)cGroup_4.eContents().get(2);
-		private final RuleCall cInnerDeclarationsInnerDeclarationParserRuleCall_4_2_0 = (RuleCall)cInnerDeclarationsAssignment_4_2.eContents().get(0);
-		private final Group cGroup_4_3 = (Group)cGroup_4.eContents().get(3);
-		private final Keyword cCommaKeyword_4_3_0 = (Keyword)cGroup_4_3.eContents().get(0);
-		private final Assignment cInnerDeclarationsAssignment_4_3_1 = (Assignment)cGroup_4_3.eContents().get(1);
-		private final RuleCall cInnerDeclarationsInnerDeclarationParserRuleCall_4_3_1_0 = (RuleCall)cInnerDeclarationsAssignment_4_3_1.eContents().get(0);
-		private final Keyword cRightCurlyBracketKeyword_4_4 = (Keyword)cGroup_4.eContents().get(4);
-		private final Keyword cRightCurlyBracketKeyword_5 = (Keyword)cGroup.eContents().get(5);
-		
-		//CompositeDataType returns repository::CompositeDataType:
-		//
-		//	"CompositeDataType" name=EString "{" ("parentTypes" "(" parentTypes+=[repository::CompositeDataType|EString] (","
-		//
-		//	parentTypes+=[repository::CompositeDataType|EString])* ")")? ("innerDeclarations" "{"
-		//
-		//	innerDeclarations+=InnerDeclaration ("," innerDeclarations+=InnerDeclaration)* "}")? "}";
-		public ParserRule getRule() { return rule; }
-
-		//"CompositeDataType" name=EString "{" ("parentTypes" "(" parentTypes+=[repository::CompositeDataType|EString] (","
-		//
-		//parentTypes+=[repository::CompositeDataType|EString])* ")")? ("innerDeclarations" "{"
-		//
-		//innerDeclarations+=InnerDeclaration ("," innerDeclarations+=InnerDeclaration)* "}")? "}"
-		public Group getGroup() { return cGroup; }
-
-		//"CompositeDataType"
-		public Keyword getCompositeDataTypeKeyword_0() { return cCompositeDataTypeKeyword_0; }
-
-		//name=EString
-		public Assignment getNameAssignment_1() { return cNameAssignment_1; }
-
-		//EString
-		public RuleCall getNameEStringParserRuleCall_1_0() { return cNameEStringParserRuleCall_1_0; }
-
-		//"{"
-		public Keyword getLeftCurlyBracketKeyword_2() { return cLeftCurlyBracketKeyword_2; }
-
-		//("parentTypes" "(" parentTypes+=[repository::CompositeDataType|EString] (","
-		//
-		//parentTypes+=[repository::CompositeDataType|EString])* ")")?
-		public Group getGroup_3() { return cGroup_3; }
-
-		//"parentTypes"
-		public Keyword getParentTypesKeyword_3_0() { return cParentTypesKeyword_3_0; }
-
-		//"("
-		public Keyword getLeftParenthesisKeyword_3_1() { return cLeftParenthesisKeyword_3_1; }
-
-		//parentTypes+=[repository::CompositeDataType|EString]
-		public Assignment getParentTypesAssignment_3_2() { return cParentTypesAssignment_3_2; }
-
-		//[repository::CompositeDataType|EString]
-		public CrossReference getParentTypesCompositeDataTypeCrossReference_3_2_0() { return cParentTypesCompositeDataTypeCrossReference_3_2_0; }
-
-		//EString
-		public RuleCall getParentTypesCompositeDataTypeEStringParserRuleCall_3_2_0_1() { return cParentTypesCompositeDataTypeEStringParserRuleCall_3_2_0_1; }
-
-		//("," parentTypes+=[repository::CompositeDataType|EString])*
-		public Group getGroup_3_3() { return cGroup_3_3; }
-
-		//","
-		public Keyword getCommaKeyword_3_3_0() { return cCommaKeyword_3_3_0; }
-
-		//parentTypes+=[repository::CompositeDataType|EString]
-		public Assignment getParentTypesAssignment_3_3_1() { return cParentTypesAssignment_3_3_1; }
-
-		//[repository::CompositeDataType|EString]
-		public CrossReference getParentTypesCompositeDataTypeCrossReference_3_3_1_0() { return cParentTypesCompositeDataTypeCrossReference_3_3_1_0; }
-
-		//EString
-		public RuleCall getParentTypesCompositeDataTypeEStringParserRuleCall_3_3_1_0_1() { return cParentTypesCompositeDataTypeEStringParserRuleCall_3_3_1_0_1; }
-
-		//")"
-		public Keyword getRightParenthesisKeyword_3_4() { return cRightParenthesisKeyword_3_4; }
-
-		//("innerDeclarations" "{" innerDeclarations+=InnerDeclaration ("," innerDeclarations+=InnerDeclaration)* "}")?
-		public Group getGroup_4() { return cGroup_4; }
-
-		//"innerDeclarations"
-		public Keyword getInnerDeclarationsKeyword_4_0() { return cInnerDeclarationsKeyword_4_0; }
-
-		//"{"
-		public Keyword getLeftCurlyBracketKeyword_4_1() { return cLeftCurlyBracketKeyword_4_1; }
-
-		//innerDeclarations+=InnerDeclaration
-		public Assignment getInnerDeclarationsAssignment_4_2() { return cInnerDeclarationsAssignment_4_2; }
-
-		//InnerDeclaration
-		public RuleCall getInnerDeclarationsInnerDeclarationParserRuleCall_4_2_0() { return cInnerDeclarationsInnerDeclarationParserRuleCall_4_2_0; }
-
-		//("," innerDeclarations+=InnerDeclaration)*
-		public Group getGroup_4_3() { return cGroup_4_3; }
-
-		//","
-		public Keyword getCommaKeyword_4_3_0() { return cCommaKeyword_4_3_0; }
-
-		//innerDeclarations+=InnerDeclaration
-		public Assignment getInnerDeclarationsAssignment_4_3_1() { return cInnerDeclarationsAssignment_4_3_1; }
-
-		//InnerDeclaration
-		public RuleCall getInnerDeclarationsInnerDeclarationParserRuleCall_4_3_1_0() { return cInnerDeclarationsInnerDeclarationParserRuleCall_4_3_1_0; }
-
-		//"}"
-		public Keyword getRightCurlyBracketKeyword_4_4() { return cRightCurlyBracketKeyword_4_4; }
-
-		//"}"
-		public Keyword getRightCurlyBracketKeyword_5() { return cRightCurlyBracketKeyword_5; }
-	}
-
-	public class PrimitiveDataTypeElements extends AbstractParserRuleElementFinder {
-		private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "PrimitiveDataType");
-		private final Group cGroup = (Group)rule.eContents().get(1);
-		private final Keyword cPrimitiveDataTypeKeyword_0 = (Keyword)cGroup.eContents().get(0);
-		private final Keyword cLeftCurlyBracketKeyword_1 = (Keyword)cGroup.eContents().get(1);
-		private final Keyword cTypeKeyword_2 = (Keyword)cGroup.eContents().get(2);
-		private final Assignment cTypeAssignment_3 = (Assignment)cGroup.eContents().get(3);
-		private final RuleCall cTypePrimitiveTypeEnumEnumRuleCall_3_0 = (RuleCall)cTypeAssignment_3.eContents().get(0);
-		private final Keyword cRefKeyword_4 = (Keyword)cGroup.eContents().get(4);
-		private final Assignment cNameAssignment_5 = (Assignment)cGroup.eContents().get(5);
-		private final RuleCall cNameEStringParserRuleCall_5_0 = (RuleCall)cNameAssignment_5.eContents().get(0);
-		private final Keyword cRightCurlyBracketKeyword_6 = (Keyword)cGroup.eContents().get(6);
-		
-		//PrimitiveDataType returns repository::PrimitiveDataType:
-		//
-		//	"PrimitiveDataType" "{" "type" type=PrimitiveTypeEnum "ref" name=EString "}";
-		public ParserRule getRule() { return rule; }
-
-		//"PrimitiveDataType" "{" "type" type=PrimitiveTypeEnum "ref" name=EString "}"
-		public Group getGroup() { return cGroup; }
-
-		//"PrimitiveDataType"
-		public Keyword getPrimitiveDataTypeKeyword_0() { return cPrimitiveDataTypeKeyword_0; }
-
-		//"{"
-		public Keyword getLeftCurlyBracketKeyword_1() { return cLeftCurlyBracketKeyword_1; }
-
-		//"type"
-		public Keyword getTypeKeyword_2() { return cTypeKeyword_2; }
-
-		//type=PrimitiveTypeEnum
-		public Assignment getTypeAssignment_3() { return cTypeAssignment_3; }
-
-		//PrimitiveTypeEnum
-		public RuleCall getTypePrimitiveTypeEnumEnumRuleCall_3_0() { return cTypePrimitiveTypeEnumEnumRuleCall_3_0; }
-
-		//"ref"
-		public Keyword getRefKeyword_4() { return cRefKeyword_4; }
-
-		//name=EString
-		public Assignment getNameAssignment_5() { return cNameAssignment_5; }
-
-		//EString
-		public RuleCall getNameEStringParserRuleCall_5_0() { return cNameEStringParserRuleCall_5_0; }
-
-		//"}"
-		public Keyword getRightCurlyBracketKeyword_6() { return cRightCurlyBracketKeyword_6; }
-	}
-
-	public class InnerDeclarationElements extends AbstractParserRuleElementFinder {
-		private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "InnerDeclaration");
-		private final Group cGroup = (Group)rule.eContents().get(1);
-		private final Keyword cInnerDeclarationKeyword_0 = (Keyword)cGroup.eContents().get(0);
-		private final Assignment cNameAssignment_1 = (Assignment)cGroup.eContents().get(1);
-		private final RuleCall cNameEStringParserRuleCall_1_0 = (RuleCall)cNameAssignment_1.eContents().get(0);
-		private final Keyword cLeftCurlyBracketKeyword_2 = (Keyword)cGroup.eContents().get(2);
-		private final Keyword cDataTypeKeyword_3 = (Keyword)cGroup.eContents().get(3);
-		private final Assignment cDataTypeAssignment_4 = (Assignment)cGroup.eContents().get(4);
-		private final CrossReference cDataTypeDataTypeCrossReference_4_0 = (CrossReference)cDataTypeAssignment_4.eContents().get(0);
-		private final RuleCall cDataTypeDataTypeEStringParserRuleCall_4_0_1 = (RuleCall)cDataTypeDataTypeCrossReference_4_0.eContents().get(1);
-		private final Keyword cRightCurlyBracketKeyword_5 = (Keyword)cGroup.eContents().get(5);
-		
-		//InnerDeclaration returns repository::InnerDeclaration:
-		//
-		//	"InnerDeclaration" name=EString "{" "dataType" dataType=[repository::DataType|EString] "}";
-		public ParserRule getRule() { return rule; }
-
-		//"InnerDeclaration" name=EString "{" "dataType" dataType=[repository::DataType|EString] "}"
-		public Group getGroup() { return cGroup; }
-
-		//"InnerDeclaration"
-		public Keyword getInnerDeclarationKeyword_0() { return cInnerDeclarationKeyword_0; }
-
-		//name=EString
-		public Assignment getNameAssignment_1() { return cNameAssignment_1; }
-
-		//EString
-		public RuleCall getNameEStringParserRuleCall_1_0() { return cNameEStringParserRuleCall_1_0; }
-
-		//"{"
-		public Keyword getLeftCurlyBracketKeyword_2() { return cLeftCurlyBracketKeyword_2; }
-
-		//"dataType"
-		public Keyword getDataTypeKeyword_3() { return cDataTypeKeyword_3; }
-
-		//dataType=[repository::DataType|EString]
-		public Assignment getDataTypeAssignment_4() { return cDataTypeAssignment_4; }
-
-		//[repository::DataType|EString]
-		public CrossReference getDataTypeDataTypeCrossReference_4_0() { return cDataTypeDataTypeCrossReference_4_0; }
-
-		//EString
-		public RuleCall getDataTypeDataTypeEStringParserRuleCall_4_0_1() { return cDataTypeDataTypeEStringParserRuleCall_4_0_1; }
-
-		//"}"
-		public Keyword getRightCurlyBracketKeyword_5() { return cRightCurlyBracketKeyword_5; }
-	}
-
-	public class SignatureElements extends AbstractParserRuleElementFinder {
-		private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "Signature");
-		private final Group cGroup = (Group)rule.eContents().get(1);
-		private final Alternatives cAlternatives_0 = (Alternatives)cGroup.eContents().get(0);
-		private final Assignment cReturnTypeAssignment_0_0 = (Assignment)cAlternatives_0.eContents().get(0);
-		private final CrossReference cReturnTypeDataTypeCrossReference_0_0_0 = (CrossReference)cReturnTypeAssignment_0_0.eContents().get(0);
-		private final RuleCall cReturnTypeDataTypeEStringParserRuleCall_0_0_0_1 = (RuleCall)cReturnTypeDataTypeCrossReference_0_0_0.eContents().get(1);
-		private final Keyword cVoidKeyword_0_1 = (Keyword)cAlternatives_0.eContents().get(1);
-		private final Assignment cNameAssignment_1 = (Assignment)cGroup.eContents().get(1);
-		private final RuleCall cNameEStringParserRuleCall_1_0 = (RuleCall)cNameAssignment_1.eContents().get(0);
-		private final Keyword cLeftParenthesisKeyword_2 = (Keyword)cGroup.eContents().get(2);
-		private final Group cGroup_3 = (Group)cGroup.eContents().get(3);
-		private final Assignment cParametersAssignment_3_0 = (Assignment)cGroup_3.eContents().get(0);
-		private final RuleCall cParametersParameterParserRuleCall_3_0_0 = (RuleCall)cParametersAssignment_3_0.eContents().get(0);
-		private final Group cGroup_3_1 = (Group)cGroup_3.eContents().get(1);
-		private final Keyword cCommaKeyword_3_1_0 = (Keyword)cGroup_3_1.eContents().get(0);
-		private final Assignment cParametersAssignment_3_1_1 = (Assignment)cGroup_3_1.eContents().get(1);
-		private final RuleCall cParametersParameterParserRuleCall_3_1_1_0 = (RuleCall)cParametersAssignment_3_1_1.eContents().get(0);
-		private final Keyword cRightParenthesisKeyword_4 = (Keyword)cGroup.eContents().get(4);
-		
-		//Signature returns repository::Signature:
-		//
-		//	(returnType=[repository::DataType|EString] | "void") name=EString "(" (parameters+=Parameter (","
-		//
-		//	parameters+=Parameter)*)? ")";
-		public ParserRule getRule() { return rule; }
-
-		//(returnType=[repository::DataType|EString] | "void") name=EString "(" (parameters+=Parameter (","
-		//
-		//parameters+=Parameter)*)? ")"
-		public Group getGroup() { return cGroup; }
-
-		//returnType=[repository::DataType|EString] | "void"
-		public Alternatives getAlternatives_0() { return cAlternatives_0; }
-
-		//returnType=[repository::DataType|EString]
-		public Assignment getReturnTypeAssignment_0_0() { return cReturnTypeAssignment_0_0; }
-
-		//[repository::DataType|EString]
-		public CrossReference getReturnTypeDataTypeCrossReference_0_0_0() { return cReturnTypeDataTypeCrossReference_0_0_0; }
-
-		//EString
-		public RuleCall getReturnTypeDataTypeEStringParserRuleCall_0_0_0_1() { return cReturnTypeDataTypeEStringParserRuleCall_0_0_0_1; }
-
-		//"void"
-		public Keyword getVoidKeyword_0_1() { return cVoidKeyword_0_1; }
-
-		//name=EString
-		public Assignment getNameAssignment_1() { return cNameAssignment_1; }
-
-		//EString
-		public RuleCall getNameEStringParserRuleCall_1_0() { return cNameEStringParserRuleCall_1_0; }
-
-		//"("
-		public Keyword getLeftParenthesisKeyword_2() { return cLeftParenthesisKeyword_2; }
-
-		//(parameters+=Parameter ("," parameters+=Parameter)*)?
-		public Group getGroup_3() { return cGroup_3; }
-
-		//parameters+=Parameter
-		public Assignment getParametersAssignment_3_0() { return cParametersAssignment_3_0; }
-
-		//Parameter
-		public RuleCall getParametersParameterParserRuleCall_3_0_0() { return cParametersParameterParserRuleCall_3_0_0; }
-
-		//("," parameters+=Parameter)*
-		public Group getGroup_3_1() { return cGroup_3_1; }
-
-		//","
-		public Keyword getCommaKeyword_3_1_0() { return cCommaKeyword_3_1_0; }
-
-		//parameters+=Parameter
-		public Assignment getParametersAssignment_3_1_1() { return cParametersAssignment_3_1_1; }
-
-		//Parameter
-		public RuleCall getParametersParameterParserRuleCall_3_1_1_0() { return cParametersParameterParserRuleCall_3_1_1_0; }
-
-		//")"
-		public Keyword getRightParenthesisKeyword_4() { return cRightParenthesisKeyword_4; }
-	}
-
-	public class ParameterElements extends AbstractParserRuleElementFinder {
-		private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "Parameter");
-		private final Group cGroup = (Group)rule.eContents().get(1);
-		private final Assignment cDataTypeAssignment_0 = (Assignment)cGroup.eContents().get(0);
-		private final CrossReference cDataTypeDataTypeCrossReference_0_0 = (CrossReference)cDataTypeAssignment_0.eContents().get(0);
-		private final RuleCall cDataTypeDataTypeEStringParserRuleCall_0_0_1 = (RuleCall)cDataTypeDataTypeCrossReference_0_0.eContents().get(1);
-		private final Assignment cNameAssignment_1 = (Assignment)cGroup.eContents().get(1);
-		private final RuleCall cNameEStringParserRuleCall_1_0 = (RuleCall)cNameAssignment_1.eContents().get(0);
-		
-		//Parameter returns repository::Parameter:
-		//
-		//	dataType=[repository::DataType|EString] name=EString;
-		public ParserRule getRule() { return rule; }
-
-		//dataType=[repository::DataType|EString] name=EString
-		public Group getGroup() { return cGroup; }
-
-		//dataType=[repository::DataType|EString]
-		public Assignment getDataTypeAssignment_0() { return cDataTypeAssignment_0; }
-
-		//[repository::DataType|EString]
-		public CrossReference getDataTypeDataTypeCrossReference_0_0() { return cDataTypeDataTypeCrossReference_0_0; }
-
-		//EString
-		public RuleCall getDataTypeDataTypeEStringParserRuleCall_0_0_1() { return cDataTypeDataTypeEStringParserRuleCall_0_0_1; }
-
-		//name=EString
-		public Assignment getNameAssignment_1() { return cNameAssignment_1; }
-
-		//EString
-		public RuleCall getNameEStringParserRuleCall_1_0() { return cNameEStringParserRuleCall_1_0; }
-	}
-
-	public class ProvidedRoleElements extends AbstractParserRuleElementFinder {
-		private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "ProvidedRole");
-		private final Group cGroup = (Group)rule.eContents().get(1);
-		private final Keyword cProvidedRoleKeyword_0 = (Keyword)cGroup.eContents().get(0);
-		private final Assignment cInterfaceAssignment_1 = (Assignment)cGroup.eContents().get(1);
-		private final CrossReference cInterfaceInterfaceCrossReference_1_0 = (CrossReference)cInterfaceAssignment_1.eContents().get(0);
-		private final RuleCall cInterfaceInterfaceEStringParserRuleCall_1_0_1 = (RuleCall)cInterfaceInterfaceCrossReference_1_0.eContents().get(1);
-		private final Keyword cCommaKeyword_2 = (Keyword)cGroup.eContents().get(2);
-		
-		//ProvidedRole returns repository::ProvidedRole:
-		//
-		//	"ProvidedRole" interface=[repository::Interface|EString] ","?;
-		public ParserRule getRule() { return rule; }
-
-		//"ProvidedRole" interface=[repository::Interface|EString] ","?
-		public Group getGroup() { return cGroup; }
-
-		//"ProvidedRole"
-		public Keyword getProvidedRoleKeyword_0() { return cProvidedRoleKeyword_0; }
-
-		//interface=[repository::Interface|EString]
-		public Assignment getInterfaceAssignment_1() { return cInterfaceAssignment_1; }
-
-		//[repository::Interface|EString]
-		public CrossReference getInterfaceInterfaceCrossReference_1_0() { return cInterfaceInterfaceCrossReference_1_0; }
-
-		//EString
-		public RuleCall getInterfaceInterfaceEStringParserRuleCall_1_0_1() { return cInterfaceInterfaceEStringParserRuleCall_1_0_1; }
-
-		//","?
-		public Keyword getCommaKeyword_2() { return cCommaKeyword_2; }
-	}
-
-	public class RequiredRoleElements extends AbstractParserRuleElementFinder {
-		private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "RequiredRole");
-		private final Group cGroup = (Group)rule.eContents().get(1);
-		private final Keyword cRequiredRoleKeyword_0 = (Keyword)cGroup.eContents().get(0);
-		private final Assignment cInterfaceAssignment_1 = (Assignment)cGroup.eContents().get(1);
-		private final CrossReference cInterfaceInterfaceCrossReference_1_0 = (CrossReference)cInterfaceAssignment_1.eContents().get(0);
-		private final RuleCall cInterfaceInterfaceEStringParserRuleCall_1_0_1 = (RuleCall)cInterfaceInterfaceCrossReference_1_0.eContents().get(1);
-		private final Keyword cCommaKeyword_2 = (Keyword)cGroup.eContents().get(2);
-		
-		//RequiredRole returns repository::RequiredRole:
-		//
-		//	"RequiredRole" interface=[repository::Interface|EString] ","?;
-		public ParserRule getRule() { return rule; }
-
-		//"RequiredRole" interface=[repository::Interface|EString] ","?
-		public Group getGroup() { return cGroup; }
-
-		//"RequiredRole"
-		public Keyword getRequiredRoleKeyword_0() { return cRequiredRoleKeyword_0; }
-
-		//interface=[repository::Interface|EString]
-		public Assignment getInterfaceAssignment_1() { return cInterfaceAssignment_1; }
-
-		//[repository::Interface|EString]
-		public CrossReference getInterfaceInterfaceCrossReference_1_0() { return cInterfaceInterfaceCrossReference_1_0; }
-
-		//EString
-		public RuleCall getInterfaceInterfaceEStringParserRuleCall_1_0_1() { return cInterfaceInterfaceEStringParserRuleCall_1_0_1; }
-
-		//","?
-		public Keyword getCommaKeyword_2() { return cCommaKeyword_2; }
-	}
-
-	public class BasicComponentElements extends AbstractParserRuleElementFinder {
-		private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "BasicComponent");
-		private final Group cGroup = (Group)rule.eContents().get(1);
-		private final Keyword cBasicComponentKeyword_0 = (Keyword)cGroup.eContents().get(0);
-		private final Assignment cNameAssignment_1 = (Assignment)cGroup.eContents().get(1);
-		private final RuleCall cNameEStringParserRuleCall_1_0 = (RuleCall)cNameAssignment_1.eContents().get(0);
-		private final Group cGroup_2 = (Group)cGroup.eContents().get(2);
-		private final Assignment cProvidedRolesAssignment_2_0 = (Assignment)cGroup_2.eContents().get(0);
-		private final RuleCall cProvidedRolesProvidedRoleParserRuleCall_2_0_0 = (RuleCall)cProvidedRolesAssignment_2_0.eContents().get(0);
-		private final Group cGroup_2_1 = (Group)cGroup_2.eContents().get(1);
-		private final Keyword cCommaKeyword_2_1_0 = (Keyword)cGroup_2_1.eContents().get(0);
-		private final Assignment cProvidedRolesAssignment_2_1_1 = (Assignment)cGroup_2_1.eContents().get(1);
-		private final RuleCall cProvidedRolesProvidedRoleParserRuleCall_2_1_1_0 = (RuleCall)cProvidedRolesAssignment_2_1_1.eContents().get(0);
-		private final Group cGroup_3 = (Group)cGroup.eContents().get(3);
-		private final Assignment cRequiredRolesAssignment_3_0 = (Assignment)cGroup_3.eContents().get(0);
-		private final RuleCall cRequiredRolesRequiredRoleParserRuleCall_3_0_0 = (RuleCall)cRequiredRolesAssignment_3_0.eContents().get(0);
-		private final Group cGroup_3_1 = (Group)cGroup_3.eContents().get(1);
-		private final Keyword cCommaKeyword_3_1_0 = (Keyword)cGroup_3_1.eContents().get(0);
-		private final Assignment cRequiredRolesAssignment_3_1_1 = (Assignment)cGroup_3_1.eContents().get(1);
-		private final RuleCall cRequiredRolesRequiredRoleParserRuleCall_3_1_1_0 = (RuleCall)cRequiredRolesAssignment_3_1_1.eContents().get(0);
-		private final Keyword cLeftCurlyBracketKeyword_4 = (Keyword)cGroup.eContents().get(4);
-		private final Group cGroup_5 = (Group)cGroup.eContents().get(5);
-		private final Keyword cRelationshipKeyword_5_0 = (Keyword)cGroup_5.eContents().get(0);
-		private final Keyword cLeftParenthesisKeyword_5_1 = (Keyword)cGroup_5.eContents().get(1);
-		private final Assignment cRelationshipAssignment_5_2 = (Assignment)cGroup_5.eContents().get(2);
-		private final CrossReference cRelationshipRelationshipCrossReference_5_2_0 = (CrossReference)cRelationshipAssignment_5_2.eContents().get(0);
-		private final RuleCall cRelationshipRelationshipEStringParserRuleCall_5_2_0_1 = (RuleCall)cRelationshipRelationshipCrossReference_5_2_0.eContents().get(1);
-		private final Group cGroup_5_3 = (Group)cGroup_5.eContents().get(3);
-		private final Keyword cCommaKeyword_5_3_0 = (Keyword)cGroup_5_3.eContents().get(0);
-		private final Assignment cRelationshipAssignment_5_3_1 = (Assignment)cGroup_5_3.eContents().get(1);
-		private final CrossReference cRelationshipRelationshipCrossReference_5_3_1_0 = (CrossReference)cRelationshipAssignment_5_3_1.eContents().get(0);
-		private final RuleCall cRelationshipRelationshipEStringParserRuleCall_5_3_1_0_1 = (RuleCall)cRelationshipRelationshipCrossReference_5_3_1_0.eContents().get(1);
-		private final Keyword cRightParenthesisKeyword_5_4 = (Keyword)cGroup_5.eContents().get(4);
-		private final Keyword cRightCurlyBracketKeyword_6 = (Keyword)cGroup.eContents().get(6);
-		
-		//BasicComponent returns repository::BasicComponent:
-		//
-		//	"BasicComponent" name=EString (providedRoles+=ProvidedRole ("," providedRoles+=ProvidedRole)*)?
-		//
-		//	(requiredRoles+=RequiredRole ("," requiredRoles+=RequiredRole)*)? "{" ("relationship" "("
-		//
-		//	relationship+=[Relationship|EString] ("," relationship+=[Relationship|EString])* ")")? "}";
-		public ParserRule getRule() { return rule; }
-
-		//"BasicComponent" name=EString (providedRoles+=ProvidedRole ("," providedRoles+=ProvidedRole)*)?
-		//
-		//(requiredRoles+=RequiredRole ("," requiredRoles+=RequiredRole)*)? "{" ("relationship" "("
-		//
-		//relationship+=[Relationship|EString] ("," relationship+=[Relationship|EString])* ")")? "}"
-		public Group getGroup() { return cGroup; }
-
-		//"BasicComponent"
-		public Keyword getBasicComponentKeyword_0() { return cBasicComponentKeyword_0; }
-
-		//name=EString
-		public Assignment getNameAssignment_1() { return cNameAssignment_1; }
-
-		//EString
-		public RuleCall getNameEStringParserRuleCall_1_0() { return cNameEStringParserRuleCall_1_0; }
-
-		//(providedRoles+=ProvidedRole ("," providedRoles+=ProvidedRole)*)?
-		public Group getGroup_2() { return cGroup_2; }
-
-		//providedRoles+=ProvidedRole
-		public Assignment getProvidedRolesAssignment_2_0() { return cProvidedRolesAssignment_2_0; }
-
-		//ProvidedRole
-		public RuleCall getProvidedRolesProvidedRoleParserRuleCall_2_0_0() { return cProvidedRolesProvidedRoleParserRuleCall_2_0_0; }
-
-		//("," providedRoles+=ProvidedRole)*
-		public Group getGroup_2_1() { return cGroup_2_1; }
-
-		//","
-		public Keyword getCommaKeyword_2_1_0() { return cCommaKeyword_2_1_0; }
-
-		//providedRoles+=ProvidedRole
-		public Assignment getProvidedRolesAssignment_2_1_1() { return cProvidedRolesAssignment_2_1_1; }
-
-		//ProvidedRole
-		public RuleCall getProvidedRolesProvidedRoleParserRuleCall_2_1_1_0() { return cProvidedRolesProvidedRoleParserRuleCall_2_1_1_0; }
-
-		//(requiredRoles+=RequiredRole ("," requiredRoles+=RequiredRole)*)?
-		public Group getGroup_3() { return cGroup_3; }
-
-		//requiredRoles+=RequiredRole
-		public Assignment getRequiredRolesAssignment_3_0() { return cRequiredRolesAssignment_3_0; }
-
-		//RequiredRole
-		public RuleCall getRequiredRolesRequiredRoleParserRuleCall_3_0_0() { return cRequiredRolesRequiredRoleParserRuleCall_3_0_0; }
-
-		//("," requiredRoles+=RequiredRole)*
-		public Group getGroup_3_1() { return cGroup_3_1; }
-
-		//","
-		public Keyword getCommaKeyword_3_1_0() { return cCommaKeyword_3_1_0; }
-
-		//requiredRoles+=RequiredRole
-		public Assignment getRequiredRolesAssignment_3_1_1() { return cRequiredRolesAssignment_3_1_1; }
-
-		//RequiredRole
-		public RuleCall getRequiredRolesRequiredRoleParserRuleCall_3_1_1_0() { return cRequiredRolesRequiredRoleParserRuleCall_3_1_1_0; }
-
-		//"{"
-		public Keyword getLeftCurlyBracketKeyword_4() { return cLeftCurlyBracketKeyword_4; }
-
-		//("relationship" "(" relationship+=[Relationship|EString] ("," relationship+=[Relationship|EString])* ")")?
-		public Group getGroup_5() { return cGroup_5; }
-
-		//"relationship"
-		public Keyword getRelationshipKeyword_5_0() { return cRelationshipKeyword_5_0; }
-
-		//"("
-		public Keyword getLeftParenthesisKeyword_5_1() { return cLeftParenthesisKeyword_5_1; }
-
-		//relationship+=[Relationship|EString]
-		public Assignment getRelationshipAssignment_5_2() { return cRelationshipAssignment_5_2; }
-
-		//[Relationship|EString]
-		public CrossReference getRelationshipRelationshipCrossReference_5_2_0() { return cRelationshipRelationshipCrossReference_5_2_0; }
-
-		//EString
-		public RuleCall getRelationshipRelationshipEStringParserRuleCall_5_2_0_1() { return cRelationshipRelationshipEStringParserRuleCall_5_2_0_1; }
-
-		//("," relationship+=[Relationship|EString])*
-		public Group getGroup_5_3() { return cGroup_5_3; }
-
-		//","
-		public Keyword getCommaKeyword_5_3_0() { return cCommaKeyword_5_3_0; }
-
-		//relationship+=[Relationship|EString]
-		public Assignment getRelationshipAssignment_5_3_1() { return cRelationshipAssignment_5_3_1; }
-
-		//[Relationship|EString]
-		public CrossReference getRelationshipRelationshipCrossReference_5_3_1_0() { return cRelationshipRelationshipCrossReference_5_3_1_0; }
-
-		//EString
-		public RuleCall getRelationshipRelationshipEStringParserRuleCall_5_3_1_0_1() { return cRelationshipRelationshipEStringParserRuleCall_5_3_1_0_1; }
-
-		//")"
-		public Keyword getRightParenthesisKeyword_5_4() { return cRightParenthesisKeyword_5_4; }
-
-		//"}"
-		public Keyword getRightCurlyBracketKeyword_6() { return cRightCurlyBracketKeyword_6; }
-	}
-
-	public class CompositeComponentElements extends AbstractParserRuleElementFinder {
-		private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "CompositeComponent");
-		private final Group cGroup = (Group)rule.eContents().get(1);
-		private final Keyword cCompositeComponentKeyword_0 = (Keyword)cGroup.eContents().get(0);
-		private final Assignment cNameAssignment_1 = (Assignment)cGroup.eContents().get(1);
-		private final RuleCall cNameEStringParserRuleCall_1_0 = (RuleCall)cNameAssignment_1.eContents().get(0);
-		private final Group cGroup_2 = (Group)cGroup.eContents().get(2);
-		private final Assignment cProvidedRolesAssignment_2_0 = (Assignment)cGroup_2.eContents().get(0);
-		private final RuleCall cProvidedRolesProvidedRoleParserRuleCall_2_0_0 = (RuleCall)cProvidedRolesAssignment_2_0.eContents().get(0);
-		private final Group cGroup_2_1 = (Group)cGroup_2.eContents().get(1);
-		private final Keyword cCommaKeyword_2_1_0 = (Keyword)cGroup_2_1.eContents().get(0);
-		private final Assignment cProvidedRolesAssignment_2_1_1 = (Assignment)cGroup_2_1.eContents().get(1);
-		private final RuleCall cProvidedRolesProvidedRoleParserRuleCall_2_1_1_0 = (RuleCall)cProvidedRolesAssignment_2_1_1.eContents().get(0);
-		private final Group cGroup_3 = (Group)cGroup.eContents().get(3);
-		private final Assignment cRequiredRolesAssignment_3_0 = (Assignment)cGroup_3.eContents().get(0);
-		private final RuleCall cRequiredRolesRequiredRoleParserRuleCall_3_0_0 = (RuleCall)cRequiredRolesAssignment_3_0.eContents().get(0);
-		private final Group cGroup_3_1 = (Group)cGroup_3.eContents().get(1);
-		private final Keyword cCommaKeyword_3_1_0 = (Keyword)cGroup_3_1.eContents().get(0);
-		private final Assignment cRequiredRolesAssignment_3_1_1 = (Assignment)cGroup_3_1.eContents().get(1);
-		private final RuleCall cRequiredRolesRequiredRoleParserRuleCall_3_1_1_0 = (RuleCall)cRequiredRolesAssignment_3_1_1.eContents().get(0);
-		private final Keyword cLeftCurlyBracketKeyword_4 = (Keyword)cGroup.eContents().get(4);
-		private final Group cGroup_5 = (Group)cGroup.eContents().get(5);
-		private final Keyword cRelationshipKeyword_5_0 = (Keyword)cGroup_5.eContents().get(0);
-		private final Keyword cLeftParenthesisKeyword_5_1 = (Keyword)cGroup_5.eContents().get(1);
-		private final Assignment cRelationshipAssignment_5_2 = (Assignment)cGroup_5.eContents().get(2);
-		private final CrossReference cRelationshipRelationshipCrossReference_5_2_0 = (CrossReference)cRelationshipAssignment_5_2.eContents().get(0);
-		private final RuleCall cRelationshipRelationshipEStringParserRuleCall_5_2_0_1 = (RuleCall)cRelationshipRelationshipCrossReference_5_2_0.eContents().get(1);
-		private final Group cGroup_5_3 = (Group)cGroup_5.eContents().get(3);
-		private final Keyword cCommaKeyword_5_3_0 = (Keyword)cGroup_5_3.eContents().get(0);
-		private final Assignment cRelationshipAssignment_5_3_1 = (Assignment)cGroup_5_3.eContents().get(1);
-		private final CrossReference cRelationshipRelationshipCrossReference_5_3_1_0 = (CrossReference)cRelationshipAssignment_5_3_1.eContents().get(0);
-		private final RuleCall cRelationshipRelationshipEStringParserRuleCall_5_3_1_0_1 = (RuleCall)cRelationshipRelationshipCrossReference_5_3_1_0.eContents().get(1);
-		private final Keyword cRightParenthesisKeyword_5_4 = (Keyword)cGroup_5.eContents().get(4);
-		private final Group cGroup_6 = (Group)cGroup.eContents().get(6);
-		private final Keyword cAssemblyKeyword_6_0 = (Keyword)cGroup_6.eContents().get(0);
-		private final Assignment cAssemblyAssignment_6_1 = (Assignment)cGroup_6.eContents().get(1);
-		private final RuleCall cAssemblyComposedStructureAssemblyParserRuleCall_6_1_0 = (RuleCall)cAssemblyAssignment_6_1.eContents().get(0);
-		private final Keyword cRightCurlyBracketKeyword_7 = (Keyword)cGroup.eContents().get(7);
-		
-		//CompositeComponent returns repository::CompositeComponent:
-		//
-		//	"CompositeComponent" name=EString (providedRoles+=ProvidedRole ("," providedRoles+=ProvidedRole)*)?
-		//
-		//	(requiredRoles+=RequiredRole ("," requiredRoles+=RequiredRole)*)? "{" ("relationship" "("
-		//
-		//	relationship+=[Relationship|EString] ("," relationship+=[Relationship|EString])* ")")? ("assembly"
-		//
-		//	assembly=ComposedStructureAssembly)? "}";
-		public ParserRule getRule() { return rule; }
-
-		//"CompositeComponent" name=EString (providedRoles+=ProvidedRole ("," providedRoles+=ProvidedRole)*)?
-		//
-		//(requiredRoles+=RequiredRole ("," requiredRoles+=RequiredRole)*)? "{" ("relationship" "("
-		//
-		//relationship+=[Relationship|EString] ("," relationship+=[Relationship|EString])* ")")? ("assembly"
-		//
-		//assembly=ComposedStructureAssembly)? "}"
-		public Group getGroup() { return cGroup; }
-
-		//"CompositeComponent"
-		public Keyword getCompositeComponentKeyword_0() { return cCompositeComponentKeyword_0; }
-
-		//name=EString
-		public Assignment getNameAssignment_1() { return cNameAssignment_1; }
-
-		//EString
-		public RuleCall getNameEStringParserRuleCall_1_0() { return cNameEStringParserRuleCall_1_0; }
-
-		//(providedRoles+=ProvidedRole ("," providedRoles+=ProvidedRole)*)?
-		public Group getGroup_2() { return cGroup_2; }
-
-		//providedRoles+=ProvidedRole
-		public Assignment getProvidedRolesAssignment_2_0() { return cProvidedRolesAssignment_2_0; }
-
-		//ProvidedRole
-		public RuleCall getProvidedRolesProvidedRoleParserRuleCall_2_0_0() { return cProvidedRolesProvidedRoleParserRuleCall_2_0_0; }
-
-		//("," providedRoles+=ProvidedRole)*
-		public Group getGroup_2_1() { return cGroup_2_1; }
-
-		//","
-		public Keyword getCommaKeyword_2_1_0() { return cCommaKeyword_2_1_0; }
-
-		//providedRoles+=ProvidedRole
-		public Assignment getProvidedRolesAssignment_2_1_1() { return cProvidedRolesAssignment_2_1_1; }
-
-		//ProvidedRole
-		public RuleCall getProvidedRolesProvidedRoleParserRuleCall_2_1_1_0() { return cProvidedRolesProvidedRoleParserRuleCall_2_1_1_0; }
-
-		//(requiredRoles+=RequiredRole ("," requiredRoles+=RequiredRole)*)?
-		public Group getGroup_3() { return cGroup_3; }
-
-		//requiredRoles+=RequiredRole
-		public Assignment getRequiredRolesAssignment_3_0() { return cRequiredRolesAssignment_3_0; }
-
-		//RequiredRole
-		public RuleCall getRequiredRolesRequiredRoleParserRuleCall_3_0_0() { return cRequiredRolesRequiredRoleParserRuleCall_3_0_0; }
-
-		//("," requiredRoles+=RequiredRole)*
-		public Group getGroup_3_1() { return cGroup_3_1; }
-
-		//","
-		public Keyword getCommaKeyword_3_1_0() { return cCommaKeyword_3_1_0; }
-
-		//requiredRoles+=RequiredRole
-		public Assignment getRequiredRolesAssignment_3_1_1() { return cRequiredRolesAssignment_3_1_1; }
-
-		//RequiredRole
-		public RuleCall getRequiredRolesRequiredRoleParserRuleCall_3_1_1_0() { return cRequiredRolesRequiredRoleParserRuleCall_3_1_1_0; }
-
-		//"{"
-		public Keyword getLeftCurlyBracketKeyword_4() { return cLeftCurlyBracketKeyword_4; }
-
-		//("relationship" "(" relationship+=[Relationship|EString] ("," relationship+=[Relationship|EString])* ")")?
-		public Group getGroup_5() { return cGroup_5; }
-
-		//"relationship"
-		public Keyword getRelationshipKeyword_5_0() { return cRelationshipKeyword_5_0; }
-
-		//"("
-		public Keyword getLeftParenthesisKeyword_5_1() { return cLeftParenthesisKeyword_5_1; }
-
-		//relationship+=[Relationship|EString]
-		public Assignment getRelationshipAssignment_5_2() { return cRelationshipAssignment_5_2; }
-
-		//[Relationship|EString]
-		public CrossReference getRelationshipRelationshipCrossReference_5_2_0() { return cRelationshipRelationshipCrossReference_5_2_0; }
-
-		//EString
-		public RuleCall getRelationshipRelationshipEStringParserRuleCall_5_2_0_1() { return cRelationshipRelationshipEStringParserRuleCall_5_2_0_1; }
-
-		//("," relationship+=[Relationship|EString])*
-		public Group getGroup_5_3() { return cGroup_5_3; }
-
-		//","
-		public Keyword getCommaKeyword_5_3_0() { return cCommaKeyword_5_3_0; }
-
-		//relationship+=[Relationship|EString]
-		public Assignment getRelationshipAssignment_5_3_1() { return cRelationshipAssignment_5_3_1; }
-
-		//[Relationship|EString]
-		public CrossReference getRelationshipRelationshipCrossReference_5_3_1_0() { return cRelationshipRelationshipCrossReference_5_3_1_0; }
-
-		//EString
-		public RuleCall getRelationshipRelationshipEStringParserRuleCall_5_3_1_0_1() { return cRelationshipRelationshipEStringParserRuleCall_5_3_1_0_1; }
-
-		//")"
-		public Keyword getRightParenthesisKeyword_5_4() { return cRightParenthesisKeyword_5_4; }
-
-		//("assembly" assembly=ComposedStructureAssembly)?
-		public Group getGroup_6() { return cGroup_6; }
-
-		//"assembly"
-		public Keyword getAssemblyKeyword_6_0() { return cAssemblyKeyword_6_0; }
-
-		//assembly=ComposedStructureAssembly
-		public Assignment getAssemblyAssignment_6_1() { return cAssemblyAssignment_6_1; }
-
-		//ComposedStructureAssembly
-		public RuleCall getAssemblyComposedStructureAssemblyParserRuleCall_6_1_0() { return cAssemblyComposedStructureAssemblyParserRuleCall_6_1_0; }
-
-		//"}"
-		public Keyword getRightCurlyBracketKeyword_7() { return cRightCurlyBracketKeyword_7; }
-	}
-
-	public class SubSystemElements extends AbstractParserRuleElementFinder {
-		private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "SubSystem");
-		private final Group cGroup = (Group)rule.eContents().get(1);
-		private final Keyword cSubSystemKeyword_0 = (Keyword)cGroup.eContents().get(0);
-		private final Assignment cNameAssignment_1 = (Assignment)cGroup.eContents().get(1);
-		private final RuleCall cNameEStringParserRuleCall_1_0 = (RuleCall)cNameAssignment_1.eContents().get(0);
-		private final Group cGroup_2 = (Group)cGroup.eContents().get(2);
-		private final Keyword cProvidedRolesKeyword_2_0 = (Keyword)cGroup_2.eContents().get(0);
-		private final Keyword cLeftCurlyBracketKeyword_2_1 = (Keyword)cGroup_2.eContents().get(1);
-		private final Assignment cProvidedRolesAssignment_2_2 = (Assignment)cGroup_2.eContents().get(2);
-		private final RuleCall cProvidedRolesProvidedRoleParserRuleCall_2_2_0 = (RuleCall)cProvidedRolesAssignment_2_2.eContents().get(0);
-		private final Group cGroup_2_3 = (Group)cGroup_2.eContents().get(3);
-		private final Keyword cCommaKeyword_2_3_0 = (Keyword)cGroup_2_3.eContents().get(0);
-		private final Assignment cProvidedRolesAssignment_2_3_1 = (Assignment)cGroup_2_3.eContents().get(1);
-		private final RuleCall cProvidedRolesProvidedRoleParserRuleCall_2_3_1_0 = (RuleCall)cProvidedRolesAssignment_2_3_1.eContents().get(0);
-		private final Keyword cRightCurlyBracketKeyword_2_4 = (Keyword)cGroup_2.eContents().get(4);
-		private final Group cGroup_3 = (Group)cGroup.eContents().get(3);
-		private final Keyword cRequiredRolesKeyword_3_0 = (Keyword)cGroup_3.eContents().get(0);
-		private final Keyword cLeftCurlyBracketKeyword_3_1 = (Keyword)cGroup_3.eContents().get(1);
-		private final Assignment cRequiredRolesAssignment_3_2 = (Assignment)cGroup_3.eContents().get(2);
-		private final RuleCall cRequiredRolesRequiredRoleParserRuleCall_3_2_0 = (RuleCall)cRequiredRolesAssignment_3_2.eContents().get(0);
-		private final Group cGroup_3_3 = (Group)cGroup_3.eContents().get(3);
-		private final Keyword cCommaKeyword_3_3_0 = (Keyword)cGroup_3_3.eContents().get(0);
-		private final Assignment cRequiredRolesAssignment_3_3_1 = (Assignment)cGroup_3_3.eContents().get(1);
-		private final RuleCall cRequiredRolesRequiredRoleParserRuleCall_3_3_1_0 = (RuleCall)cRequiredRolesAssignment_3_3_1.eContents().get(0);
-		private final Keyword cRightCurlyBracketKeyword_3_4 = (Keyword)cGroup_3.eContents().get(4);
-		private final Keyword cLeftCurlyBracketKeyword_4 = (Keyword)cGroup.eContents().get(4);
-		private final Group cGroup_5 = (Group)cGroup.eContents().get(5);
-		private final Keyword cRelationshipKeyword_5_0 = (Keyword)cGroup_5.eContents().get(0);
-		private final Keyword cLeftParenthesisKeyword_5_1 = (Keyword)cGroup_5.eContents().get(1);
-		private final Assignment cRelationshipAssignment_5_2 = (Assignment)cGroup_5.eContents().get(2);
-		private final CrossReference cRelationshipRelationshipCrossReference_5_2_0 = (CrossReference)cRelationshipAssignment_5_2.eContents().get(0);
-		private final RuleCall cRelationshipRelationshipEStringParserRuleCall_5_2_0_1 = (RuleCall)cRelationshipRelationshipCrossReference_5_2_0.eContents().get(1);
-		private final Group cGroup_5_3 = (Group)cGroup_5.eContents().get(3);
-		private final Keyword cCommaKeyword_5_3_0 = (Keyword)cGroup_5_3.eContents().get(0);
-		private final Assignment cRelationshipAssignment_5_3_1 = (Assignment)cGroup_5_3.eContents().get(1);
-		private final CrossReference cRelationshipRelationshipCrossReference_5_3_1_0 = (CrossReference)cRelationshipAssignment_5_3_1.eContents().get(0);
-		private final RuleCall cRelationshipRelationshipEStringParserRuleCall_5_3_1_0_1 = (RuleCall)cRelationshipRelationshipCrossReference_5_3_1_0.eContents().get(1);
-		private final Keyword cRightParenthesisKeyword_5_4 = (Keyword)cGroup_5.eContents().get(4);
-		private final Group cGroup_6 = (Group)cGroup.eContents().get(6);
-		private final Keyword cAssemblyKeyword_6_0 = (Keyword)cGroup_6.eContents().get(0);
-		private final Assignment cAssemblyAssignment_6_1 = (Assignment)cGroup_6.eContents().get(1);
-		private final RuleCall cAssemblyComposedStructureAssemblyParserRuleCall_6_1_0 = (RuleCall)cAssemblyAssignment_6_1.eContents().get(0);
-		private final Keyword cRightCurlyBracketKeyword_7 = (Keyword)cGroup.eContents().get(7);
-		
-		//SubSystem returns repository::SubSystem:
-		//
-		//	"SubSystem" name=EString ("providedRoles" "{" providedRoles+=ProvidedRole ("," providedRoles+=ProvidedRole)* "}")?
-		//
-		//	("requiredRoles" "{" requiredRoles+=RequiredRole ("," requiredRoles+=RequiredRole)* "}")? "{" ("relationship" "("
-		//
-		//	relationship+=[Relationship|EString] ("," relationship+=[Relationship|EString])* ")")? ("assembly"
-		//
-		//	assembly=ComposedStructureAssembly)? "}";
-		public ParserRule getRule() { return rule; }
-
-		//"SubSystem" name=EString ("providedRoles" "{" providedRoles+=ProvidedRole ("," providedRoles+=ProvidedRole)* "}")?
-		//
-		//("requiredRoles" "{" requiredRoles+=RequiredRole ("," requiredRoles+=RequiredRole)* "}")? "{" ("relationship" "("
-		//
-		//relationship+=[Relationship|EString] ("," relationship+=[Relationship|EString])* ")")? ("assembly"
-		//
-		//assembly=ComposedStructureAssembly)? "}"
-		public Group getGroup() { return cGroup; }
-
-		//"SubSystem"
-		public Keyword getSubSystemKeyword_0() { return cSubSystemKeyword_0; }
-
-		//name=EString
-		public Assignment getNameAssignment_1() { return cNameAssignment_1; }
-
-		//EString
-		public RuleCall getNameEStringParserRuleCall_1_0() { return cNameEStringParserRuleCall_1_0; }
-
-		//("providedRoles" "{" providedRoles+=ProvidedRole ("," providedRoles+=ProvidedRole)* "}")?
-		public Group getGroup_2() { return cGroup_2; }
-
-		//"providedRoles"
-		public Keyword getProvidedRolesKeyword_2_0() { return cProvidedRolesKeyword_2_0; }
-
-		//"{"
-		public Keyword getLeftCurlyBracketKeyword_2_1() { return cLeftCurlyBracketKeyword_2_1; }
-
-		//providedRoles+=ProvidedRole
-		public Assignment getProvidedRolesAssignment_2_2() { return cProvidedRolesAssignment_2_2; }
-
-		//ProvidedRole
-		public RuleCall getProvidedRolesProvidedRoleParserRuleCall_2_2_0() { return cProvidedRolesProvidedRoleParserRuleCall_2_2_0; }
-
-		//("," providedRoles+=ProvidedRole)*
-		public Group getGroup_2_3() { return cGroup_2_3; }
-
-		//","
-		public Keyword getCommaKeyword_2_3_0() { return cCommaKeyword_2_3_0; }
-
-		//providedRoles+=ProvidedRole
-		public Assignment getProvidedRolesAssignment_2_3_1() { return cProvidedRolesAssignment_2_3_1; }
-
-		//ProvidedRole
-		public RuleCall getProvidedRolesProvidedRoleParserRuleCall_2_3_1_0() { return cProvidedRolesProvidedRoleParserRuleCall_2_3_1_0; }
-
-		//"}"
-		public Keyword getRightCurlyBracketKeyword_2_4() { return cRightCurlyBracketKeyword_2_4; }
-
-		//("requiredRoles" "{" requiredRoles+=RequiredRole ("," requiredRoles+=RequiredRole)* "}")?
-		public Group getGroup_3() { return cGroup_3; }
-
-		//"requiredRoles"
-		public Keyword getRequiredRolesKeyword_3_0() { return cRequiredRolesKeyword_3_0; }
-
-		//"{"
-		public Keyword getLeftCurlyBracketKeyword_3_1() { return cLeftCurlyBracketKeyword_3_1; }
-
-		//requiredRoles+=RequiredRole
-		public Assignment getRequiredRolesAssignment_3_2() { return cRequiredRolesAssignment_3_2; }
-
-		//RequiredRole
-		public RuleCall getRequiredRolesRequiredRoleParserRuleCall_3_2_0() { return cRequiredRolesRequiredRoleParserRuleCall_3_2_0; }
-
-		//("," requiredRoles+=RequiredRole)*
-		public Group getGroup_3_3() { return cGroup_3_3; }
-
-		//","
-		public Keyword getCommaKeyword_3_3_0() { return cCommaKeyword_3_3_0; }
-
-		//requiredRoles+=RequiredRole
-		public Assignment getRequiredRolesAssignment_3_3_1() { return cRequiredRolesAssignment_3_3_1; }
-
-		//RequiredRole
-		public RuleCall getRequiredRolesRequiredRoleParserRuleCall_3_3_1_0() { return cRequiredRolesRequiredRoleParserRuleCall_3_3_1_0; }
-
-		//"}"
-		public Keyword getRightCurlyBracketKeyword_3_4() { return cRightCurlyBracketKeyword_3_4; }
-
-		//"{"
-		public Keyword getLeftCurlyBracketKeyword_4() { return cLeftCurlyBracketKeyword_4; }
-
-		//("relationship" "(" relationship+=[Relationship|EString] ("," relationship+=[Relationship|EString])* ")")?
-		public Group getGroup_5() { return cGroup_5; }
-
-		//"relationship"
-		public Keyword getRelationshipKeyword_5_0() { return cRelationshipKeyword_5_0; }
-
-		//"("
-		public Keyword getLeftParenthesisKeyword_5_1() { return cLeftParenthesisKeyword_5_1; }
-
-		//relationship+=[Relationship|EString]
-		public Assignment getRelationshipAssignment_5_2() { return cRelationshipAssignment_5_2; }
-
-		//[Relationship|EString]
-		public CrossReference getRelationshipRelationshipCrossReference_5_2_0() { return cRelationshipRelationshipCrossReference_5_2_0; }
-
-		//EString
-		public RuleCall getRelationshipRelationshipEStringParserRuleCall_5_2_0_1() { return cRelationshipRelationshipEStringParserRuleCall_5_2_0_1; }
-
-		//("," relationship+=[Relationship|EString])*
-		public Group getGroup_5_3() { return cGroup_5_3; }
-
-		//","
-		public Keyword getCommaKeyword_5_3_0() { return cCommaKeyword_5_3_0; }
-
-		//relationship+=[Relationship|EString]
-		public Assignment getRelationshipAssignment_5_3_1() { return cRelationshipAssignment_5_3_1; }
-
-		//[Relationship|EString]
-		public CrossReference getRelationshipRelationshipCrossReference_5_3_1_0() { return cRelationshipRelationshipCrossReference_5_3_1_0; }
-
-		//EString
-		public RuleCall getRelationshipRelationshipEStringParserRuleCall_5_3_1_0_1() { return cRelationshipRelationshipEStringParserRuleCall_5_3_1_0_1; }
-
-		//")"
-		public Keyword getRightParenthesisKeyword_5_4() { return cRightParenthesisKeyword_5_4; }
-
-		//("assembly" assembly=ComposedStructureAssembly)?
-		public Group getGroup_6() { return cGroup_6; }
-
-		//"assembly"
-		public Keyword getAssemblyKeyword_6_0() { return cAssemblyKeyword_6_0; }
-
-		//assembly=ComposedStructureAssembly
-		public Assignment getAssemblyAssignment_6_1() { return cAssemblyAssignment_6_1; }
-
-		//ComposedStructureAssembly
-		public RuleCall getAssemblyComposedStructureAssemblyParserRuleCall_6_1_0() { return cAssemblyComposedStructureAssemblyParserRuleCall_6_1_0; }
-
-		//"}"
-		public Keyword getRightCurlyBracketKeyword_7() { return cRightCurlyBracketKeyword_7; }
-	}
-
-	public class ComposedStructureAssemblyElements extends AbstractParserRuleElementFinder {
-		private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "ComposedStructureAssembly");
-		private final Group cGroup = (Group)rule.eContents().get(1);
-		private final Action cComposedStructureAssemblyAction_0 = (Action)cGroup.eContents().get(0);
-		private final Keyword cComposedStructureAssemblyKeyword_1 = (Keyword)cGroup.eContents().get(1);
-		private final Keyword cLeftCurlyBracketKeyword_2 = (Keyword)cGroup.eContents().get(2);
-		private final Group cGroup_3 = (Group)cGroup.eContents().get(3);
-		private final Keyword cAssemblyContextsKeyword_3_0 = (Keyword)cGroup_3.eContents().get(0);
-		private final Keyword cLeftCurlyBracketKeyword_3_1 = (Keyword)cGroup_3.eContents().get(1);
-		private final Assignment cAssemblyContextsAssignment_3_2 = (Assignment)cGroup_3.eContents().get(2);
-		private final RuleCall cAssemblyContextsAssemblyContextParserRuleCall_3_2_0 = (RuleCall)cAssemblyContextsAssignment_3_2.eContents().get(0);
-		private final Group cGroup_3_3 = (Group)cGroup_3.eContents().get(3);
-		private final Keyword cCommaKeyword_3_3_0 = (Keyword)cGroup_3_3.eContents().get(0);
-		private final Assignment cAssemblyContextsAssignment_3_3_1 = (Assignment)cGroup_3_3.eContents().get(1);
-		private final RuleCall cAssemblyContextsAssemblyContextParserRuleCall_3_3_1_0 = (RuleCall)cAssemblyContextsAssignment_3_3_1.eContents().get(0);
-		private final Keyword cRightCurlyBracketKeyword_3_4 = (Keyword)cGroup_3.eContents().get(4);
-		private final Group cGroup_4 = (Group)cGroup.eContents().get(4);
-		private final Keyword cAssemblyConnectorsKeyword_4_0 = (Keyword)cGroup_4.eContents().get(0);
-		private final Keyword cLeftCurlyBracketKeyword_4_1 = (Keyword)cGroup_4.eContents().get(1);
-		private final Assignment cAssemblyConnectorsAssignment_4_2 = (Assignment)cGroup_4.eContents().get(2);
-		private final RuleCall cAssemblyConnectorsAssemblyConnectorParserRuleCall_4_2_0 = (RuleCall)cAssemblyConnectorsAssignment_4_2.eContents().get(0);
-		private final Group cGroup_4_3 = (Group)cGroup_4.eContents().get(3);
-		private final Keyword cCommaKeyword_4_3_0 = (Keyword)cGroup_4_3.eContents().get(0);
-		private final Assignment cAssemblyConnectorsAssignment_4_3_1 = (Assignment)cGroup_4_3.eContents().get(1);
-		private final RuleCall cAssemblyConnectorsAssemblyConnectorParserRuleCall_4_3_1_0 = (RuleCall)cAssemblyConnectorsAssignment_4_3_1.eContents().get(0);
-		private final Keyword cRightCurlyBracketKeyword_4_4 = (Keyword)cGroup_4.eContents().get(4);
-		private final Group cGroup_5 = (Group)cGroup.eContents().get(5);
-		private final Keyword cProvidedDelegationConnectorsKeyword_5_0 = (Keyword)cGroup_5.eContents().get(0);
-		private final Keyword cLeftCurlyBracketKeyword_5_1 = (Keyword)cGroup_5.eContents().get(1);
-		private final Assignment cProvidedDelegationConnectorsAssignment_5_2 = (Assignment)cGroup_5.eContents().get(2);
-		private final RuleCall cProvidedDelegationConnectorsProvidedDelegationConnectorParserRuleCall_5_2_0 = (RuleCall)cProvidedDelegationConnectorsAssignment_5_2.eContents().get(0);
-		private final Group cGroup_5_3 = (Group)cGroup_5.eContents().get(3);
-		private final Keyword cCommaKeyword_5_3_0 = (Keyword)cGroup_5_3.eContents().get(0);
-		private final Assignment cProvidedDelegationConnectorsAssignment_5_3_1 = (Assignment)cGroup_5_3.eContents().get(1);
-		private final RuleCall cProvidedDelegationConnectorsProvidedDelegationConnectorParserRuleCall_5_3_1_0 = (RuleCall)cProvidedDelegationConnectorsAssignment_5_3_1.eContents().get(0);
-		private final Keyword cRightCurlyBracketKeyword_5_4 = (Keyword)cGroup_5.eContents().get(4);
-		private final Group cGroup_6 = (Group)cGroup.eContents().get(6);
-		private final Keyword cRequiredDelegationConnectorsKeyword_6_0 = (Keyword)cGroup_6.eContents().get(0);
-		private final Keyword cLeftCurlyBracketKeyword_6_1 = (Keyword)cGroup_6.eContents().get(1);
-		private final Assignment cRequiredDelegationConnectorsAssignment_6_2 = (Assignment)cGroup_6.eContents().get(2);
-		private final RuleCall cRequiredDelegationConnectorsRequiredDelegationConnectorParserRuleCall_6_2_0 = (RuleCall)cRequiredDelegationConnectorsAssignment_6_2.eContents().get(0);
-		private final Group cGroup_6_3 = (Group)cGroup_6.eContents().get(3);
-		private final Keyword cCommaKeyword_6_3_0 = (Keyword)cGroup_6_3.eContents().get(0);
-		private final Assignment cRequiredDelegationConnectorsAssignment_6_3_1 = (Assignment)cGroup_6_3.eContents().get(1);
-		private final RuleCall cRequiredDelegationConnectorsRequiredDelegationConnectorParserRuleCall_6_3_1_0 = (RuleCall)cRequiredDelegationConnectorsAssignment_6_3_1.eContents().get(0);
-		private final Keyword cRightCurlyBracketKeyword_6_4 = (Keyword)cGroup_6.eContents().get(4);
-		private final Keyword cRightCurlyBracketKeyword_7 = (Keyword)cGroup.eContents().get(7);
-		
-		//ComposedStructureAssembly returns repository_composites::ComposedStructureAssembly:
-		//
-		//	{repository_composites::ComposedStructureAssembly} "ComposedStructureAssembly" "{" ("assemblyContexts" "{"
-		//
-		//	assemblyContexts+=AssemblyContext ("," assemblyContexts+=AssemblyContext)* "}")? ("assemblyConnectors" "{"
-		//
-		//	assemblyConnectors+=AssemblyConnector ("," assemblyConnectors+=AssemblyConnector)* "}")?
-		//
-		//	("providedDelegationConnectors" "{" providedDelegationConnectors+=ProvidedDelegationConnector (","
-		//
-		//	providedDelegationConnectors+=ProvidedDelegationConnector)* "}")? ("requiredDelegationConnectors" "{"
-		//
-		//	requiredDelegationConnectors+=RequiredDelegationConnector (","
-		//
-		//	requiredDelegationConnectors+=RequiredDelegationConnector)* "}")? "}";
-		public ParserRule getRule() { return rule; }
-
-		//{repository_composites::ComposedStructureAssembly} "ComposedStructureAssembly" "{" ("assemblyContexts" "{"
-		//
-		//assemblyContexts+=AssemblyContext ("," assemblyContexts+=AssemblyContext)* "}")? ("assemblyConnectors" "{"
-		//
-		//assemblyConnectors+=AssemblyConnector ("," assemblyConnectors+=AssemblyConnector)* "}")?
-		//
-		//("providedDelegationConnectors" "{" providedDelegationConnectors+=ProvidedDelegationConnector (","
-		//
-		//providedDelegationConnectors+=ProvidedDelegationConnector)* "}")? ("requiredDelegationConnectors" "{"
-		//
-		//requiredDelegationConnectors+=RequiredDelegationConnector (","
-		//
-		//requiredDelegationConnectors+=RequiredDelegationConnector)* "}")? "}"
-		public Group getGroup() { return cGroup; }
-
-		//{repository_composites::ComposedStructureAssembly}
-		public Action getComposedStructureAssemblyAction_0() { return cComposedStructureAssemblyAction_0; }
-
-		//"ComposedStructureAssembly"
-		public Keyword getComposedStructureAssemblyKeyword_1() { return cComposedStructureAssemblyKeyword_1; }
-
-		//"{"
-		public Keyword getLeftCurlyBracketKeyword_2() { return cLeftCurlyBracketKeyword_2; }
-
-		//("assemblyContexts" "{" assemblyContexts+=AssemblyContext ("," assemblyContexts+=AssemblyContext)* "}")?
-		public Group getGroup_3() { return cGroup_3; }
-
-		//"assemblyContexts"
-		public Keyword getAssemblyContextsKeyword_3_0() { return cAssemblyContextsKeyword_3_0; }
-
-		//"{"
-		public Keyword getLeftCurlyBracketKeyword_3_1() { return cLeftCurlyBracketKeyword_3_1; }
-
-		//assemblyContexts+=AssemblyContext
-		public Assignment getAssemblyContextsAssignment_3_2() { return cAssemblyContextsAssignment_3_2; }
-
-		//AssemblyContext
-		public RuleCall getAssemblyContextsAssemblyContextParserRuleCall_3_2_0() { return cAssemblyContextsAssemblyContextParserRuleCall_3_2_0; }
-
-		//("," assemblyContexts+=AssemblyContext)*
-		public Group getGroup_3_3() { return cGroup_3_3; }
-
-		//","
-		public Keyword getCommaKeyword_3_3_0() { return cCommaKeyword_3_3_0; }
-
-		//assemblyContexts+=AssemblyContext
-		public Assignment getAssemblyContextsAssignment_3_3_1() { return cAssemblyContextsAssignment_3_3_1; }
-
-		//AssemblyContext
-		public RuleCall getAssemblyContextsAssemblyContextParserRuleCall_3_3_1_0() { return cAssemblyContextsAssemblyContextParserRuleCall_3_3_1_0; }
-
-		//"}"
-		public Keyword getRightCurlyBracketKeyword_3_4() { return cRightCurlyBracketKeyword_3_4; }
-
-		//("assemblyConnectors" "{" assemblyConnectors+=AssemblyConnector ("," assemblyConnectors+=AssemblyConnector)* "}")?
-		public Group getGroup_4() { return cGroup_4; }
-
-		//"assemblyConnectors"
-		public Keyword getAssemblyConnectorsKeyword_4_0() { return cAssemblyConnectorsKeyword_4_0; }
-
-		//"{"
-		public Keyword getLeftCurlyBracketKeyword_4_1() { return cLeftCurlyBracketKeyword_4_1; }
-
-		//assemblyConnectors+=AssemblyConnector
-		public Assignment getAssemblyConnectorsAssignment_4_2() { return cAssemblyConnectorsAssignment_4_2; }
-
-		//AssemblyConnector
-		public RuleCall getAssemblyConnectorsAssemblyConnectorParserRuleCall_4_2_0() { return cAssemblyConnectorsAssemblyConnectorParserRuleCall_4_2_0; }
-
-		//("," assemblyConnectors+=AssemblyConnector)*
-		public Group getGroup_4_3() { return cGroup_4_3; }
-
-		//","
-		public Keyword getCommaKeyword_4_3_0() { return cCommaKeyword_4_3_0; }
-
-		//assemblyConnectors+=AssemblyConnector
-		public Assignment getAssemblyConnectorsAssignment_4_3_1() { return cAssemblyConnectorsAssignment_4_3_1; }
-
-		//AssemblyConnector
-		public RuleCall getAssemblyConnectorsAssemblyConnectorParserRuleCall_4_3_1_0() { return cAssemblyConnectorsAssemblyConnectorParserRuleCall_4_3_1_0; }
-
-		//"}"
-		public Keyword getRightCurlyBracketKeyword_4_4() { return cRightCurlyBracketKeyword_4_4; }
-
-		//("providedDelegationConnectors" "{" providedDelegationConnectors+=ProvidedDelegationConnector (","
-		//
-		//providedDelegationConnectors+=ProvidedDelegationConnector)* "}")?
-		public Group getGroup_5() { return cGroup_5; }
-
-		//"providedDelegationConnectors"
-		public Keyword getProvidedDelegationConnectorsKeyword_5_0() { return cProvidedDelegationConnectorsKeyword_5_0; }
-
-		//"{"
-		public Keyword getLeftCurlyBracketKeyword_5_1() { return cLeftCurlyBracketKeyword_5_1; }
-
-		//providedDelegationConnectors+=ProvidedDelegationConnector
-		public Assignment getProvidedDelegationConnectorsAssignment_5_2() { return cProvidedDelegationConnectorsAssignment_5_2; }
-
-		//ProvidedDelegationConnector
-		public RuleCall getProvidedDelegationConnectorsProvidedDelegationConnectorParserRuleCall_5_2_0() { return cProvidedDelegationConnectorsProvidedDelegationConnectorParserRuleCall_5_2_0; }
-
-		//("," providedDelegationConnectors+=ProvidedDelegationConnector)*
-		public Group getGroup_5_3() { return cGroup_5_3; }
-
-		//","
-		public Keyword getCommaKeyword_5_3_0() { return cCommaKeyword_5_3_0; }
-
-		//providedDelegationConnectors+=ProvidedDelegationConnector
-		public Assignment getProvidedDelegationConnectorsAssignment_5_3_1() { return cProvidedDelegationConnectorsAssignment_5_3_1; }
-
-		//ProvidedDelegationConnector
-		public RuleCall getProvidedDelegationConnectorsProvidedDelegationConnectorParserRuleCall_5_3_1_0() { return cProvidedDelegationConnectorsProvidedDelegationConnectorParserRuleCall_5_3_1_0; }
-
-		//"}"
-		public Keyword getRightCurlyBracketKeyword_5_4() { return cRightCurlyBracketKeyword_5_4; }
-
-		//("requiredDelegationConnectors" "{" requiredDelegationConnectors+=RequiredDelegationConnector (","
-		//
-		//requiredDelegationConnectors+=RequiredDelegationConnector)* "}")?
-		public Group getGroup_6() { return cGroup_6; }
-
-		//"requiredDelegationConnectors"
-		public Keyword getRequiredDelegationConnectorsKeyword_6_0() { return cRequiredDelegationConnectorsKeyword_6_0; }
-
-		//"{"
-		public Keyword getLeftCurlyBracketKeyword_6_1() { return cLeftCurlyBracketKeyword_6_1; }
-
-		//requiredDelegationConnectors+=RequiredDelegationConnector
-		public Assignment getRequiredDelegationConnectorsAssignment_6_2() { return cRequiredDelegationConnectorsAssignment_6_2; }
-
-		//RequiredDelegationConnector
-		public RuleCall getRequiredDelegationConnectorsRequiredDelegationConnectorParserRuleCall_6_2_0() { return cRequiredDelegationConnectorsRequiredDelegationConnectorParserRuleCall_6_2_0; }
-
-		//("," requiredDelegationConnectors+=RequiredDelegationConnector)*
-		public Group getGroup_6_3() { return cGroup_6_3; }
-
-		//","
-		public Keyword getCommaKeyword_6_3_0() { return cCommaKeyword_6_3_0; }
-
-		//requiredDelegationConnectors+=RequiredDelegationConnector
-		public Assignment getRequiredDelegationConnectorsAssignment_6_3_1() { return cRequiredDelegationConnectorsAssignment_6_3_1; }
-
-		//RequiredDelegationConnector
-		public RuleCall getRequiredDelegationConnectorsRequiredDelegationConnectorParserRuleCall_6_3_1_0() { return cRequiredDelegationConnectorsRequiredDelegationConnectorParserRuleCall_6_3_1_0; }
-
-		//"}"
-		public Keyword getRightCurlyBracketKeyword_6_4() { return cRightCurlyBracketKeyword_6_4; }
-
-		//"}"
-		public Keyword getRightCurlyBracketKeyword_7() { return cRightCurlyBracketKeyword_7; }
-	}
-
-	public class AssemblyContextElements extends AbstractParserRuleElementFinder {
-		private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "AssemblyContext");
-		private final Group cGroup = (Group)rule.eContents().get(1);
-		private final Keyword cAssemblyContextKeyword_0 = (Keyword)cGroup.eContents().get(0);
-		private final Assignment cNameAssignment_1 = (Assignment)cGroup.eContents().get(1);
-		private final RuleCall cNameEStringParserRuleCall_1_0 = (RuleCall)cNameAssignment_1.eContents().get(0);
-		private final Keyword cLeftCurlyBracketKeyword_2 = (Keyword)cGroup.eContents().get(2);
-		private final Keyword cEncapsulatedComponentKeyword_3 = (Keyword)cGroup.eContents().get(3);
-		private final Assignment cEncapsulatedComponentAssignment_4 = (Assignment)cGroup.eContents().get(4);
-		private final CrossReference cEncapsulatedComponentRepositoryComponentCrossReference_4_0 = (CrossReference)cEncapsulatedComponentAssignment_4.eContents().get(0);
-		private final RuleCall cEncapsulatedComponentRepositoryComponentEStringParserRuleCall_4_0_1 = (RuleCall)cEncapsulatedComponentRepositoryComponentCrossReference_4_0.eContents().get(1);
-		private final Keyword cRightCurlyBracketKeyword_5 = (Keyword)cGroup.eContents().get(5);
-		
-		//AssemblyContext returns repository_composites::AssemblyContext:
-		//
-		//	"AssemblyContext" name=EString "{" "encapsulatedComponent"
-		//
-		//	encapsulatedComponent=[repository::RepositoryComponent|EString] "}";
-		public ParserRule getRule() { return rule; }
-
-		//"AssemblyContext" name=EString "{" "encapsulatedComponent"
-		//
-		//encapsulatedComponent=[repository::RepositoryComponent|EString] "}"
-		public Group getGroup() { return cGroup; }
-
-		//"AssemblyContext"
-		public Keyword getAssemblyContextKeyword_0() { return cAssemblyContextKeyword_0; }
-
-		//name=EString
-		public Assignment getNameAssignment_1() { return cNameAssignment_1; }
-
-		//EString
-		public RuleCall getNameEStringParserRuleCall_1_0() { return cNameEStringParserRuleCall_1_0; }
-
-		//"{"
-		public Keyword getLeftCurlyBracketKeyword_2() { return cLeftCurlyBracketKeyword_2; }
-
-		//"encapsulatedComponent"
-		public Keyword getEncapsulatedComponentKeyword_3() { return cEncapsulatedComponentKeyword_3; }
-
-		//encapsulatedComponent=[repository::RepositoryComponent|EString]
-		public Assignment getEncapsulatedComponentAssignment_4() { return cEncapsulatedComponentAssignment_4; }
-
-		//[repository::RepositoryComponent|EString]
-		public CrossReference getEncapsulatedComponentRepositoryComponentCrossReference_4_0() { return cEncapsulatedComponentRepositoryComponentCrossReference_4_0; }
-
-		//EString
-		public RuleCall getEncapsulatedComponentRepositoryComponentEStringParserRuleCall_4_0_1() { return cEncapsulatedComponentRepositoryComponentEStringParserRuleCall_4_0_1; }
-
-		//"}"
-		public Keyword getRightCurlyBracketKeyword_5() { return cRightCurlyBracketKeyword_5; }
-	}
-
-	public class AssemblyConnectorElements extends AbstractParserRuleElementFinder {
-		private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "AssemblyConnector");
-		private final Group cGroup = (Group)rule.eContents().get(1);
-		private final Keyword cAssemblyConnectorKeyword_0 = (Keyword)cGroup.eContents().get(0);
-		private final Assignment cNameAssignment_1 = (Assignment)cGroup.eContents().get(1);
-		private final RuleCall cNameEStringParserRuleCall_1_0 = (RuleCall)cNameAssignment_1.eContents().get(0);
-		private final Keyword cLeftCurlyBracketKeyword_2 = (Keyword)cGroup.eContents().get(2);
-		private final Keyword cRequiredRoleKeyword_3 = (Keyword)cGroup.eContents().get(3);
-		private final Assignment cRequiredRoleAssignment_4 = (Assignment)cGroup.eContents().get(4);
-		private final CrossReference cRequiredRoleRequiredRoleCrossReference_4_0 = (CrossReference)cRequiredRoleAssignment_4.eContents().get(0);
-		private final RuleCall cRequiredRoleRequiredRoleEStringParserRuleCall_4_0_1 = (RuleCall)cRequiredRoleRequiredRoleCrossReference_4_0.eContents().get(1);
-		private final Keyword cProvidedRoleKeyword_5 = (Keyword)cGroup.eContents().get(5);
-		private final Assignment cProvidedRoleAssignment_6 = (Assignment)cGroup.eContents().get(6);
-		private final CrossReference cProvidedRoleProvidedRoleCrossReference_6_0 = (CrossReference)cProvidedRoleAssignment_6.eContents().get(0);
-		private final RuleCall cProvidedRoleProvidedRoleEStringParserRuleCall_6_0_1 = (RuleCall)cProvidedRoleProvidedRoleCrossReference_6_0.eContents().get(1);
-		private final Keyword cProvidingAssemblyContextKeyword_7 = (Keyword)cGroup.eContents().get(7);
-		private final Assignment cProvidingAssemblyContextAssignment_8 = (Assignment)cGroup.eContents().get(8);
-		private final CrossReference cProvidingAssemblyContextAssemblyContextCrossReference_8_0 = (CrossReference)cProvidingAssemblyContextAssignment_8.eContents().get(0);
-		private final RuleCall cProvidingAssemblyContextAssemblyContextEStringParserRuleCall_8_0_1 = (RuleCall)cProvidingAssemblyContextAssemblyContextCrossReference_8_0.eContents().get(1);
-		private final Keyword cRequiringAssemblyContextKeyword_9 = (Keyword)cGroup.eContents().get(9);
-		private final Assignment cRequiringAssemblyContextAssignment_10 = (Assignment)cGroup.eContents().get(10);
-		private final CrossReference cRequiringAssemblyContextAssemblyContextCrossReference_10_0 = (CrossReference)cRequiringAssemblyContextAssignment_10.eContents().get(0);
-		private final RuleCall cRequiringAssemblyContextAssemblyContextEStringParserRuleCall_10_0_1 = (RuleCall)cRequiringAssemblyContextAssemblyContextCrossReference_10_0.eContents().get(1);
-		private final Keyword cRightCurlyBracketKeyword_11 = (Keyword)cGroup.eContents().get(11);
-		
-		//AssemblyConnector returns repository_composites::AssemblyConnector:
-		//
-		//	"AssemblyConnector" name=EString "{" "requiredRole" requiredRole=[repository::RequiredRole|EString] "providedRole"
-		//
-		//	providedRole=[repository::ProvidedRole|EString] "providingAssemblyContext"
-		//
-		//	providingAssemblyContext=[repository_composites::AssemblyContext|EString] "requiringAssemblyContext"
-		//
-		//	requiringAssemblyContext=[repository_composites::AssemblyContext|EString] "}";
-		public ParserRule getRule() { return rule; }
-
-		//"AssemblyConnector" name=EString "{" "requiredRole" requiredRole=[repository::RequiredRole|EString] "providedRole"
-		//
-		//providedRole=[repository::ProvidedRole|EString] "providingAssemblyContext"
-		//
-		//providingAssemblyContext=[repository_composites::AssemblyContext|EString] "requiringAssemblyContext"
-		//
-		//requiringAssemblyContext=[repository_composites::AssemblyContext|EString] "}"
-		public Group getGroup() { return cGroup; }
-
-		//"AssemblyConnector"
-		public Keyword getAssemblyConnectorKeyword_0() { return cAssemblyConnectorKeyword_0; }
-
-		//name=EString
-		public Assignment getNameAssignment_1() { return cNameAssignment_1; }
-
-		//EString
-		public RuleCall getNameEStringParserRuleCall_1_0() { return cNameEStringParserRuleCall_1_0; }
-
-		//"{"
-		public Keyword getLeftCurlyBracketKeyword_2() { return cLeftCurlyBracketKeyword_2; }
-
-		//"requiredRole"
-		public Keyword getRequiredRoleKeyword_3() { return cRequiredRoleKeyword_3; }
-
-		//requiredRole=[repository::RequiredRole|EString]
-		public Assignment getRequiredRoleAssignment_4() { return cRequiredRoleAssignment_4; }
-
-		//[repository::RequiredRole|EString]
-		public CrossReference getRequiredRoleRequiredRoleCrossReference_4_0() { return cRequiredRoleRequiredRoleCrossReference_4_0; }
-
-		//EString
-		public RuleCall getRequiredRoleRequiredRoleEStringParserRuleCall_4_0_1() { return cRequiredRoleRequiredRoleEStringParserRuleCall_4_0_1; }
-
-		//"providedRole"
-		public Keyword getProvidedRoleKeyword_5() { return cProvidedRoleKeyword_5; }
-
-		//providedRole=[repository::ProvidedRole|EString]
-		public Assignment getProvidedRoleAssignment_6() { return cProvidedRoleAssignment_6; }
-
-		//[repository::ProvidedRole|EString]
-		public CrossReference getProvidedRoleProvidedRoleCrossReference_6_0() { return cProvidedRoleProvidedRoleCrossReference_6_0; }
-
-		//EString
-		public RuleCall getProvidedRoleProvidedRoleEStringParserRuleCall_6_0_1() { return cProvidedRoleProvidedRoleEStringParserRuleCall_6_0_1; }
-
-		//"providingAssemblyContext"
-		public Keyword getProvidingAssemblyContextKeyword_7() { return cProvidingAssemblyContextKeyword_7; }
-
-		//providingAssemblyContext=[repository_composites::AssemblyContext|EString]
-		public Assignment getProvidingAssemblyContextAssignment_8() { return cProvidingAssemblyContextAssignment_8; }
-
-		//[repository_composites::AssemblyContext|EString]
-		public CrossReference getProvidingAssemblyContextAssemblyContextCrossReference_8_0() { return cProvidingAssemblyContextAssemblyContextCrossReference_8_0; }
-
-		//EString
-		public RuleCall getProvidingAssemblyContextAssemblyContextEStringParserRuleCall_8_0_1() { return cProvidingAssemblyContextAssemblyContextEStringParserRuleCall_8_0_1; }
-
-		//"requiringAssemblyContext"
-		public Keyword getRequiringAssemblyContextKeyword_9() { return cRequiringAssemblyContextKeyword_9; }
-
-		//requiringAssemblyContext=[repository_composites::AssemblyContext|EString]
-		public Assignment getRequiringAssemblyContextAssignment_10() { return cRequiringAssemblyContextAssignment_10; }
-
-		//[repository_composites::AssemblyContext|EString]
-		public CrossReference getRequiringAssemblyContextAssemblyContextCrossReference_10_0() { return cRequiringAssemblyContextAssemblyContextCrossReference_10_0; }
-
-		//EString
-		public RuleCall getRequiringAssemblyContextAssemblyContextEStringParserRuleCall_10_0_1() { return cRequiringAssemblyContextAssemblyContextEStringParserRuleCall_10_0_1; }
-
-		//"}"
-		public Keyword getRightCurlyBracketKeyword_11() { return cRightCurlyBracketKeyword_11; }
-	}
-
-	public class ProvidedDelegationConnectorElements extends AbstractParserRuleElementFinder {
-		private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "ProvidedDelegationConnector");
-		private final Group cGroup = (Group)rule.eContents().get(1);
-		private final Keyword cProvidedDelegationConnectorKeyword_0 = (Keyword)cGroup.eContents().get(0);
-		private final Assignment cNameAssignment_1 = (Assignment)cGroup.eContents().get(1);
-		private final RuleCall cNameEStringParserRuleCall_1_0 = (RuleCall)cNameAssignment_1.eContents().get(0);
-		private final Keyword cLeftCurlyBracketKeyword_2 = (Keyword)cGroup.eContents().get(2);
-		private final Keyword cAssemblyContextKeyword_3 = (Keyword)cGroup.eContents().get(3);
-		private final Assignment cAssemblyContextAssignment_4 = (Assignment)cGroup.eContents().get(4);
-		private final CrossReference cAssemblyContextAssemblyContextCrossReference_4_0 = (CrossReference)cAssemblyContextAssignment_4.eContents().get(0);
-		private final RuleCall cAssemblyContextAssemblyContextEStringParserRuleCall_4_0_1 = (RuleCall)cAssemblyContextAssemblyContextCrossReference_4_0.eContents().get(1);
-		private final Keyword cInnerProvidedRoleKeyword_5 = (Keyword)cGroup.eContents().get(5);
-		private final Assignment cInnerProvidedRoleAssignment_6 = (Assignment)cGroup.eContents().get(6);
-		private final CrossReference cInnerProvidedRoleProvidedRoleCrossReference_6_0 = (CrossReference)cInnerProvidedRoleAssignment_6.eContents().get(0);
-		private final RuleCall cInnerProvidedRoleProvidedRoleEStringParserRuleCall_6_0_1 = (RuleCall)cInnerProvidedRoleProvidedRoleCrossReference_6_0.eContents().get(1);
-		private final Keyword cOuterProvidedRoleKeyword_7 = (Keyword)cGroup.eContents().get(7);
-		private final Assignment cOuterProvidedRoleAssignment_8 = (Assignment)cGroup.eContents().get(8);
-		private final CrossReference cOuterProvidedRoleProvidedRoleCrossReference_8_0 = (CrossReference)cOuterProvidedRoleAssignment_8.eContents().get(0);
-		private final RuleCall cOuterProvidedRoleProvidedRoleEStringParserRuleCall_8_0_1 = (RuleCall)cOuterProvidedRoleProvidedRoleCrossReference_8_0.eContents().get(1);
-		private final Keyword cRightCurlyBracketKeyword_9 = (Keyword)cGroup.eContents().get(9);
-		
-		//ProvidedDelegationConnector returns repository_composites::ProvidedDelegationConnector:
-		//
-		//	"ProvidedDelegationConnector" name=EString "{" "assemblyContext"
-		//
-		//	assemblyContext=[repository_composites::AssemblyContext|EString] "innerProvidedRole"
-		//
-		//	innerProvidedRole=[repository::ProvidedRole|EString] "outerProvidedRole"
-		//
-		//	outerProvidedRole=[repository::ProvidedRole|EString] "}";
-		public ParserRule getRule() { return rule; }
-
-		//"ProvidedDelegationConnector" name=EString "{" "assemblyContext"
-		//
-		//assemblyContext=[repository_composites::AssemblyContext|EString] "innerProvidedRole"
-		//
-		//innerProvidedRole=[repository::ProvidedRole|EString] "outerProvidedRole"
-		//
-		//outerProvidedRole=[repository::ProvidedRole|EString] "}"
-		public Group getGroup() { return cGroup; }
-
-		//"ProvidedDelegationConnector"
-		public Keyword getProvidedDelegationConnectorKeyword_0() { return cProvidedDelegationConnectorKeyword_0; }
-
-		//name=EString
-		public Assignment getNameAssignment_1() { return cNameAssignment_1; }
-
-		//EString
-		public RuleCall getNameEStringParserRuleCall_1_0() { return cNameEStringParserRuleCall_1_0; }
-
-		//"{"
-		public Keyword getLeftCurlyBracketKeyword_2() { return cLeftCurlyBracketKeyword_2; }
-
-		//"assemblyContext"
-		public Keyword getAssemblyContextKeyword_3() { return cAssemblyContextKeyword_3; }
-
-		//assemblyContext=[repository_composites::AssemblyContext|EString]
-		public Assignment getAssemblyContextAssignment_4() { return cAssemblyContextAssignment_4; }
-
-		//[repository_composites::AssemblyContext|EString]
-		public CrossReference getAssemblyContextAssemblyContextCrossReference_4_0() { return cAssemblyContextAssemblyContextCrossReference_4_0; }
-
-		//EString
-		public RuleCall getAssemblyContextAssemblyContextEStringParserRuleCall_4_0_1() { return cAssemblyContextAssemblyContextEStringParserRuleCall_4_0_1; }
-
-		//"innerProvidedRole"
-		public Keyword getInnerProvidedRoleKeyword_5() { return cInnerProvidedRoleKeyword_5; }
-
-		//innerProvidedRole=[repository::ProvidedRole|EString]
-		public Assignment getInnerProvidedRoleAssignment_6() { return cInnerProvidedRoleAssignment_6; }
-
-		//[repository::ProvidedRole|EString]
-		public CrossReference getInnerProvidedRoleProvidedRoleCrossReference_6_0() { return cInnerProvidedRoleProvidedRoleCrossReference_6_0; }
-
-		//EString
-		public RuleCall getInnerProvidedRoleProvidedRoleEStringParserRuleCall_6_0_1() { return cInnerProvidedRoleProvidedRoleEStringParserRuleCall_6_0_1; }
-
-		//"outerProvidedRole"
-		public Keyword getOuterProvidedRoleKeyword_7() { return cOuterProvidedRoleKeyword_7; }
-
-		//outerProvidedRole=[repository::ProvidedRole|EString]
-		public Assignment getOuterProvidedRoleAssignment_8() { return cOuterProvidedRoleAssignment_8; }
-
-		//[repository::ProvidedRole|EString]
-		public CrossReference getOuterProvidedRoleProvidedRoleCrossReference_8_0() { return cOuterProvidedRoleProvidedRoleCrossReference_8_0; }
-
-		//EString
-		public RuleCall getOuterProvidedRoleProvidedRoleEStringParserRuleCall_8_0_1() { return cOuterProvidedRoleProvidedRoleEStringParserRuleCall_8_0_1; }
-
-		//"}"
-		public Keyword getRightCurlyBracketKeyword_9() { return cRightCurlyBracketKeyword_9; }
-	}
-
-	public class RequiredDelegationConnectorElements extends AbstractParserRuleElementFinder {
-		private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "RequiredDelegationConnector");
-		private final Group cGroup = (Group)rule.eContents().get(1);
-		private final Keyword cRequiredDelegationConnectorKeyword_0 = (Keyword)cGroup.eContents().get(0);
-		private final Assignment cNameAssignment_1 = (Assignment)cGroup.eContents().get(1);
-		private final RuleCall cNameEStringParserRuleCall_1_0 = (RuleCall)cNameAssignment_1.eContents().get(0);
-		private final Keyword cLeftCurlyBracketKeyword_2 = (Keyword)cGroup.eContents().get(2);
-		private final Keyword cAssemblyContextKeyword_3 = (Keyword)cGroup.eContents().get(3);
-		private final Assignment cAssemblyContextAssignment_4 = (Assignment)cGroup.eContents().get(4);
-		private final CrossReference cAssemblyContextAssemblyContextCrossReference_4_0 = (CrossReference)cAssemblyContextAssignment_4.eContents().get(0);
-		private final RuleCall cAssemblyContextAssemblyContextEStringParserRuleCall_4_0_1 = (RuleCall)cAssemblyContextAssemblyContextCrossReference_4_0.eContents().get(1);
-		private final Keyword cInnerRequiredRoleKeyword_5 = (Keyword)cGroup.eContents().get(5);
-		private final Assignment cInnerRequiredRoleAssignment_6 = (Assignment)cGroup.eContents().get(6);
-		private final CrossReference cInnerRequiredRoleRequiredRoleCrossReference_6_0 = (CrossReference)cInnerRequiredRoleAssignment_6.eContents().get(0);
-		private final RuleCall cInnerRequiredRoleRequiredRoleEStringParserRuleCall_6_0_1 = (RuleCall)cInnerRequiredRoleRequiredRoleCrossReference_6_0.eContents().get(1);
-		private final Keyword cOuterRequiredRoleKeyword_7 = (Keyword)cGroup.eContents().get(7);
-		private final Assignment cOuterRequiredRoleAssignment_8 = (Assignment)cGroup.eContents().get(8);
-		private final CrossReference cOuterRequiredRoleRequiredRoleCrossReference_8_0 = (CrossReference)cOuterRequiredRoleAssignment_8.eContents().get(0);
-		private final RuleCall cOuterRequiredRoleRequiredRoleEStringParserRuleCall_8_0_1 = (RuleCall)cOuterRequiredRoleRequiredRoleCrossReference_8_0.eContents().get(1);
-		private final Keyword cRightCurlyBracketKeyword_9 = (Keyword)cGroup.eContents().get(9);
-		
-		//RequiredDelegationConnector returns repository_composites::RequiredDelegationConnector:
-		//
-		//	"RequiredDelegationConnector" name=EString "{" "assemblyContext"
-		//
-		//	assemblyContext=[repository_composites::AssemblyContext|EString] "innerRequiredRole"
-		//
-		//	innerRequiredRole=[repository::RequiredRole|EString] "outerRequiredRole"
-		//
-		//	outerRequiredRole=[repository::RequiredRole|EString] "}";
-		public ParserRule getRule() { return rule; }
-
-		//"RequiredDelegationConnector" name=EString "{" "assemblyContext"
-		//
-		//assemblyContext=[repository_composites::AssemblyContext|EString] "innerRequiredRole"
-		//
-		//innerRequiredRole=[repository::RequiredRole|EString] "outerRequiredRole"
-		//
-		//outerRequiredRole=[repository::RequiredRole|EString] "}"
-		public Group getGroup() { return cGroup; }
-
-		//"RequiredDelegationConnector"
-		public Keyword getRequiredDelegationConnectorKeyword_0() { return cRequiredDelegationConnectorKeyword_0; }
-
-		//name=EString
-		public Assignment getNameAssignment_1() { return cNameAssignment_1; }
-
-		//EString
-		public RuleCall getNameEStringParserRuleCall_1_0() { return cNameEStringParserRuleCall_1_0; }
-
-		//"{"
-		public Keyword getLeftCurlyBracketKeyword_2() { return cLeftCurlyBracketKeyword_2; }
-
-		//"assemblyContext"
-		public Keyword getAssemblyContextKeyword_3() { return cAssemblyContextKeyword_3; }
-
-		//assemblyContext=[repository_composites::AssemblyContext|EString]
-		public Assignment getAssemblyContextAssignment_4() { return cAssemblyContextAssignment_4; }
-
-		//[repository_composites::AssemblyContext|EString]
-		public CrossReference getAssemblyContextAssemblyContextCrossReference_4_0() { return cAssemblyContextAssemblyContextCrossReference_4_0; }
-
-		//EString
-		public RuleCall getAssemblyContextAssemblyContextEStringParserRuleCall_4_0_1() { return cAssemblyContextAssemblyContextEStringParserRuleCall_4_0_1; }
-
-		//"innerRequiredRole"
-		public Keyword getInnerRequiredRoleKeyword_5() { return cInnerRequiredRoleKeyword_5; }
-
-		//innerRequiredRole=[repository::RequiredRole|EString]
-		public Assignment getInnerRequiredRoleAssignment_6() { return cInnerRequiredRoleAssignment_6; }
-
-		//[repository::RequiredRole|EString]
-		public CrossReference getInnerRequiredRoleRequiredRoleCrossReference_6_0() { return cInnerRequiredRoleRequiredRoleCrossReference_6_0; }
-
-		//EString
-		public RuleCall getInnerRequiredRoleRequiredRoleEStringParserRuleCall_6_0_1() { return cInnerRequiredRoleRequiredRoleEStringParserRuleCall_6_0_1; }
-
-		//"outerRequiredRole"
-		public Keyword getOuterRequiredRoleKeyword_7() { return cOuterRequiredRoleKeyword_7; }
-
-		//outerRequiredRole=[repository::RequiredRole|EString]
-		public Assignment getOuterRequiredRoleAssignment_8() { return cOuterRequiredRoleAssignment_8; }
-
-		//[repository::RequiredRole|EString]
-		public CrossReference getOuterRequiredRoleRequiredRoleCrossReference_8_0() { return cOuterRequiredRoleRequiredRoleCrossReference_8_0; }
-
-		//EString
-		public RuleCall getOuterRequiredRoleRequiredRoleEStringParserRuleCall_8_0_1() { return cOuterRequiredRoleRequiredRoleEStringParserRuleCall_8_0_1; }
-
-		//"}"
-		public Keyword getRightCurlyBracketKeyword_9() { return cRightCurlyBracketKeyword_9; }
-	}
-	
-	
-	public class PrimitiveTypeEnumElements extends AbstractEnumRuleElementFinder {
-		private final EnumRule rule = (EnumRule) GrammarUtil.findRuleForName(getGrammar(), "PrimitiveTypeEnum");
-		private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
-		private final EnumLiteralDeclaration cINTEnumLiteralDeclaration_0 = (EnumLiteralDeclaration)cAlternatives.eContents().get(0);
-		private final Keyword cINTINTKeyword_0_0 = (Keyword)cINTEnumLiteralDeclaration_0.eContents().get(0);
-		private final EnumLiteralDeclaration cSTRINGEnumLiteralDeclaration_1 = (EnumLiteralDeclaration)cAlternatives.eContents().get(1);
-		private final Keyword cSTRINGSTRINGKeyword_1_0 = (Keyword)cSTRINGEnumLiteralDeclaration_1.eContents().get(0);
-		private final EnumLiteralDeclaration cBOOLEnumLiteralDeclaration_2 = (EnumLiteralDeclaration)cAlternatives.eContents().get(2);
-		private final Keyword cBOOLBOOLKeyword_2_0 = (Keyword)cBOOLEnumLiteralDeclaration_2.eContents().get(0);
-		private final EnumLiteralDeclaration cDOUBLEEnumLiteralDeclaration_3 = (EnumLiteralDeclaration)cAlternatives.eContents().get(3);
-		private final Keyword cDOUBLEDOUBLEKeyword_3_0 = (Keyword)cDOUBLEEnumLiteralDeclaration_3.eContents().get(0);
-		private final EnumLiteralDeclaration cCHAREnumLiteralDeclaration_4 = (EnumLiteralDeclaration)cAlternatives.eContents().get(4);
-		private final Keyword cCHARCHARKeyword_4_0 = (Keyword)cCHAREnumLiteralDeclaration_4.eContents().get(0);
-		private final EnumLiteralDeclaration cBYTEEnumLiteralDeclaration_5 = (EnumLiteralDeclaration)cAlternatives.eContents().get(5);
-		private final Keyword cBYTEBYTEKeyword_5_0 = (Keyword)cBYTEEnumLiteralDeclaration_5.eContents().get(0);
-		private final EnumLiteralDeclaration cLONGEnumLiteralDeclaration_6 = (EnumLiteralDeclaration)cAlternatives.eContents().get(6);
-		private final Keyword cLONGLONGKeyword_6_0 = (Keyword)cLONGEnumLiteralDeclaration_6.eContents().get(0);
-		
-		//enum PrimitiveTypeEnum returns repository::PrimitiveTypeEnum:
-		//
-		//	INT | STRING | BOOL | DOUBLE | CHAR | BYTE | LONG;
-		public EnumRule getRule() { return rule; }
-
-		//INT | STRING | BOOL | DOUBLE | CHAR | BYTE | LONG
-		public Alternatives getAlternatives() { return cAlternatives; }
-
-		//INT
-		public EnumLiteralDeclaration getINTEnumLiteralDeclaration_0() { return cINTEnumLiteralDeclaration_0; }
-
-		//"INT"
-		public Keyword getINTINTKeyword_0_0() { return cINTINTKeyword_0_0; }
-
-		//STRING
-		public EnumLiteralDeclaration getSTRINGEnumLiteralDeclaration_1() { return cSTRINGEnumLiteralDeclaration_1; }
-
-		//"STRING"
-		public Keyword getSTRINGSTRINGKeyword_1_0() { return cSTRINGSTRINGKeyword_1_0; }
-
-		//BOOL
-		public EnumLiteralDeclaration getBOOLEnumLiteralDeclaration_2() { return cBOOLEnumLiteralDeclaration_2; }
-
-		//"BOOL"
-		public Keyword getBOOLBOOLKeyword_2_0() { return cBOOLBOOLKeyword_2_0; }
-
-		//DOUBLE
-		public EnumLiteralDeclaration getDOUBLEEnumLiteralDeclaration_3() { return cDOUBLEEnumLiteralDeclaration_3; }
-
-		//"DOUBLE"
-		public Keyword getDOUBLEDOUBLEKeyword_3_0() { return cDOUBLEDOUBLEKeyword_3_0; }
-
-		//CHAR
-		public EnumLiteralDeclaration getCHAREnumLiteralDeclaration_4() { return cCHAREnumLiteralDeclaration_4; }
-
-		//"CHAR"
-		public Keyword getCHARCHARKeyword_4_0() { return cCHARCHARKeyword_4_0; }
-
-		//BYTE
-		public EnumLiteralDeclaration getBYTEEnumLiteralDeclaration_5() { return cBYTEEnumLiteralDeclaration_5; }
-
-		//"BYTE"
-		public Keyword getBYTEBYTEKeyword_5_0() { return cBYTEBYTEKeyword_5_0; }
-
-		//LONG
-		public EnumLiteralDeclaration getLONGEnumLiteralDeclaration_6() { return cLONGEnumLiteralDeclaration_6; }
-
-		//"LONG"
-		public Keyword getLONGLONGKeyword_6_0() { return cLONGLONGKeyword_6_0; }
-	}
-	
-	private RepositoryElements pRepository;
-	private ImportElements pImport;
-	private QualifiedNameWithWildCardElements pQualifiedNameWithWildCard;
-	private QualifiedNameElements pQualifiedName;
-	private DataTypeElements pDataType;
-	private RepositoryComponentElements pRepositoryComponent;
-	private EStringElements pEString;
-	private InterfaceElements pInterface;
-	private RepositoryComponent_ImplElements pRepositoryComponent_Impl;
-	private CollectionDataTypeElements pCollectionDataType;
-	private CompositeDataTypeElements pCompositeDataType;
-	private PrimitiveDataTypeElements pPrimitiveDataType;
-	private InnerDeclarationElements pInnerDeclaration;
-	private PrimitiveTypeEnumElements unknownRulePrimitiveTypeEnum;
-	private SignatureElements pSignature;
-	private ParameterElements pParameter;
-	private ProvidedRoleElements pProvidedRole;
-	private RequiredRoleElements pRequiredRole;
-	private BasicComponentElements pBasicComponent;
-	private CompositeComponentElements pCompositeComponent;
-	private SubSystemElements pSubSystem;
-	private ComposedStructureAssemblyElements pComposedStructureAssembly;
-	private AssemblyContextElements pAssemblyContext;
-	private AssemblyConnectorElements pAssemblyConnector;
-	private ProvidedDelegationConnectorElements pProvidedDelegationConnector;
-	private RequiredDelegationConnectorElements pRequiredDelegationConnector;
-	
-	private final Grammar grammar;
-
-	private TerminalsGrammarAccess gaTerminals;
-
-	@Inject
-	public MyDslTestGrammarAccess(GrammarProvider grammarProvider,
-		TerminalsGrammarAccess gaTerminals) {
-		this.grammar = internalFindGrammar(grammarProvider);
-		this.gaTerminals = gaTerminals;
-	}
-	
-	protected Grammar internalFindGrammar(GrammarProvider grammarProvider) {
-		Grammar grammar = grammarProvider.getGrammar(this);
-		while (grammar != null) {
-			if ("org.xtext.example.mydsl.MyDslTest".equals(grammar.getName())) {
-				return grammar;
-			}
-			List<Grammar> grammars = grammar.getUsedGrammars();
-			if (!grammars.isEmpty()) {
-				grammar = grammars.iterator().next();
-			} else {
-				return null;
-			}
-		}
-		return grammar;
-	}
-	
-	
-	public Grammar getGrammar() {
-		return grammar;
-	}
-	
-
-	public TerminalsGrammarAccess getTerminalsGrammarAccess() {
-		return gaTerminals;
-	}
-
-	
-	/// *Repository returns repository::Repository:
-	//	'Repository'
-	//	name=QualifiedName
-	//	'{' 
-	//(
-	//		( datatypes+=DataType ) | 
-	//		(interfaces+=Interface) |
-	//		(components+=RepositoryComponent )|
-	//		(imports+=Import)
-	//		
-	//)*
-	//    '}';
-	//    
-	//  * /
-	//
-	//Repository returns repository::Repository:
-	//
-	//	"Repository" name=QualifiedName "{" ("imports" "{" imports+=Import ("," imports+=Import)* "}")? ("datatypes" "{"
-	//
-	//	datatypes+=DataType ("," datatypes+=DataType)* "}")? ("components" "{" components+=RepositoryComponent (";"
-	//
-	//	components+=RepositoryComponent)* "}")? ("interfaces" "{" interfaces+=Interface ("," interfaces+=Interface)* "}")?
-	//
-	//	"}";
-	public RepositoryElements getRepositoryAccess() {
-		return (pRepository != null) ? pRepository : (pRepository = new RepositoryElements());
-	}
-	
-	public ParserRule getRepositoryRule() {
-		return getRepositoryAccess().getRule();
-	}
-
-	//Import returns repository::Import:
-	//
-	//	"import" importedNamespace=QualifiedNameWithWildCard;
-	public ImportElements getImportAccess() {
-		return (pImport != null) ? pImport : (pImport = new ImportElements());
-	}
-	
-	public ParserRule getImportRule() {
-		return getImportAccess().getRule();
-	}
-
-	//QualifiedNameWithWildCard:
-	//
-	//	QualifiedName ("." "*")?;
-	public QualifiedNameWithWildCardElements getQualifiedNameWithWildCardAccess() {
-		return (pQualifiedNameWithWildCard != null) ? pQualifiedNameWithWildCard : (pQualifiedNameWithWildCard = new QualifiedNameWithWildCardElements());
-	}
-	
-	public ParserRule getQualifiedNameWithWildCardRule() {
-		return getQualifiedNameWithWildCardAccess().getRule();
-	}
-
-	//QualifiedName:
-	//
-	//	ID ("." ID)*;
-	public QualifiedNameElements getQualifiedNameAccess() {
-		return (pQualifiedName != null) ? pQualifiedName : (pQualifiedName = new QualifiedNameElements());
-	}
-	
-	public ParserRule getQualifiedNameRule() {
-		return getQualifiedNameAccess().getRule();
-	}
-
-	//DataType returns repository::DataType:
-	//
-	//	CollectionDataType | CompositeDataType | PrimitiveDataType;
-	public DataTypeElements getDataTypeAccess() {
-		return (pDataType != null) ? pDataType : (pDataType = new DataTypeElements());
-	}
-	
-	public ParserRule getDataTypeRule() {
-		return getDataTypeAccess().getRule();
-	}
-
-	//RepositoryComponent returns repository::RepositoryComponent:
-	//
-	//	RepositoryComponent_Impl | BasicComponent | CompositeComponent | SubSystem;
-	public RepositoryComponentElements getRepositoryComponentAccess() {
-		return (pRepositoryComponent != null) ? pRepositoryComponent : (pRepositoryComponent = new RepositoryComponentElements());
-	}
-	
-	public ParserRule getRepositoryComponentRule() {
-		return getRepositoryComponentAccess().getRule();
-	}
-
-	//EString returns ecore::EString:
-	//
-	//	STRING | ID;
-	public EStringElements getEStringAccess() {
-		return (pEString != null) ? pEString : (pEString = new EStringElements());
-	}
-	
-	public ParserRule getEStringRule() {
-		return getEStringAccess().getRule();
-	}
-
-	//Interface returns repository::Interface:
-	//
-	//	"Interface" name=EString "{" ("parentInterfaces" "(" parentInterfaces+=[repository::Interface|EString] (","
-	//
-	//	parentInterfaces+=[repository::Interface|EString])* ")")? (signatures+=Signature ("," signatures+=Signature)*)? "}";
-	public InterfaceElements getInterfaceAccess() {
-		return (pInterface != null) ? pInterface : (pInterface = new InterfaceElements());
-	}
-	
-	public ParserRule getInterfaceRule() {
-		return getInterfaceAccess().getRule();
-	}
-
-	//RepositoryComponent_Impl returns repository::RepositoryComponent:
-	//
-	//	"RepositoryComponent" name=EString "{" ("relationship" "(" relationship+=[Relationship|EString] (","
-	//
-	//	relationship+=[Relationship|EString])* ")")? ("providedRoles" "{" providedRoles+=ProvidedRole (","
-	//
-	//	providedRoles+=ProvidedRole)* "}")? ("requiredRoles" "{" requiredRoles+=RequiredRole (","
-	//
-	//	requiredRoles+=RequiredRole)* "}")? "}";
-	public RepositoryComponent_ImplElements getRepositoryComponent_ImplAccess() {
-		return (pRepositoryComponent_Impl != null) ? pRepositoryComponent_Impl : (pRepositoryComponent_Impl = new RepositoryComponent_ImplElements());
-	}
-	
-	public ParserRule getRepositoryComponent_ImplRule() {
-		return getRepositoryComponent_ImplAccess().getRule();
-	}
-
-	//CollectionDataType returns repository::CollectionDataType:
-	//
-	//	"CollectionDataType" name=EString "{" "innerType" innerType=[repository::DataType|EString] "}";
-	public CollectionDataTypeElements getCollectionDataTypeAccess() {
-		return (pCollectionDataType != null) ? pCollectionDataType : (pCollectionDataType = new CollectionDataTypeElements());
-	}
-	
-	public ParserRule getCollectionDataTypeRule() {
-		return getCollectionDataTypeAccess().getRule();
-	}
-
-	//CompositeDataType returns repository::CompositeDataType:
-	//
-	//	"CompositeDataType" name=EString "{" ("parentTypes" "(" parentTypes+=[repository::CompositeDataType|EString] (","
-	//
-	//	parentTypes+=[repository::CompositeDataType|EString])* ")")? ("innerDeclarations" "{"
-	//
-	//	innerDeclarations+=InnerDeclaration ("," innerDeclarations+=InnerDeclaration)* "}")? "}";
-	public CompositeDataTypeElements getCompositeDataTypeAccess() {
-		return (pCompositeDataType != null) ? pCompositeDataType : (pCompositeDataType = new CompositeDataTypeElements());
-	}
-	
-	public ParserRule getCompositeDataTypeRule() {
-		return getCompositeDataTypeAccess().getRule();
-	}
-
-	//PrimitiveDataType returns repository::PrimitiveDataType:
-	//
-	//	"PrimitiveDataType" "{" "type" type=PrimitiveTypeEnum "ref" name=EString "}";
-	public PrimitiveDataTypeElements getPrimitiveDataTypeAccess() {
-		return (pPrimitiveDataType != null) ? pPrimitiveDataType : (pPrimitiveDataType = new PrimitiveDataTypeElements());
-	}
-	
-	public ParserRule getPrimitiveDataTypeRule() {
-		return getPrimitiveDataTypeAccess().getRule();
-	}
-
-	//InnerDeclaration returns repository::InnerDeclaration:
-	//
-	//	"InnerDeclaration" name=EString "{" "dataType" dataType=[repository::DataType|EString] "}";
-	public InnerDeclarationElements getInnerDeclarationAccess() {
-		return (pInnerDeclaration != null) ? pInnerDeclaration : (pInnerDeclaration = new InnerDeclarationElements());
-	}
-	
-	public ParserRule getInnerDeclarationRule() {
-		return getInnerDeclarationAccess().getRule();
-	}
-
-	//enum PrimitiveTypeEnum returns repository::PrimitiveTypeEnum:
-	//
-	//	INT | STRING | BOOL | DOUBLE | CHAR | BYTE | LONG;
-	public PrimitiveTypeEnumElements getPrimitiveTypeEnumAccess() {
-		return (unknownRulePrimitiveTypeEnum != null) ? unknownRulePrimitiveTypeEnum : (unknownRulePrimitiveTypeEnum = new PrimitiveTypeEnumElements());
-	}
-	
-	public EnumRule getPrimitiveTypeEnumRule() {
-		return getPrimitiveTypeEnumAccess().getRule();
-	}
-
-	//Signature returns repository::Signature:
-	//
-	//	(returnType=[repository::DataType|EString] | "void") name=EString "(" (parameters+=Parameter (","
-	//
-	//	parameters+=Parameter)*)? ")";
-	public SignatureElements getSignatureAccess() {
-		return (pSignature != null) ? pSignature : (pSignature = new SignatureElements());
-	}
-	
-	public ParserRule getSignatureRule() {
-		return getSignatureAccess().getRule();
-	}
-
-	//Parameter returns repository::Parameter:
-	//
-	//	dataType=[repository::DataType|EString] name=EString;
-	public ParameterElements getParameterAccess() {
-		return (pParameter != null) ? pParameter : (pParameter = new ParameterElements());
-	}
-	
-	public ParserRule getParameterRule() {
-		return getParameterAccess().getRule();
-	}
-
-	//ProvidedRole returns repository::ProvidedRole:
-	//
-	//	"ProvidedRole" interface=[repository::Interface|EString] ","?;
-	public ProvidedRoleElements getProvidedRoleAccess() {
-		return (pProvidedRole != null) ? pProvidedRole : (pProvidedRole = new ProvidedRoleElements());
-	}
-	
-	public ParserRule getProvidedRoleRule() {
-		return getProvidedRoleAccess().getRule();
-	}
-
-	//RequiredRole returns repository::RequiredRole:
-	//
-	//	"RequiredRole" interface=[repository::Interface|EString] ","?;
-	public RequiredRoleElements getRequiredRoleAccess() {
-		return (pRequiredRole != null) ? pRequiredRole : (pRequiredRole = new RequiredRoleElements());
-	}
-	
-	public ParserRule getRequiredRoleRule() {
-		return getRequiredRoleAccess().getRule();
-	}
-
-	//BasicComponent returns repository::BasicComponent:
-	//
-	//	"BasicComponent" name=EString (providedRoles+=ProvidedRole ("," providedRoles+=ProvidedRole)*)?
-	//
-	//	(requiredRoles+=RequiredRole ("," requiredRoles+=RequiredRole)*)? "{" ("relationship" "("
-	//
-	//	relationship+=[Relationship|EString] ("," relationship+=[Relationship|EString])* ")")? "}";
-	public BasicComponentElements getBasicComponentAccess() {
-		return (pBasicComponent != null) ? pBasicComponent : (pBasicComponent = new BasicComponentElements());
-	}
-	
-	public ParserRule getBasicComponentRule() {
-		return getBasicComponentAccess().getRule();
-	}
-
-	//CompositeComponent returns repository::CompositeComponent:
-	//
-	//	"CompositeComponent" name=EString (providedRoles+=ProvidedRole ("," providedRoles+=ProvidedRole)*)?
-	//
-	//	(requiredRoles+=RequiredRole ("," requiredRoles+=RequiredRole)*)? "{" ("relationship" "("
-	//
-	//	relationship+=[Relationship|EString] ("," relationship+=[Relationship|EString])* ")")? ("assembly"
-	//
-	//	assembly=ComposedStructureAssembly)? "}";
-	public CompositeComponentElements getCompositeComponentAccess() {
-		return (pCompositeComponent != null) ? pCompositeComponent : (pCompositeComponent = new CompositeComponentElements());
-	}
-	
-	public ParserRule getCompositeComponentRule() {
-		return getCompositeComponentAccess().getRule();
-	}
-
-	//SubSystem returns repository::SubSystem:
-	//
-	//	"SubSystem" name=EString ("providedRoles" "{" providedRoles+=ProvidedRole ("," providedRoles+=ProvidedRole)* "}")?
-	//
-	//	("requiredRoles" "{" requiredRoles+=RequiredRole ("," requiredRoles+=RequiredRole)* "}")? "{" ("relationship" "("
-	//
-	//	relationship+=[Relationship|EString] ("," relationship+=[Relationship|EString])* ")")? ("assembly"
-	//
-	//	assembly=ComposedStructureAssembly)? "}";
-	public SubSystemElements getSubSystemAccess() {
-		return (pSubSystem != null) ? pSubSystem : (pSubSystem = new SubSystemElements());
-	}
-	
-	public ParserRule getSubSystemRule() {
-		return getSubSystemAccess().getRule();
-	}
-
-	//ComposedStructureAssembly returns repository_composites::ComposedStructureAssembly:
-	//
-	//	{repository_composites::ComposedStructureAssembly} "ComposedStructureAssembly" "{" ("assemblyContexts" "{"
-	//
-	//	assemblyContexts+=AssemblyContext ("," assemblyContexts+=AssemblyContext)* "}")? ("assemblyConnectors" "{"
-	//
-	//	assemblyConnectors+=AssemblyConnector ("," assemblyConnectors+=AssemblyConnector)* "}")?
-	//
-	//	("providedDelegationConnectors" "{" providedDelegationConnectors+=ProvidedDelegationConnector (","
-	//
-	//	providedDelegationConnectors+=ProvidedDelegationConnector)* "}")? ("requiredDelegationConnectors" "{"
-	//
-	//	requiredDelegationConnectors+=RequiredDelegationConnector (","
-	//
-	//	requiredDelegationConnectors+=RequiredDelegationConnector)* "}")? "}";
-	public ComposedStructureAssemblyElements getComposedStructureAssemblyAccess() {
-		return (pComposedStructureAssembly != null) ? pComposedStructureAssembly : (pComposedStructureAssembly = new ComposedStructureAssemblyElements());
-	}
-	
-	public ParserRule getComposedStructureAssemblyRule() {
-		return getComposedStructureAssemblyAccess().getRule();
-	}
-
-	//AssemblyContext returns repository_composites::AssemblyContext:
-	//
-	//	"AssemblyContext" name=EString "{" "encapsulatedComponent"
-	//
-	//	encapsulatedComponent=[repository::RepositoryComponent|EString] "}";
-	public AssemblyContextElements getAssemblyContextAccess() {
-		return (pAssemblyContext != null) ? pAssemblyContext : (pAssemblyContext = new AssemblyContextElements());
-	}
-	
-	public ParserRule getAssemblyContextRule() {
-		return getAssemblyContextAccess().getRule();
-	}
-
-	//AssemblyConnector returns repository_composites::AssemblyConnector:
-	//
-	//	"AssemblyConnector" name=EString "{" "requiredRole" requiredRole=[repository::RequiredRole|EString] "providedRole"
-	//
-	//	providedRole=[repository::ProvidedRole|EString] "providingAssemblyContext"
-	//
-	//	providingAssemblyContext=[repository_composites::AssemblyContext|EString] "requiringAssemblyContext"
-	//
-	//	requiringAssemblyContext=[repository_composites::AssemblyContext|EString] "}";
-	public AssemblyConnectorElements getAssemblyConnectorAccess() {
-		return (pAssemblyConnector != null) ? pAssemblyConnector : (pAssemblyConnector = new AssemblyConnectorElements());
-	}
-	
-	public ParserRule getAssemblyConnectorRule() {
-		return getAssemblyConnectorAccess().getRule();
-	}
-
-	//ProvidedDelegationConnector returns repository_composites::ProvidedDelegationConnector:
-	//
-	//	"ProvidedDelegationConnector" name=EString "{" "assemblyContext"
-	//
-	//	assemblyContext=[repository_composites::AssemblyContext|EString] "innerProvidedRole"
-	//
-	//	innerProvidedRole=[repository::ProvidedRole|EString] "outerProvidedRole"
-	//
-	//	outerProvidedRole=[repository::ProvidedRole|EString] "}";
-	public ProvidedDelegationConnectorElements getProvidedDelegationConnectorAccess() {
-		return (pProvidedDelegationConnector != null) ? pProvidedDelegationConnector : (pProvidedDelegationConnector = new ProvidedDelegationConnectorElements());
-	}
-	
-	public ParserRule getProvidedDelegationConnectorRule() {
-		return getProvidedDelegationConnectorAccess().getRule();
-	}
-
-	//RequiredDelegationConnector returns repository_composites::RequiredDelegationConnector:
-	//
-	//	"RequiredDelegationConnector" name=EString "{" "assemblyContext"
-	//
-	//	assemblyContext=[repository_composites::AssemblyContext|EString] "innerRequiredRole"
-	//
-	//	innerRequiredRole=[repository::RequiredRole|EString] "outerRequiredRole"
-	//
-	//	outerRequiredRole=[repository::RequiredRole|EString] "}";
-	public RequiredDelegationConnectorElements getRequiredDelegationConnectorAccess() {
-		return (pRequiredDelegationConnector != null) ? pRequiredDelegationConnector : (pRequiredDelegationConnector = new RequiredDelegationConnectorElements());
-	}
-	
-	public ParserRule getRequiredDelegationConnectorRule() {
-		return getRequiredDelegationConnectorAccess().getRule();
-	}
-
-	//terminal ID:
-	//
-	//	"^"? ("a".."z" | "A".."Z" | "_") ("a".."z" | "A".."Z" | "_" | "0".."9")*;
-	public TerminalRule getIDRule() {
-		return gaTerminals.getIDRule();
-	} 
-
-	//terminal INT returns ecore::EInt:
-	//
-	//	"0".."9"+;
-	public TerminalRule getINTRule() {
-		return gaTerminals.getINTRule();
-	} 
-
-	//terminal STRING:
-	//
-	//	"\"" ("\\" ("b" | "t" | "n" | "f" | "r" | "u" | "\"" | "\'" | "\\") | !("\\" | "\""))* "\"" | "\'" ("\\" ("b" | "t" |
-	//
-	//	"n" | "f" | "r" | "u" | "\"" | "\'" | "\\") | !("\\" | "\'"))* "\'";
-	public TerminalRule getSTRINGRule() {
-		return gaTerminals.getSTRINGRule();
-	} 
-
-	//terminal ML_COMMENT:
-	//
-	//	"/ *"->"* /";
-	public TerminalRule getML_COMMENTRule() {
-		return gaTerminals.getML_COMMENTRule();
-	} 
-
-	//terminal SL_COMMENT:
-	//
-	//	"//" !("\n" | "\r")* ("\r"? "\n")?;
-	public TerminalRule getSL_COMMENTRule() {
-		return gaTerminals.getSL_COMMENTRule();
-	} 
-
-	//terminal WS:
-	//
-	//	(" " | "\t" | "\r" | "\n")+;
-	public TerminalRule getWSRule() {
-		return gaTerminals.getWSRule();
-	} 
-
-	//terminal ANY_OTHER:
-	//
-	//	.;
-	public TerminalRule getANY_OTHERRule() {
-		return gaTerminals.getANY_OTHERRule();
-	} 
-}
diff --git a/org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/validation/AbstractMyDslTestJavaValidator.java b/org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/validation/AbstractMyDslTestJavaValidator.java
deleted file mode 100644
index bb17eddb..00000000
--- a/org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/validation/AbstractMyDslTestJavaValidator.java
+++ /dev/null
@@ -1,21 +0,0 @@
-package org.xtext.example.mydsl.validation;
- 
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.emf.ecore.EPackage;
-import org.eclipse.xtext.validation.AbstractDeclarativeValidator;
-import org.eclipse.xtext.validation.ComposedChecks;
-
-@ComposedChecks(validators= {org.eclipse.xtext.validation.ImportUriValidator.class, org.eclipse.xtext.validation.NamesAreUniqueValidator.class})
-public class AbstractMyDslTestJavaValidator extends AbstractDeclarativeValidator {
-
-	@Override
-	protected List<EPackage> getEPackages() {
-	    List<EPackage> result = new ArrayList<EPackage>();
-	    result.add(EPackage.Registry.INSTANCE.getEPackage("http://www.descartes-research.net/metamodel/repository/0.1"));
-	    result.add(EPackage.Registry.INSTANCE.getEPackage("http://www.descartes-research.net/metamodel/repository_composites/0.1"));
-		return result;
-	}
-
-}
diff --git a/org.xtext.example.mydslTest/src/org/xtext/example/mydsl/GenerateMyDslTest.mwe2 b/org.xtext.example.mydslTest/src/org/xtext/example/mydsl/GenerateMyDslTest.mwe2
deleted file mode 100644
index 8b27bf65..00000000
--- a/org.xtext.example.mydslTest/src/org/xtext/example/mydsl/GenerateMyDslTest.mwe2
+++ /dev/null
@@ -1,122 +0,0 @@
-module org.xtext.example.mydsl.MyDslTest
-
-import org.eclipse.emf.mwe.utils.*
-import org.eclipse.xtext.generator.*
-import org.eclipse.xtext.ui.generator.*
-
-var grammarURI = "classpath:/org/xtext/example/mydsl/MyDslTest.xtext"
-var file.extensions = "mydslTest"
-var projectName = "org.xtext.example.mydslTest"
-var runtimeProject = "../${projectName}"
-
-Workflow {
-	bean = StandaloneSetup {
-		scanClassPath  = true
-		platformUri = "${runtimeProject}/.."
-		registerGeneratedEPackage = "edu.kit.ipd.descartes.mm.parameterdependencies.ParameterdependenciesPackage"
-		registerGeneratedEPackage = "edu.kit.ipd.descartes.mm.system.SystemPackage"
-		registerGeneratedEPackage = "edu.kit.ipd.descartes.mm.repository.RepositoryPackage"
-		registerGeneratedEPackage = "edu.kit.ipd.descartes.mm.repository_composites.RepositoryCompositesPackage"
-		registerGeneratedEPackage = "edu.kit.ipd.descartes.mm.servicebehavior.ServicebehaviorPackage"
-		registerGeneratedEPackage = "edu.kit.ipd.descartes.mm.functions.FunctionsPackage"
-	
-		// registerGenModelFile = "platform:/resource/edu.kit.ipd.descartes.mm/model/applicationlevel.genmodel"
-	
-	}
-
-	component = DirectoryCleaner {
-		directory = "${runtimeProject}/src-gen"
-	}
-
-	component = DirectoryCleaner {
-		directory = "${runtimeProject}.ui/src-gen"
-	}
-
-	component = Generator {
-		pathRtProject = runtimeProject
-		pathUiProject = "${runtimeProject}.ui"
-		projectNameRt = projectName
-		projectNameUi = "${projectName}.ui"
-		language = {
-			uri = grammarURI
-			fileExtensions = file.extensions
-
-			// Java API to access grammar elements (required by several other fragments)
-			fragment = grammarAccess.GrammarAccessFragment {}
-
-			// generates Java API for the generated EPackages
-			// fragment = ecore.EcoreGeneratorFragment {}
-
-			// the serialization component
-			fragment = parseTreeConstructor.ParseTreeConstructorFragment {}
-
-			// a custom ResourceFactory for use with EMF 
-			fragment = resourceFactory.ResourceFactoryFragment {
-				fileExtensions = file.extensions
-			}
-
-			// the Antlr parser
-			fragment = parser.antlr.XtextAntlrGeneratorFragment {
-				options = {
-					classSplitting = true
-				}
-			}
-
-		// the Ecore2Xtext specific terminal converter
-			fragment = ecore2xtext.Ecore2XtextValueConverterServiceFragment {}
-
-			// java-based API for validation 
-			fragment = validation.JavaValidatorFragment {
-			 composedCheck = "org.eclipse.xtext.validation.ImportUriValidator"
-			 composedCheck = "org.eclipse.xtext.validation.NamesAreUniqueValidator"
-			}
-
-			// scoping and exporting API
-			//fragment = scoping.ImportURIScopingFragment {}
-			//fragment = exporting.SimpleNamesFragment {}
-
-			// scoping and exporting API 
-
-			 fragment = scoping.ImportNamespacesScopingFragment {}
-			 fragment = exporting.QualifiedNamesFragment {}
-			 fragment = builder.BuilderIntegrationFragment {}
-
-			// formatter API 
-			fragment = ecore2xtext.FormatterFragment {}
-
-			// labeling API 
-			fragment = labeling.LabelProviderFragment {}
-
-			// outline API 
-            fragment = outline.OutlineTreeProviderFragment {}
-            fragment = outline.QuickOutlineFragment {}
-
-			// java-based API for content assistance 
-			fragment = contentAssist.JavaBasedContentAssistFragment {}
-
-			// antlr parser generator tailored for content assist 
-			fragment = parser.antlr.XtextAntlrUiGeneratorFragment {
-				options = {
-					classSplitting = true
-				}
-			}
-
-			// provides a compare view
-            fragment = compare.CompareFragment {
-                fileExtensions = file.extensions
-            }
-
-			fragment = builder.BuilderIntegrationFragment {}
-
-			// project wizard (optional) 
-
-			// fragment = projectWizard.SimpleProjectWizardFragment {
-			//		generatorProjectName = "${projectName}.generator" 
-			//		modelFileExtension = file.extensions
-			// }
-
-			// quickfix API 
-			fragment = quickfix.QuickfixProviderFragment {}
-		}
-	}
-}
diff --git a/org.xtext.example.mydslTest/src/org/xtext/example/mydsl/MyDslTest.xtext b/org.xtext.example.mydslTest/src/org/xtext/example/mydsl/MyDslTest.xtext
deleted file mode 100644
index c1508c70..00000000
--- a/org.xtext.example.mydslTest/src/org/xtext/example/mydsl/MyDslTest.xtext
+++ /dev/null
@@ -1,213 +0,0 @@
-// automatically generated by Xtext
-grammar org.xtext.example.mydsl.MyDslTest with org.eclipse.xtext.common.Terminals 
-
-import "platform:/resource/edu.kit.ipd.descartes.mm/model/parameterdependency.ecore" 
-
-import "platform:/resource/edu.kit.ipd.descartes.mm/model/servicebehavior.ecore" as servicebehavior
-
-import "http://www.eclipse.org/emf/2002/Ecore" as ecore
-
-import "platform:/resource/edu.kit.ipd.descartes.mm/model/repository.ecore" as repository
-
-import "platform:/resource/edu.kit.ipd.descartes.mm/model/repository_composites.ecore" as repository_composites
-
-import "platform:/resource/edu.kit.ipd.descartes.mm/model/functions.ecore" as functions
-
-import "platform:/resource/edu.kit.ipd.descartes.mm/model/system.ecore" as system
-
-import "platform:/resource/edu.kit.ipd.descartes.mm/model/resourceconfiguration.ecore" as resourceconfiguration
-
-import "platform:/resource/edu.kit.ipd.descartes.mm/model/resourcetype.ecore" as resourcetype
-
-/*Repository returns repository::Repository:
-	'Repository'
-	name=QualifiedName
-	'{' 
-(
-		( datatypes+=DataType ) | 
-		(interfaces+=Interface) |
-		(components+=RepositoryComponent )|
-		(imports+=Import)
-		
-)*
-    '}';
-    
-  */
-    Repository returns repository::Repository:
-	'Repository'
-	name=QualifiedName
-	'{'
-	     ('imports' '{' imports+=Import ( "," imports+=Import)* '}' )?
-		('datatypes' '{' datatypes+=DataType ( "," datatypes+=DataType)* '}' )?
-		('components' '{' components+=RepositoryComponent ( ";" components+=RepositoryComponent)* '}' )?
-		('interfaces' '{' interfaces+=Interface ( "," interfaces+=Interface)* '}' )?
-		
-    '}';
-
-
-Import returns repository::Import:
-'import' importedNamespace=QualifiedNameWithWildCard;
-
-QualifiedNameWithWildCard:
-QualifiedName ('.' '*')?;
-
-QualifiedName:
-ID ('.' ID)*
-;
-DataType returns repository::DataType:
-	CollectionDataType | CompositeDataType | PrimitiveDataType;
-
-RepositoryComponent returns repository::RepositoryComponent:
-	RepositoryComponent_Impl | BasicComponent | CompositeComponent | SubSystem;
-
-EString returns ecore::EString:
-	STRING | ID;
-
-Interface returns repository::Interface:
-	'Interface'
-	name=EString
-	'{'
-		('parentInterfaces' '(' parentInterfaces+=[repository::Interface|EString] ( "," parentInterfaces+=[repository::Interface|EString])* ')' )?
-		(signatures+=Signature ( "," signatures+=Signature)*)?
-    '}';
-
-RepositoryComponent_Impl returns repository::RepositoryComponent:
-	'RepositoryComponent'
-	name=EString
-	'{'
-		('relationship' '(' relationship+=[Relationship|EString] ( "," relationship+=[Relationship|EString])* ')' )?
-		('providedRoles' '{' providedRoles+=ProvidedRole ( "," providedRoles+=ProvidedRole)* '}' )?
-		('requiredRoles' '{' requiredRoles+=RequiredRole ( "," requiredRoles+=RequiredRole)* '}' )?
-    '}';
-
-CollectionDataType returns repository::CollectionDataType:
-	'CollectionDataType'
-	name=EString
-	'{'
-		'innerType' innerType=[repository::DataType|EString]
-    '}';
-
-CompositeDataType returns repository::CompositeDataType:
-	'CompositeDataType'
-	name=EString
-	'{'
-		('parentTypes' '(' parentTypes+=[repository::CompositeDataType|EString] ( "," parentTypes+=[repository::CompositeDataType|EString])* ')' )?
-		('innerDeclarations' '{' innerDeclarations+=InnerDeclaration ( "," innerDeclarations+=InnerDeclaration)* '}' )?
-    '}';
-
-PrimitiveDataType returns repository::PrimitiveDataType:
-	'PrimitiveDataType'
-	'{'
-		'type' type=PrimitiveTypeEnum
-		'ref' name = EString
-    '}';
-
-InnerDeclaration returns repository::InnerDeclaration:
-	'InnerDeclaration'
-	name=EString
-	'{'
-		'dataType' dataType=[repository::DataType|EString]
-    '}';
-
-enum PrimitiveTypeEnum returns repository::PrimitiveTypeEnum:
-	INT = 'INT' | STRING = 'STRING' | BOOL = 'BOOL' | DOUBLE = 'DOUBLE' | CHAR = 'CHAR' | BYTE = 'BYTE' | LONG = 'LONG';
-
-Signature returns repository::Signature:
-    ((returnType=[repository::DataType|EString])|('void'))
-		name=EString
-		'('
-		(parameters+=Parameter ( "," parameters+=Parameter)*)?
-		')'
-    ;
-
-Parameter returns repository::Parameter:
-    dataType=[repository::DataType|EString]
-		name=EString
-    ; 
-
-ProvidedRole returns repository::ProvidedRole:
-	'ProvidedRole' 
-	(interface=[repository::Interface|EString]) (',')?
-		;
-
-RequiredRole returns repository::RequiredRole:
-	'RequiredRole'
-		(interface=[repository::Interface|EString]) (',')?
-		;
-
-BasicComponent returns repository::BasicComponent:
-	'BasicComponent'
-	name=EString
-	(providedRoles+=ProvidedRole ( "," providedRoles+=ProvidedRole)*)?
-	(requiredRoles+=RequiredRole ( "," requiredRoles+=RequiredRole)*)?
-	'{'
-		('relationship' '(' relationship+=[Relationship|EString] ( "," relationship+=[Relationship|EString])* ')' )?
-    '}'
-    ;
-
-CompositeComponent returns repository::CompositeComponent:
-	'CompositeComponent'
-	name=EString
-	(providedRoles+=ProvidedRole ( "," providedRoles+=ProvidedRole)*)?
-	(requiredRoles+=RequiredRole ( "," requiredRoles+=RequiredRole)*)?
-	'{'
-		('relationship' '(' relationship+=[Relationship|EString] ( "," relationship+=[Relationship|EString])* ')' )?
-		('assembly' assembly=ComposedStructureAssembly)?
-    '}'
-    ;
-
-SubSystem returns repository::SubSystem:
-	'SubSystem'
-	name=EString
-	('providedRoles' '{' providedRoles+=ProvidedRole ( "," providedRoles+=ProvidedRole)* '}' )?
-	('requiredRoles' '{' requiredRoles+=RequiredRole ( "," requiredRoles+=RequiredRole)* '}' )?
-	'{'
-		('relationship' '(' relationship+=[Relationship|EString] ( "," relationship+=[Relationship|EString])* ')' )?
-		('assembly' assembly=ComposedStructureAssembly)?
-    '}'
-    ;
-
-ComposedStructureAssembly returns repository_composites::ComposedStructureAssembly:
-	{repository_composites::ComposedStructureAssembly}
-	'ComposedStructureAssembly'
-	'{'
-		('assemblyContexts' '{' assemblyContexts+=AssemblyContext ( "," assemblyContexts+=AssemblyContext)* '}' )?
-		('assemblyConnectors' '{' assemblyConnectors+=AssemblyConnector ( "," assemblyConnectors+=AssemblyConnector)* '}' )?
-		('providedDelegationConnectors' '{' providedDelegationConnectors+=ProvidedDelegationConnector ( "," providedDelegationConnectors+=ProvidedDelegationConnector)* '}' )?
-		('requiredDelegationConnectors' '{' requiredDelegationConnectors+=RequiredDelegationConnector ( "," requiredDelegationConnectors+=RequiredDelegationConnector)* '}' )?
-    '}';
-
-AssemblyContext returns repository_composites::AssemblyContext:
-	'AssemblyContext'
-	name=EString
-	'{'
-		'encapsulatedComponent' encapsulatedComponent=[repository::RepositoryComponent|EString]
-    '}';
-
-AssemblyConnector returns repository_composites::AssemblyConnector:
-	'AssemblyConnector'
-	name=EString
-	'{'
-		'requiredRole' requiredRole=[repository::RequiredRole|EString]
-		'providedRole' providedRole=[repository::ProvidedRole|EString]
-		'providingAssemblyContext' providingAssemblyContext=[repository_composites::AssemblyContext|EString]
-		'requiringAssemblyContext' requiringAssemblyContext=[repository_composites::AssemblyContext|EString]
-    '}';
-
-ProvidedDelegationConnector returns repository_composites::ProvidedDelegationConnector:
-	'ProvidedDelegationConnector'
-	name=EString
-	'{'
-		'assemblyContext' assemblyContext=[repository_composites::AssemblyContext|EString]
-		'innerProvidedRole' innerProvidedRole=[repository::ProvidedRole|EString]
-		'outerProvidedRole' outerProvidedRole=[repository::ProvidedRole|EString]
-    '}';
-
-RequiredDelegationConnector returns repository_composites::RequiredDelegationConnector:
-	'RequiredDelegationConnector'
-	name=EString
-	'{'
-		'assemblyContext' assemblyContext=[repository_composites::AssemblyContext|EString]
-		'innerRequiredRole' innerRequiredRole=[repository::RequiredRole|EString]
-		'outerRequiredRole' outerRequiredRole=[repository::RequiredRole|EString]
-    '}';
diff --git a/org.xtext.example.mydslTest/src/org/xtext/example/mydsl/MyDslTestRuntimeModule.java b/org.xtext.example.mydslTest/src/org/xtext/example/mydsl/MyDslTestRuntimeModule.java
deleted file mode 100644
index 7aa22fc3..00000000
--- a/org.xtext.example.mydslTest/src/org/xtext/example/mydsl/MyDslTestRuntimeModule.java
+++ /dev/null
@@ -1,11 +0,0 @@
-/*
- * generated by Xtext
- */
-package org.xtext.example.mydsl;
-
-/**
- * Use this class to register components to be used at runtime / without the Equinox extension registry.
- */
-public class MyDslTestRuntimeModule extends org.xtext.example.mydsl.AbstractMyDslTestRuntimeModule {
-
-}
diff --git a/org.xtext.example.mydslTest/src/org/xtext/example/mydsl/MyDslTestStandaloneSetup.java b/org.xtext.example.mydslTest/src/org/xtext/example/mydsl/MyDslTestStandaloneSetup.java
deleted file mode 100644
index 72cc2552..00000000
--- a/org.xtext.example.mydslTest/src/org/xtext/example/mydsl/MyDslTestStandaloneSetup.java
+++ /dev/null
@@ -1,14 +0,0 @@
-
-package org.xtext.example.mydsl;
-
-/**
- * Initialization support for running Xtext languages 
- * without equinox extension registry
- */
-public class MyDslTestStandaloneSetup extends MyDslTestStandaloneSetupGenerated{
-
-	public static void doSetup() {
-		new MyDslTestStandaloneSetup().createInjectorAndDoEMFRegistration();
-	}
-}
-
diff --git a/org.xtext.example.mydslTest/src/org/xtext/example/mydsl/PrimitiveTypeConverter.java b/org.xtext.example.mydslTest/src/org/xtext/example/mydsl/PrimitiveTypeConverter.java
deleted file mode 100644
index 012bf554..00000000
--- a/org.xtext.example.mydslTest/src/org/xtext/example/mydsl/PrimitiveTypeConverter.java
+++ /dev/null
@@ -1,33 +0,0 @@
-package org.xtext.example.mydsl;
-
-import org.eclipse.xtext.common.services.DefaultTerminalConverters;
-import org.eclipse.xtext.conversion.IValueConverter;
-import org.eclipse.xtext.conversion.ValueConverter;
-import org.eclipse.xtext.conversion.ValueConverterException;
-import org.eclipse.xtext.nodemodel.INode;
-
-import edu.kit.ipd.descartes.mm.repository.PrimitiveTypeEnum;
-
-public class PrimitiveTypeConverter extends DefaultTerminalConverters {
-	 @ValueConverter(rule = "PrimitiveTypeEnum")
-	    public IValueConverter<PrimitiveTypeEnum> ElementBound() {
-	        return new IValueConverter<PrimitiveTypeEnum>() {
-	        	
-	            public PrimitiveTypeEnum toValue(String string, INode node) {
-	                if (string == null)
-	                    throw new ValueConverterException("Couldn't convert empty string to int", node, null);
-	                try {
-	                    return Enum.valueOf(PrimitiveTypeEnum.class, string);
-	                } catch (NumberFormatException e) {
-	                    throw new ValueConverterException("Couldn't convert '"+string+"' to int", node,e);
-	                }
-	               
-	            }
-
-				@Override
-				 public String toString(PrimitiveTypeEnum value) {
-	                return value.toString();
-	            }
-	        };
-	 }
-}
\ No newline at end of file
diff --git a/org.xtext.example.mydslTest/src/org/xtext/example/mydsl/formatting/MyDslTestFormatter.java b/org.xtext.example.mydslTest/src/org/xtext/example/mydsl/formatting/MyDslTestFormatter.java
deleted file mode 100644
index 7996cd8a..00000000
--- a/org.xtext.example.mydslTest/src/org/xtext/example/mydsl/formatting/MyDslTestFormatter.java
+++ /dev/null
@@ -1,39 +0,0 @@
-/*
- * generated by Xtext
- */
-package org.xtext.example.mydsl.formatting;
-
-import org.eclipse.xtext.formatting.impl.AbstractDeclarativeFormatter;
-import org.eclipse.xtext.formatting.impl.FormattingConfig;
-import org.eclipse.xtext.Keyword;
-import org.eclipse.xtext.util.Pair;
-
-/**
- * This class contains custom formatting description.
- * 
- * see : http://www.eclipse.org/Xtext/documentation/latest/xtext.html#formatting
- * on how and when to use it 
- * 
- * Also see {@link org.eclipse.xtext.xtext.XtextFormattingTokenSerializer} as an example
- */
-public class MyDslTestFormatter extends AbstractDeclarativeFormatter {
-	
-	@Override
-	protected void configureFormatting(FormattingConfig c) {
-		org.xtext.example.mydsl.services.MyDslTestGrammarAccess f = (org.xtext.example.mydsl.services.MyDslTestGrammarAccess) getGrammarAccess();
-		for(Pair<Keyword, Keyword> pair: f.findKeywordPairs("{", "}")) {
-			c.setIndentation(pair.getFirst(), pair.getSecond());
-			c.setLinewrap(1).after(pair.getFirst());
-			c.setLinewrap(1).before(pair.getSecond());
-			c.setLinewrap(1).after(pair.getSecond());
-		}
-		for(Keyword comma: f.findKeywords(",")) {
-			c.setNoLinewrap().before(comma);
-			c.setNoSpace().before(comma);
-			c.setLinewrap().after(comma);
-		}
-		c.setLinewrap(0, 1, 2).before(f.getSL_COMMENTRule());
-		c.setLinewrap(0, 1, 2).before(f.getML_COMMENTRule());
-		c.setLinewrap(0, 1, 1).after(f.getML_COMMENTRule());
-	}
-}
diff --git a/org.xtext.example.mydslTest/src/org/xtext/example/mydsl/scoping/MyDslTestScopeProvider.java b/org.xtext.example.mydslTest/src/org/xtext/example/mydsl/scoping/MyDslTestScopeProvider.java
deleted file mode 100644
index 20f3604b..00000000
--- a/org.xtext.example.mydslTest/src/org/xtext/example/mydsl/scoping/MyDslTestScopeProvider.java
+++ /dev/null
@@ -1,17 +0,0 @@
-/*
- * generated by Xtext
- */
-package org.xtext.example.mydsl.scoping;
-
-import org.eclipse.xtext.scoping.impl.AbstractDeclarativeScopeProvider;
-
-/**
- * This class contains custom scoping description.
- * 
- * see : http://www.eclipse.org/Xtext/documentation/latest/xtext.html#scoping
- * on how and when to use it 
- *
- */
-public class MyDslTestScopeProvider extends AbstractDeclarativeScopeProvider {
-
-}
diff --git a/org.xtext.example.mydslTest/src/org/xtext/example/mydsl/validation/MyDslTestJavaValidator.java b/org.xtext.example.mydslTest/src/org/xtext/example/mydsl/validation/MyDslTestJavaValidator.java
deleted file mode 100644
index b392fff1..00000000
--- a/org.xtext.example.mydslTest/src/org/xtext/example/mydsl/validation/MyDslTestJavaValidator.java
+++ /dev/null
@@ -1,13 +0,0 @@
-package org.xtext.example.mydsl.validation;
- 
-
-public class MyDslTestJavaValidator extends AbstractMyDslTestJavaValidator {
-
-//	@Check
-//	public void checkGreetingStartsWithCapital(Greeting greeting) {
-//		if (!Character.isUpperCase(greeting.getName().charAt(0))) {
-//			warning("Name should start with a capital", MyDslPackage.Literals.GREETING__NAME);
-//		}
-//	}
-
-}
-- 
GitLab