From 7c20159a8c12c8bfb3a7e09bd32878a91b101eae Mon Sep 17 00:00:00 2001
From: Steffen Slavetinsky <s_slavet@ira.uka.de>
Date: Sun, 15 Dec 2013 15:34:52 +0000
Subject: [PATCH] git-svn-id:
 https://se1.informatik.uni-wuerzburg.de/usvn/svn/code/code/DMM/trunk@13965
 9e42b895-fcda-4063-8a3b-11be15eb1bbd

---
 .../antlr/internal/InternalStaLang.g          |    4 +-
 .../antlr/internal/InternalStaLangParser.java |  178 +-
 .../edu/kit/ipd/descartes/StaLang.xtextbin    |  Bin 12920 -> 12921 bytes
 .../parser/antlr/internal/InternalStaLang.g   |   16 +-
 .../antlr/internal/InternalStaLang.tokens     |    4 +-
 .../antlr/internal/InternalStaLangLexer.java  |    4 +-
 .../antlr/internal/InternalStaLangParser.java | 1740 +++++++++--------
 .../AbstractStaLangSemanticSequencer.java     |    2 +-
 .../services/StaLangGrammarAccess.java        |   14 +-
 9 files changed, 986 insertions(+), 976 deletions(-)

diff --git a/edu.kit.ipd.descartes.mm.adaptation.sta.ui/src-gen/edu/kit/ipd/descartes/ui/contentassist/antlr/internal/InternalStaLang.g b/edu.kit.ipd.descartes.mm.adaptation.sta.ui/src-gen/edu/kit/ipd/descartes/ui/contentassist/antlr/internal/InternalStaLang.g
index 61dc69b2..7fa28a92 100644
--- a/edu.kit.ipd.descartes.mm.adaptation.sta.ui/src-gen/edu/kit/ipd/descartes/ui/contentassist/antlr/internal/InternalStaLang.g
+++ b/edu.kit.ipd.descartes.mm.adaptation.sta.ui/src-gen/edu/kit/ipd/descartes/ui/contentassist/antlr/internal/InternalStaLang.g
@@ -13565,8 +13565,8 @@ rule__AdaptationProcess__NameAssignment_2
     }
 :
 (
-{ before(grammarAccess.getAdaptationProcessAccess().getNameIDTerminalRuleCall_2_0()); }
-	RULE_ID{ after(grammarAccess.getAdaptationProcessAccess().getNameIDTerminalRuleCall_2_0()); }
+{ before(grammarAccess.getAdaptationProcessAccess().getNameEStringParserRuleCall_2_0()); }
+	ruleEString{ after(grammarAccess.getAdaptationProcessAccess().getNameEStringParserRuleCall_2_0()); }
 )
 
 ;
diff --git a/edu.kit.ipd.descartes.mm.adaptation.sta.ui/src-gen/edu/kit/ipd/descartes/ui/contentassist/antlr/internal/InternalStaLangParser.java b/edu.kit.ipd.descartes.mm.adaptation.sta.ui/src-gen/edu/kit/ipd/descartes/ui/contentassist/antlr/internal/InternalStaLangParser.java
index 5e9e6c63..1976923d 100644
--- a/edu.kit.ipd.descartes.mm.adaptation.sta.ui/src-gen/edu/kit/ipd/descartes/ui/contentassist/antlr/internal/InternalStaLangParser.java
+++ b/edu.kit.ipd.descartes.mm.adaptation.sta.ui/src-gen/edu/kit/ipd/descartes/ui/contentassist/antlr/internal/InternalStaLangParser.java
@@ -34494,21 +34494,25 @@ public class InternalStaLangParser extends AbstractInternalContentAssistParser {
 
 
     // $ANTLR start "rule__AdaptationProcess__NameAssignment_2"
-    // ../edu.kit.ipd.descartes.mm.adaptation.sta.ui/src-gen/edu/kit/ipd/descartes/ui/contentassist/antlr/internal/InternalStaLang.g:13562:1: rule__AdaptationProcess__NameAssignment_2 : ( RULE_ID ) ;
+    // ../edu.kit.ipd.descartes.mm.adaptation.sta.ui/src-gen/edu/kit/ipd/descartes/ui/contentassist/antlr/internal/InternalStaLang.g:13562:1: rule__AdaptationProcess__NameAssignment_2 : ( ruleEString ) ;
     public final void rule__AdaptationProcess__NameAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../edu.kit.ipd.descartes.mm.adaptation.sta.ui/src-gen/edu/kit/ipd/descartes/ui/contentassist/antlr/internal/InternalStaLang.g:13566:1: ( ( RULE_ID ) )
-            // ../edu.kit.ipd.descartes.mm.adaptation.sta.ui/src-gen/edu/kit/ipd/descartes/ui/contentassist/antlr/internal/InternalStaLang.g:13567:1: ( RULE_ID )
+            // ../edu.kit.ipd.descartes.mm.adaptation.sta.ui/src-gen/edu/kit/ipd/descartes/ui/contentassist/antlr/internal/InternalStaLang.g:13566:1: ( ( ruleEString ) )
+            // ../edu.kit.ipd.descartes.mm.adaptation.sta.ui/src-gen/edu/kit/ipd/descartes/ui/contentassist/antlr/internal/InternalStaLang.g:13567:1: ( ruleEString )
             {
-            // ../edu.kit.ipd.descartes.mm.adaptation.sta.ui/src-gen/edu/kit/ipd/descartes/ui/contentassist/antlr/internal/InternalStaLang.g:13567:1: ( RULE_ID )
-            // ../edu.kit.ipd.descartes.mm.adaptation.sta.ui/src-gen/edu/kit/ipd/descartes/ui/contentassist/antlr/internal/InternalStaLang.g:13568:1: RULE_ID
+            // ../edu.kit.ipd.descartes.mm.adaptation.sta.ui/src-gen/edu/kit/ipd/descartes/ui/contentassist/antlr/internal/InternalStaLang.g:13567:1: ( ruleEString )
+            // ../edu.kit.ipd.descartes.mm.adaptation.sta.ui/src-gen/edu/kit/ipd/descartes/ui/contentassist/antlr/internal/InternalStaLang.g:13568:1: ruleEString
             {
-             before(grammarAccess.getAdaptationProcessAccess().getNameIDTerminalRuleCall_2_0()); 
-            match(input,RULE_ID,FollowSets001.FOLLOW_RULE_ID_in_rule__AdaptationProcess__NameAssignment_226899); 
-             after(grammarAccess.getAdaptationProcessAccess().getNameIDTerminalRuleCall_2_0()); 
+             before(grammarAccess.getAdaptationProcessAccess().getNameEStringParserRuleCall_2_0()); 
+            pushFollow(FollowSets001.FOLLOW_ruleEString_in_rule__AdaptationProcess__NameAssignment_226899);
+            ruleEString();
+
+            state._fsp--;
+
+             after(grammarAccess.getAdaptationProcessAccess().getNameEStringParserRuleCall_2_0()); 
 
             }
 
@@ -39038,7 +39042,7 @@ public class InternalStaLangParser extends AbstractInternalContentAssistParser {
         public static final BitSet FOLLOW_rule__AdaptationProcess__Group__0__Impl_in_rule__AdaptationProcess__Group__02860 = new BitSet(new long[]{0x0000000800000000L});
         public static final BitSet FOLLOW_rule__AdaptationProcess__Group__1_in_rule__AdaptationProcess__Group__02863 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__AdaptationProcess__ImportDeclarationAssignment_0_in_rule__AdaptationProcess__Group__0__Impl2890 = new BitSet(new long[]{0x0000000000000002L,0x0000000000000001L});
-        public static final BitSet FOLLOW_rule__AdaptationProcess__Group__1__Impl_in_rule__AdaptationProcess__Group__12921 = new BitSet(new long[]{0x0000000000000020L});
+        public static final BitSet FOLLOW_rule__AdaptationProcess__Group__1__Impl_in_rule__AdaptationProcess__Group__12921 = new BitSet(new long[]{0x0000000000000030L});
         public static final BitSet FOLLOW_rule__AdaptationProcess__Group__2_in_rule__AdaptationProcess__Group__12924 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_35_in_rule__AdaptationProcess__Group__1__Impl2952 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__AdaptationProcess__Group__2__Impl_in_rule__AdaptationProcess__Group__22983 = new BitSet(new long[]{0x0000081000000000L});
@@ -39077,7 +39081,7 @@ public class InternalStaLangParser extends AbstractInternalContentAssistParser {
         public static final BitSet FOLLOW_rule__AdaptationProcess__Group__13__Impl_in_rule__AdaptationProcess__Group__133656 = new BitSet(new long[]{0x0000004000000000L});
         public static final BitSet FOLLOW_rule__AdaptationProcess__Group__14_in_rule__AdaptationProcess__Group__133659 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_40_in_rule__AdaptationProcess__Group__13__Impl3687 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__AdaptationProcess__Group__14__Impl_in_rule__AdaptationProcess__Group__143718 = new BitSet(new long[]{0x0040800000000030L});
+        public static final BitSet FOLLOW_rule__AdaptationProcess__Group__14__Impl_in_rule__AdaptationProcess__Group__143718 = new BitSet(new long[]{0x0000800000000030L});
         public static final BitSet FOLLOW_rule__AdaptationProcess__Group__15_in_rule__AdaptationProcess__Group__143721 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_38_in_rule__AdaptationProcess__Group__14__Impl3749 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__AdaptationProcess__Group__15__Impl_in_rule__AdaptationProcess__Group__153780 = new BitSet(new long[]{0x0000420000000000L});
@@ -39089,7 +39093,7 @@ public class InternalStaLangParser extends AbstractInternalContentAssistParser {
         public static final BitSet FOLLOW_rule__AdaptationProcess__Group__17__Impl_in_rule__AdaptationProcess__Group__173901 = new BitSet(new long[]{0x0000004000000000L});
         public static final BitSet FOLLOW_rule__AdaptationProcess__Group__18_in_rule__AdaptationProcess__Group__173904 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_41_in_rule__AdaptationProcess__Group__17__Impl3932 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__AdaptationProcess__Group__18__Impl_in_rule__AdaptationProcess__Group__183963 = new BitSet(new long[]{0x0040000000000030L});
+        public static final BitSet FOLLOW_rule__AdaptationProcess__Group__18__Impl_in_rule__AdaptationProcess__Group__183963 = new BitSet(new long[]{0x0000000000000030L});
         public static final BitSet FOLLOW_rule__AdaptationProcess__Group__19_in_rule__AdaptationProcess__Group__183966 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_38_in_rule__AdaptationProcess__Group__18__Impl3994 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__AdaptationProcess__Group__19__Impl_in_rule__AdaptationProcess__Group__194025 = new BitSet(new long[]{0x0000440000000000L});
@@ -39100,7 +39104,7 @@ public class InternalStaLangParser extends AbstractInternalContentAssistParser {
         public static final BitSet FOLLOW_rule__AdaptationProcess__Group_20__0_in_rule__AdaptationProcess__Group__20__Impl4115 = new BitSet(new long[]{0x0000400000000002L});
         public static final BitSet FOLLOW_rule__AdaptationProcess__Group__21__Impl_in_rule__AdaptationProcess__Group__214146 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_42_in_rule__AdaptationProcess__Group__21__Impl4174 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__AdaptationProcess__Group_3__0__Impl_in_rule__AdaptationProcess__Group_3__04249 = new BitSet(new long[]{0x0040000000000030L});
+        public static final BitSet FOLLOW_rule__AdaptationProcess__Group_3__0__Impl_in_rule__AdaptationProcess__Group_3__04249 = new BitSet(new long[]{0x0000000000000030L});
         public static final BitSet FOLLOW_rule__AdaptationProcess__Group_3__1_in_rule__AdaptationProcess__Group_3__04252 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_43_in_rule__AdaptationProcess__Group_3__0__Impl4280 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__AdaptationProcess__Group_3__1__Impl_in_rule__AdaptationProcess__Group_3__14311 = new BitSet(new long[]{0x0000100000000000L});
@@ -39111,7 +39115,7 @@ public class InternalStaLangParser extends AbstractInternalContentAssistParser {
         public static final BitSet FOLLOW_rule__AdaptationProcess__Group_5__0__Impl_in_rule__AdaptationProcess__Group_5__04436 = new BitSet(new long[]{0x0000004000000000L});
         public static final BitSet FOLLOW_rule__AdaptationProcess__Group_5__1_in_rule__AdaptationProcess__Group_5__04439 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_45_in_rule__AdaptationProcess__Group_5__0__Impl4467 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__AdaptationProcess__Group_5__1__Impl_in_rule__AdaptationProcess__Group_5__14498 = new BitSet(new long[]{0x0040000000000030L});
+        public static final BitSet FOLLOW_rule__AdaptationProcess__Group_5__1__Impl_in_rule__AdaptationProcess__Group_5__14498 = new BitSet(new long[]{0x0000000000000030L});
         public static final BitSet FOLLOW_rule__AdaptationProcess__Group_5__2_in_rule__AdaptationProcess__Group_5__14501 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_38_in_rule__AdaptationProcess__Group_5__1__Impl4529 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__AdaptationProcess__Group_5__2__Impl_in_rule__AdaptationProcess__Group_5__24560 = new BitSet(new long[]{0x0000400000000000L});
@@ -39119,7 +39123,7 @@ public class InternalStaLangParser extends AbstractInternalContentAssistParser {
         public static final BitSet FOLLOW_rule__AdaptationProcess__ParametersAssignment_5_2_in_rule__AdaptationProcess__Group_5__2__Impl4590 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__AdaptationProcess__Group_5__3__Impl_in_rule__AdaptationProcess__Group_5__34620 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__AdaptationProcess__Group_5_3__0_in_rule__AdaptationProcess__Group_5__3__Impl4647 = new BitSet(new long[]{0x0000400000000002L});
-        public static final BitSet FOLLOW_rule__AdaptationProcess__Group_5_3__0__Impl_in_rule__AdaptationProcess__Group_5_3__04686 = new BitSet(new long[]{0x0040000000000030L});
+        public static final BitSet FOLLOW_rule__AdaptationProcess__Group_5_3__0__Impl_in_rule__AdaptationProcess__Group_5_3__04686 = new BitSet(new long[]{0x0000000000000030L});
         public static final BitSet FOLLOW_rule__AdaptationProcess__Group_5_3__1_in_rule__AdaptationProcess__Group_5_3__04689 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_46_in_rule__AdaptationProcess__Group_5_3__0__Impl4717 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__AdaptationProcess__Group_5_3__1__Impl_in_rule__AdaptationProcess__Group_5_3__14748 = new BitSet(new long[]{0x0000000000000002L});
@@ -39129,17 +39133,17 @@ public class InternalStaLangParser extends AbstractInternalContentAssistParser {
         public static final BitSet FOLLOW_46_in_rule__AdaptationProcess__Group_12__0__Impl4840 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__AdaptationProcess__Group_12__1__Impl_in_rule__AdaptationProcess__Group_12__14871 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__AdaptationProcess__ActionsAssignment_12_1_in_rule__AdaptationProcess__Group_12__1__Impl4898 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__AdaptationProcess__Group_16__0__Impl_in_rule__AdaptationProcess__Group_16__04932 = new BitSet(new long[]{0x0040800000000030L});
+        public static final BitSet FOLLOW_rule__AdaptationProcess__Group_16__0__Impl_in_rule__AdaptationProcess__Group_16__04932 = new BitSet(new long[]{0x0000800000000030L});
         public static final BitSet FOLLOW_rule__AdaptationProcess__Group_16__1_in_rule__AdaptationProcess__Group_16__04935 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_46_in_rule__AdaptationProcess__Group_16__0__Impl4963 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__AdaptationProcess__Group_16__1__Impl_in_rule__AdaptationProcess__Group_16__14994 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__AdaptationProcess__TacticsAssignment_16_1_in_rule__AdaptationProcess__Group_16__1__Impl5021 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__AdaptationProcess__Group_20__0__Impl_in_rule__AdaptationProcess__Group_20__05055 = new BitSet(new long[]{0x0040000000000030L});
+        public static final BitSet FOLLOW_rule__AdaptationProcess__Group_20__0__Impl_in_rule__AdaptationProcess__Group_20__05055 = new BitSet(new long[]{0x0000000000000030L});
         public static final BitSet FOLLOW_rule__AdaptationProcess__Group_20__1_in_rule__AdaptationProcess__Group_20__05058 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_46_in_rule__AdaptationProcess__Group_20__0__Impl5086 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__AdaptationProcess__Group_20__1__Impl_in_rule__AdaptationProcess__Group_20__15117 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__AdaptationProcess__StrategiesAssignment_20_1_in_rule__AdaptationProcess__Group_20__1__Impl5144 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Tactic__Group__0__Impl_in_rule__Tactic__Group__05178 = new BitSet(new long[]{0x0040800000000030L});
+        public static final BitSet FOLLOW_rule__Tactic__Group__0__Impl_in_rule__Tactic__Group__05178 = new BitSet(new long[]{0x0000800000000030L});
         public static final BitSet FOLLOW_rule__Tactic__Group__1_in_rule__Tactic__Group__05181 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_47_in_rule__Tactic__Group__0__Impl5210 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__Tactic__Group__1__Impl_in_rule__Tactic__Group__15243 = new BitSet(new long[]{0x0000081000000000L});
@@ -39151,7 +39155,7 @@ public class InternalStaLangParser extends AbstractInternalContentAssistParser {
         public static final BitSet FOLLOW_rule__Tactic__Group__3__Impl_in_rule__Tactic__Group__35364 = new BitSet(new long[]{0x0001000000000000L});
         public static final BitSet FOLLOW_rule__Tactic__Group__4_in_rule__Tactic__Group__35367 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_36_in_rule__Tactic__Group__3__Impl5395 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Tactic__Group__4__Impl_in_rule__Tactic__Group__45426 = new BitSet(new long[]{0x0040000000000030L});
+        public static final BitSet FOLLOW_rule__Tactic__Group__4__Impl_in_rule__Tactic__Group__45426 = new BitSet(new long[]{0x0000000000000030L});
         public static final BitSet FOLLOW_rule__Tactic__Group__5_in_rule__Tactic__Group__45429 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_48_in_rule__Tactic__Group__4__Impl5457 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__Tactic__Group__5__Impl_in_rule__Tactic__Group__55488 = new BitSet(new long[]{0x0022040000000000L});
@@ -39165,7 +39169,7 @@ public class InternalStaLangParser extends AbstractInternalContentAssistParser {
         public static final BitSet FOLLOW_rule__Tactic__Group_7__0_in_rule__Tactic__Group__7__Impl5639 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__Tactic__Group__8__Impl_in_rule__Tactic__Group__85670 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_42_in_rule__Tactic__Group__8__Impl5698 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Tactic__Group_2__0__Impl_in_rule__Tactic__Group_2__05747 = new BitSet(new long[]{0x0040000000000030L});
+        public static final BitSet FOLLOW_rule__Tactic__Group_2__0__Impl_in_rule__Tactic__Group_2__05747 = new BitSet(new long[]{0x0000000000000030L});
         public static final BitSet FOLLOW_rule__Tactic__Group_2__1_in_rule__Tactic__Group_2__05750 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_43_in_rule__Tactic__Group_2__0__Impl5778 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__Tactic__Group_2__1__Impl_in_rule__Tactic__Group_2__15809 = new BitSet(new long[]{0x0000100000000000L});
@@ -39179,7 +39183,7 @@ public class InternalStaLangParser extends AbstractInternalContentAssistParser {
         public static final BitSet FOLLOW_rule__Tactic__Group_6__1__Impl_in_rule__Tactic__Group_6__15996 = new BitSet(new long[]{0x0008000000000000L});
         public static final BitSet FOLLOW_rule__Tactic__Group_6__2_in_rule__Tactic__Group_6__15999 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_50_in_rule__Tactic__Group_6__1__Impl6027 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Tactic__Group_6__2__Impl_in_rule__Tactic__Group_6__26058 = new BitSet(new long[]{0x0040000000000030L});
+        public static final BitSet FOLLOW_rule__Tactic__Group_6__2__Impl_in_rule__Tactic__Group_6__26058 = new BitSet(new long[]{0x0000000000000030L});
         public static final BitSet FOLLOW_rule__Tactic__Group_6__3_in_rule__Tactic__Group_6__26061 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_51_in_rule__Tactic__Group_6__2__Impl6089 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__Tactic__Group_6__3__Impl_in_rule__Tactic__Group_6__36120 = new BitSet(new long[]{0x0010400000000000L});
@@ -39190,7 +39194,7 @@ public class InternalStaLangParser extends AbstractInternalContentAssistParser {
         public static final BitSet FOLLOW_rule__Tactic__Group_6_4__0_in_rule__Tactic__Group_6__4__Impl6210 = new BitSet(new long[]{0x0000400000000002L});
         public static final BitSet FOLLOW_rule__Tactic__Group_6__5__Impl_in_rule__Tactic__Group_6__56241 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_52_in_rule__Tactic__Group_6__5__Impl6269 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Tactic__Group_6_4__0__Impl_in_rule__Tactic__Group_6_4__06312 = new BitSet(new long[]{0x0040000000000030L});
+        public static final BitSet FOLLOW_rule__Tactic__Group_6_4__0__Impl_in_rule__Tactic__Group_6_4__06312 = new BitSet(new long[]{0x0000000000000030L});
         public static final BitSet FOLLOW_rule__Tactic__Group_6_4__1_in_rule__Tactic__Group_6_4__06315 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_46_in_rule__Tactic__Group_6_4__0__Impl6343 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__Tactic__Group_6_4__1__Impl_in_rule__Tactic__Group_6_4__16374 = new BitSet(new long[]{0x0000000000000002L});
@@ -39198,7 +39202,7 @@ public class InternalStaLangParser extends AbstractInternalContentAssistParser {
         public static final BitSet FOLLOW_rule__Tactic__Group_7__0__Impl_in_rule__Tactic__Group_7__06435 = new BitSet(new long[]{0x0004000000000000L});
         public static final BitSet FOLLOW_rule__Tactic__Group_7__1_in_rule__Tactic__Group_7__06438 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_53_in_rule__Tactic__Group_7__0__Impl6466 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Tactic__Group_7__1__Impl_in_rule__Tactic__Group_7__16497 = new BitSet(new long[]{0x0040000000000030L});
+        public static final BitSet FOLLOW_rule__Tactic__Group_7__1__Impl_in_rule__Tactic__Group_7__16497 = new BitSet(new long[]{0x0000000000000030L});
         public static final BitSet FOLLOW_rule__Tactic__Group_7__2_in_rule__Tactic__Group_7__16500 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_50_in_rule__Tactic__Group_7__1__Impl6528 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__Tactic__Group_7__2__Impl_in_rule__Tactic__Group_7__26559 = new BitSet(new long[]{0x0000000000000002L});
@@ -39227,7 +39231,7 @@ public class InternalStaLangParser extends AbstractInternalContentAssistParser {
         public static final BitSet FOLLOW_rule__Action__Group__7__Impl_in_rule__Action__Group__77054 = new BitSet(new long[]{0x0004000000000000L});
         public static final BitSet FOLLOW_rule__Action__Group__8_in_rule__Action__Group__77057 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_56_in_rule__Action__Group__7__Impl7085 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Action__Group__8__Impl_in_rule__Action__Group__87116 = new BitSet(new long[]{0x0040000000000030L});
+        public static final BitSet FOLLOW_rule__Action__Group__8__Impl_in_rule__Action__Group__87116 = new BitSet(new long[]{0x0000000000000030L});
         public static final BitSet FOLLOW_rule__Action__Group__9_in_rule__Action__Group__87119 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_50_in_rule__Action__Group__8__Impl7147 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__Action__Group__9__Impl_in_rule__Action__Group__97178 = new BitSet(new long[]{0x0022040000000000L});
@@ -39241,7 +39245,7 @@ public class InternalStaLangParser extends AbstractInternalContentAssistParser {
         public static final BitSet FOLLOW_rule__Action__Group_11__0_in_rule__Action__Group__11__Impl7329 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__Action__Group__12__Impl_in_rule__Action__Group__127360 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_42_in_rule__Action__Group__12__Impl7388 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Action__Group_2__0__Impl_in_rule__Action__Group_2__07445 = new BitSet(new long[]{0x0040000000000030L});
+        public static final BitSet FOLLOW_rule__Action__Group_2__0__Impl_in_rule__Action__Group_2__07445 = new BitSet(new long[]{0x0000000000000030L});
         public static final BitSet FOLLOW_rule__Action__Group_2__1_in_rule__Action__Group_2__07448 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_43_in_rule__Action__Group_2__0__Impl7476 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__Action__Group_2__1__Impl_in_rule__Action__Group_2__17507 = new BitSet(new long[]{0x0000100000000000L});
@@ -39255,7 +39259,7 @@ public class InternalStaLangParser extends AbstractInternalContentAssistParser {
         public static final BitSet FOLLOW_rule__Action__Group_10__1__Impl_in_rule__Action__Group_10__17694 = new BitSet(new long[]{0x0008000000000000L});
         public static final BitSet FOLLOW_rule__Action__Group_10__2_in_rule__Action__Group_10__17697 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_50_in_rule__Action__Group_10__1__Impl7725 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Action__Group_10__2__Impl_in_rule__Action__Group_10__27756 = new BitSet(new long[]{0x0040000000000030L});
+        public static final BitSet FOLLOW_rule__Action__Group_10__2__Impl_in_rule__Action__Group_10__27756 = new BitSet(new long[]{0x0000000000000030L});
         public static final BitSet FOLLOW_rule__Action__Group_10__3_in_rule__Action__Group_10__27759 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_51_in_rule__Action__Group_10__2__Impl7787 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__Action__Group_10__3__Impl_in_rule__Action__Group_10__37818 = new BitSet(new long[]{0x0010400000000000L});
@@ -39266,7 +39270,7 @@ public class InternalStaLangParser extends AbstractInternalContentAssistParser {
         public static final BitSet FOLLOW_rule__Action__Group_10_4__0_in_rule__Action__Group_10__4__Impl7908 = new BitSet(new long[]{0x0000400000000002L});
         public static final BitSet FOLLOW_rule__Action__Group_10__5__Impl_in_rule__Action__Group_10__57939 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_52_in_rule__Action__Group_10__5__Impl7967 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Action__Group_10_4__0__Impl_in_rule__Action__Group_10_4__08010 = new BitSet(new long[]{0x0040000000000030L});
+        public static final BitSet FOLLOW_rule__Action__Group_10_4__0__Impl_in_rule__Action__Group_10_4__08010 = new BitSet(new long[]{0x0000000000000030L});
         public static final BitSet FOLLOW_rule__Action__Group_10_4__1_in_rule__Action__Group_10_4__08013 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_46_in_rule__Action__Group_10_4__0__Impl8041 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__Action__Group_10_4__1__Impl_in_rule__Action__Group_10_4__18072 = new BitSet(new long[]{0x0000000000000002L});
@@ -39274,7 +39278,7 @@ public class InternalStaLangParser extends AbstractInternalContentAssistParser {
         public static final BitSet FOLLOW_rule__Action__Group_11__0__Impl_in_rule__Action__Group_11__08133 = new BitSet(new long[]{0x0004000000000000L});
         public static final BitSet FOLLOW_rule__Action__Group_11__1_in_rule__Action__Group_11__08136 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_53_in_rule__Action__Group_11__0__Impl8164 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Action__Group_11__1__Impl_in_rule__Action__Group_11__18195 = new BitSet(new long[]{0x0040000000000030L});
+        public static final BitSet FOLLOW_rule__Action__Group_11__1__Impl_in_rule__Action__Group_11__18195 = new BitSet(new long[]{0x0000000000000030L});
         public static final BitSet FOLLOW_rule__Action__Group_11__2_in_rule__Action__Group_11__18198 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_50_in_rule__Action__Group_11__1__Impl8226 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__Action__Group_11__2__Impl_in_rule__Action__Group_11__28257 = new BitSet(new long[]{0x0000000000000002L});
@@ -39291,7 +39295,7 @@ public class InternalStaLangParser extends AbstractInternalContentAssistParser {
         public static final BitSet FOLLOW_rule__Strategy__Group__3__Impl_in_rule__Strategy__Group__38503 = new BitSet(new long[]{0x0004000000000000L});
         public static final BitSet FOLLOW_rule__Strategy__Group__4_in_rule__Strategy__Group__38506 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_57_in_rule__Strategy__Group__3__Impl8534 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Strategy__Group__4__Impl_in_rule__Strategy__Group__48565 = new BitSet(new long[]{0x0040000000000030L});
+        public static final BitSet FOLLOW_rule__Strategy__Group__4__Impl_in_rule__Strategy__Group__48565 = new BitSet(new long[]{0x0000000000000030L});
         public static final BitSet FOLLOW_rule__Strategy__Group__5_in_rule__Strategy__Group__48568 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_50_in_rule__Strategy__Group__4__Impl8596 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__Strategy__Group__5__Impl_in_rule__Strategy__Group__58627 = new BitSet(new long[]{0x0400000000000000L});
@@ -39300,7 +39304,7 @@ public class InternalStaLangParser extends AbstractInternalContentAssistParser {
         public static final BitSet FOLLOW_rule__Strategy__Group__6__Impl_in_rule__Strategy__Group__68687 = new BitSet(new long[]{0x0004000000000000L});
         public static final BitSet FOLLOW_rule__Strategy__Group__7_in_rule__Strategy__Group__68690 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_58_in_rule__Strategy__Group__6__Impl8718 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Strategy__Group__7__Impl_in_rule__Strategy__Group__78749 = new BitSet(new long[]{0x0040000000000030L});
+        public static final BitSet FOLLOW_rule__Strategy__Group__7__Impl_in_rule__Strategy__Group__78749 = new BitSet(new long[]{0x0000000000000030L});
         public static final BitSet FOLLOW_rule__Strategy__Group__8_in_rule__Strategy__Group__78752 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_50_in_rule__Strategy__Group__7__Impl8780 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__Strategy__Group__8__Impl_in_rule__Strategy__Group__88811 = new BitSet(new long[]{0x0000010000000000L});
@@ -39312,7 +39316,7 @@ public class InternalStaLangParser extends AbstractInternalContentAssistParser {
         public static final BitSet FOLLOW_rule__Strategy__Group__10__Impl_in_rule__Strategy__Group__108933 = new BitSet(new long[]{0x0008000000000000L});
         public static final BitSet FOLLOW_rule__Strategy__Group__11_in_rule__Strategy__Group__108936 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_50_in_rule__Strategy__Group__10__Impl8964 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Strategy__Group__11__Impl_in_rule__Strategy__Group__118995 = new BitSet(new long[]{0x0040000000000030L});
+        public static final BitSet FOLLOW_rule__Strategy__Group__11__Impl_in_rule__Strategy__Group__118995 = new BitSet(new long[]{0x0000000000000030L});
         public static final BitSet FOLLOW_rule__Strategy__Group__12_in_rule__Strategy__Group__118998 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_51_in_rule__Strategy__Group__11__Impl9026 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__Strategy__Group__12__Impl_in_rule__Strategy__Group__129057 = new BitSet(new long[]{0x0010400000000000L});
@@ -39321,10 +39325,10 @@ public class InternalStaLangParser extends AbstractInternalContentAssistParser {
         public static final BitSet FOLLOW_rule__Strategy__Group__13__Impl_in_rule__Strategy__Group__139117 = new BitSet(new long[]{0x0010400000000000L});
         public static final BitSet FOLLOW_rule__Strategy__Group__14_in_rule__Strategy__Group__139120 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__Strategy__Group_13__0_in_rule__Strategy__Group__13__Impl9147 = new BitSet(new long[]{0x0000400000000002L});
-        public static final BitSet FOLLOW_rule__Strategy__Group__14__Impl_in_rule__Strategy__Group__149178 = new BitSet(new long[]{0x0840000000000030L});
+        public static final BitSet FOLLOW_rule__Strategy__Group__14__Impl_in_rule__Strategy__Group__149178 = new BitSet(new long[]{0x0800000000000030L});
         public static final BitSet FOLLOW_rule__Strategy__Group__15_in_rule__Strategy__Group__149181 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_52_in_rule__Strategy__Group__14__Impl9209 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Strategy__Group__15__Impl_in_rule__Strategy__Group__159240 = new BitSet(new long[]{0x0840000000000030L});
+        public static final BitSet FOLLOW_rule__Strategy__Group__15__Impl_in_rule__Strategy__Group__159240 = new BitSet(new long[]{0x0800000000000030L});
         public static final BitSet FOLLOW_rule__Strategy__Group__16_in_rule__Strategy__Group__159243 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_59_in_rule__Strategy__Group__15__Impl9272 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__Strategy__Group__16__Impl_in_rule__Strategy__Group__169305 = new BitSet(new long[]{0x0000040000000000L});
@@ -39332,7 +39336,7 @@ public class InternalStaLangParser extends AbstractInternalContentAssistParser {
         public static final BitSet FOLLOW_rule__Strategy__WeightingFunctionAssignment_16_in_rule__Strategy__Group__16__Impl9335 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__Strategy__Group__17__Impl_in_rule__Strategy__Group__179365 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_42_in_rule__Strategy__Group__17__Impl9393 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Strategy__Group_1__0__Impl_in_rule__Strategy__Group_1__09460 = new BitSet(new long[]{0x0040000000000030L});
+        public static final BitSet FOLLOW_rule__Strategy__Group_1__0__Impl_in_rule__Strategy__Group_1__09460 = new BitSet(new long[]{0x0000000000000030L});
         public static final BitSet FOLLOW_rule__Strategy__Group_1__1_in_rule__Strategy__Group_1__09463 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_43_in_rule__Strategy__Group_1__0__Impl9491 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__Strategy__Group_1__1__Impl_in_rule__Strategy__Group_1__19522 = new BitSet(new long[]{0x0000100000000000L});
@@ -39340,7 +39344,7 @@ public class InternalStaLangParser extends AbstractInternalContentAssistParser {
         public static final BitSet FOLLOW_rule__Strategy__IdAssignment_1_1_in_rule__Strategy__Group_1__1__Impl9552 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__Strategy__Group_1__2__Impl_in_rule__Strategy__Group_1__29582 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_44_in_rule__Strategy__Group_1__2__Impl9610 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Strategy__Group_13__0__Impl_in_rule__Strategy__Group_13__09647 = new BitSet(new long[]{0x0040000000000030L});
+        public static final BitSet FOLLOW_rule__Strategy__Group_13__0__Impl_in_rule__Strategy__Group_13__09647 = new BitSet(new long[]{0x0000000000000030L});
         public static final BitSet FOLLOW_rule__Strategy__Group_13__1_in_rule__Strategy__Group_13__09650 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_46_in_rule__Strategy__Group_13__0__Impl9678 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__Strategy__Group_13__1__Impl_in_rule__Strategy__Group_13__19709 = new BitSet(new long[]{0x0000000000000002L});
@@ -39348,10 +39352,10 @@ public class InternalStaLangParser extends AbstractInternalContentAssistParser {
         public static final BitSet FOLLOW_rule__Parameter__Group__0__Impl_in_rule__Parameter__Group__09770 = new BitSet(new long[]{0x0000001000000000L});
         public static final BitSet FOLLOW_rule__Parameter__Group__1_in_rule__Parameter__Group__09773 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__Parameter__NameAssignment_0_in_rule__Parameter__Group__0__Impl9800 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Parameter__Group__1__Impl_in_rule__Parameter__Group__19830 = new BitSet(new long[]{0x1040000000000030L});
+        public static final BitSet FOLLOW_rule__Parameter__Group__1__Impl_in_rule__Parameter__Group__19830 = new BitSet(new long[]{0x1000000000000030L});
         public static final BitSet FOLLOW_rule__Parameter__Group__2_in_rule__Parameter__Group__19833 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_36_in_rule__Parameter__Group__1__Impl9861 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Parameter__Group__2__Impl_in_rule__Parameter__Group__29892 = new BitSet(new long[]{0x1040000000000030L});
+        public static final BitSet FOLLOW_rule__Parameter__Group__2__Impl_in_rule__Parameter__Group__29892 = new BitSet(new long[]{0x1000000000000030L});
         public static final BitSet FOLLOW_rule__Parameter__Group__3_in_rule__Parameter__Group__29895 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__Parameter__Group_2__0_in_rule__Parameter__Group__2__Impl9922 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__Parameter__Group__3__Impl_in_rule__Parameter__Group__39953 = new BitSet(new long[]{0x0000440000000000L});
@@ -39367,10 +39371,10 @@ public class InternalStaLangParser extends AbstractInternalContentAssistParser {
         public static final BitSet FOLLOW_60_in_rule__Parameter__Group_2__0__Impl10176 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__Parameter__Group_2__1__Impl_in_rule__Parameter__Group_2__110207 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_50_in_rule__Parameter__Group_2__1__Impl10235 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Parameter__Group_4__0__Impl_in_rule__Parameter__Group_4__010270 = new BitSet(new long[]{0x2040000000000030L});
+        public static final BitSet FOLLOW_rule__Parameter__Group_4__0__Impl_in_rule__Parameter__Group_4__010270 = new BitSet(new long[]{0x2000000000000030L});
         public static final BitSet FOLLOW_rule__Parameter__Group_4__1_in_rule__Parameter__Group_4__010273 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_46_in_rule__Parameter__Group_4__0__Impl10301 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Parameter__Group_4__1__Impl_in_rule__Parameter__Group_4__110332 = new BitSet(new long[]{0x2040000000000030L});
+        public static final BitSet FOLLOW_rule__Parameter__Group_4__1__Impl_in_rule__Parameter__Group_4__110332 = new BitSet(new long[]{0x2000000000000030L});
         public static final BitSet FOLLOW_rule__Parameter__Group_4__2_in_rule__Parameter__Group_4__110335 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__Parameter__Group_4_1__0_in_rule__Parameter__Group_4__1__Impl10362 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__Parameter__Group_4__2__Impl_in_rule__Parameter__Group_4__210393 = new BitSet(new long[]{0x0000000000000002L});
@@ -39380,7 +39384,7 @@ public class InternalStaLangParser extends AbstractInternalContentAssistParser {
         public static final BitSet FOLLOW_61_in_rule__Parameter__Group_4_1__0__Impl10487 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__Parameter__Group_4_1__1__Impl_in_rule__Parameter__Group_4_1__110518 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_50_in_rule__Parameter__Group_4_1__1__Impl10546 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__OverallGoal__Group__0__Impl_in_rule__OverallGoal__Group__010581 = new BitSet(new long[]{0x0040000000000030L});
+        public static final BitSet FOLLOW_rule__OverallGoal__Group__0__Impl_in_rule__OverallGoal__Group__010581 = new BitSet(new long[]{0x0000000000000030L});
         public static final BitSet FOLLOW_rule__OverallGoal__Group__1_in_rule__OverallGoal__Group__010584 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_62_in_rule__OverallGoal__Group__0__Impl10612 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__OverallGoal__Group__1__Impl_in_rule__OverallGoal__Group__110643 = new BitSet(new long[]{0x8000000000000000L});
@@ -39392,7 +39396,7 @@ public class InternalStaLangParser extends AbstractInternalContentAssistParser {
         public static final BitSet FOLLOW_rule__OverallGoal__Group__3__Impl_in_rule__OverallGoal__Group__310765 = new BitSet(new long[]{0x0008000000000000L});
         public static final BitSet FOLLOW_rule__OverallGoal__Group__4_in_rule__OverallGoal__Group__310768 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_50_in_rule__OverallGoal__Group__3__Impl10796 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__OverallGoal__Group__4__Impl_in_rule__OverallGoal__Group__410827 = new BitSet(new long[]{0x0040000000000030L});
+        public static final BitSet FOLLOW_rule__OverallGoal__Group__4__Impl_in_rule__OverallGoal__Group__410827 = new BitSet(new long[]{0x0000000000000030L});
         public static final BitSet FOLLOW_rule__OverallGoal__Group__5_in_rule__OverallGoal__Group__410830 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_51_in_rule__OverallGoal__Group__4__Impl10858 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__OverallGoal__Group__5__Impl_in_rule__OverallGoal__Group__510889 = new BitSet(new long[]{0x0010400000000000L});
@@ -39403,12 +39407,12 @@ public class InternalStaLangParser extends AbstractInternalContentAssistParser {
         public static final BitSet FOLLOW_rule__OverallGoal__Group_6__0_in_rule__OverallGoal__Group__6__Impl10979 = new BitSet(new long[]{0x0000400000000002L});
         public static final BitSet FOLLOW_rule__OverallGoal__Group__7__Impl_in_rule__OverallGoal__Group__711010 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_52_in_rule__OverallGoal__Group__7__Impl11038 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__OverallGoal__Group_6__0__Impl_in_rule__OverallGoal__Group_6__011085 = new BitSet(new long[]{0x0040000000000030L});
+        public static final BitSet FOLLOW_rule__OverallGoal__Group_6__0__Impl_in_rule__OverallGoal__Group_6__011085 = new BitSet(new long[]{0x0000000000000030L});
         public static final BitSet FOLLOW_rule__OverallGoal__Group_6__1_in_rule__OverallGoal__Group_6__011088 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_46_in_rule__OverallGoal__Group_6__0__Impl11116 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__OverallGoal__Group_6__1__Impl_in_rule__OverallGoal__Group_6__111147 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__OverallGoal__ObjectivesAssignment_6_1_in_rule__OverallGoal__Group_6__1__Impl11174 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ImportDeclaration__Group__0__Impl_in_rule__ImportDeclaration__Group__011208 = new BitSet(new long[]{0x0040000000000030L});
+        public static final BitSet FOLLOW_rule__ImportDeclaration__Group__0__Impl_in_rule__ImportDeclaration__Group__011208 = new BitSet(new long[]{0x0000000000000030L});
         public static final BitSet FOLLOW_rule__ImportDeclaration__Group__1_in_rule__ImportDeclaration__Group__011211 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_64_in_rule__ImportDeclaration__Group__0__Impl11239 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__ImportDeclaration__Group__1__Impl_in_rule__ImportDeclaration__Group__111270 = new BitSet(new long[]{0x0000000000000002L});
@@ -39424,7 +39428,7 @@ public class InternalStaLangParser extends AbstractInternalContentAssistParser {
         public static final BitSet FOLLOW_50_in_rule__AdaptationPlan__Group__2__Impl11483 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__AdaptationPlan__Group__3__Impl_in_rule__AdaptationPlan__Group__311514 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__AdaptationPlan__Group_3__0_in_rule__AdaptationPlan__Group__3__Impl11541 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__AdaptationPlan__Group_1__0__Impl_in_rule__AdaptationPlan__Group_1__011580 = new BitSet(new long[]{0x0040000000000030L});
+        public static final BitSet FOLLOW_rule__AdaptationPlan__Group_1__0__Impl_in_rule__AdaptationPlan__Group_1__011580 = new BitSet(new long[]{0x0000000000000030L});
         public static final BitSet FOLLOW_rule__AdaptationPlan__Group_1__1_in_rule__AdaptationPlan__Group_1__011583 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_43_in_rule__AdaptationPlan__Group_1__0__Impl11611 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__AdaptationPlan__Group_1__1__Impl_in_rule__AdaptationPlan__Group_1__111642 = new BitSet(new long[]{0x0000100000000000L});
@@ -39455,7 +39459,7 @@ public class InternalStaLangParser extends AbstractInternalContentAssistParser {
         public static final BitSet FOLLOW_65_in_rule__StartAction__Group__1__Impl12232 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__StartAction__Group__2__Impl_in_rule__StartAction__Group__212263 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__StartAction__Group_2__0_in_rule__StartAction__Group__2__Impl12290 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__StartAction__Group_2__0__Impl_in_rule__StartAction__Group_2__012327 = new BitSet(new long[]{0x0040000000000030L});
+        public static final BitSet FOLLOW_rule__StartAction__Group_2__0__Impl_in_rule__StartAction__Group_2__012327 = new BitSet(new long[]{0x0000000000000030L});
         public static final BitSet FOLLOW_rule__StartAction__Group_2__1_in_rule__StartAction__Group_2__012330 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_43_in_rule__StartAction__Group_2__0__Impl12358 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__StartAction__Group_2__1__Impl_in_rule__StartAction__Group_2__112389 = new BitSet(new long[]{0x0000100000000000L});
@@ -39470,7 +39474,7 @@ public class InternalStaLangParser extends AbstractInternalContentAssistParser {
         public static final BitSet FOLLOW_66_in_rule__StopAction__Group__1__Impl12606 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__StopAction__Group__2__Impl_in_rule__StopAction__Group__212637 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__StopAction__Group_2__0_in_rule__StopAction__Group__2__Impl12664 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__StopAction__Group_2__0__Impl_in_rule__StopAction__Group_2__012701 = new BitSet(new long[]{0x0040000000000030L});
+        public static final BitSet FOLLOW_rule__StopAction__Group_2__0__Impl_in_rule__StopAction__Group_2__012701 = new BitSet(new long[]{0x0000000000000030L});
         public static final BitSet FOLLOW_rule__StopAction__Group_2__1_in_rule__StopAction__Group_2__012704 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_43_in_rule__StopAction__Group_2__0__Impl12732 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__StopAction__Group_2__1__Impl_in_rule__StopAction__Group_2__112763 = new BitSet(new long[]{0x0000100000000000L});
@@ -39490,13 +39494,13 @@ public class InternalStaLangParser extends AbstractInternalContentAssistParser {
         public static final BitSet FOLLOW_rule__LoopAction__Group__3__Impl_in_rule__LoopAction__Group__313076 = new BitSet(new long[]{0x0004000000000000L});
         public static final BitSet FOLLOW_rule__LoopAction__Group__4_in_rule__LoopAction__Group__313079 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_69_in_rule__LoopAction__Group__3__Impl13107 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__LoopAction__Group__4__Impl_in_rule__LoopAction__Group__413138 = new BitSet(new long[]{0x0040000000000030L});
+        public static final BitSet FOLLOW_rule__LoopAction__Group__4__Impl_in_rule__LoopAction__Group__413138 = new BitSet(new long[]{0x0000000000000030L});
         public static final BitSet FOLLOW_rule__LoopAction__Group__5_in_rule__LoopAction__Group__413141 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_50_in_rule__LoopAction__Group__4__Impl13169 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__LoopAction__Group__5__Impl_in_rule__LoopAction__Group__513200 = new BitSet(new long[]{0x0008000000000000L});
         public static final BitSet FOLLOW_rule__LoopAction__Group__6_in_rule__LoopAction__Group__513203 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__LoopAction__CounterAssignment_5_in_rule__LoopAction__Group__5__Impl13230 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__LoopAction__Group__6__Impl_in_rule__LoopAction__Group__613260 = new BitSet(new long[]{0x0040000000000030L});
+        public static final BitSet FOLLOW_rule__LoopAction__Group__6__Impl_in_rule__LoopAction__Group__613260 = new BitSet(new long[]{0x0000000000000030L});
         public static final BitSet FOLLOW_rule__LoopAction__Group__7_in_rule__LoopAction__Group__613263 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_51_in_rule__LoopAction__Group__6__Impl13291 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__LoopAction__Group__7__Impl_in_rule__LoopAction__Group__713322 = new BitSet(new long[]{0x0010000000000000L});
@@ -39504,7 +39508,7 @@ public class InternalStaLangParser extends AbstractInternalContentAssistParser {
         public static final BitSet FOLLOW_rule__LoopAction__BodyAssignment_7_in_rule__LoopAction__Group__7__Impl13352 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__LoopAction__Group__8__Impl_in_rule__LoopAction__Group__813382 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_52_in_rule__LoopAction__Group__8__Impl13410 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__LoopAction__Group_1__0__Impl_in_rule__LoopAction__Group_1__013459 = new BitSet(new long[]{0x0040000000000030L});
+        public static final BitSet FOLLOW_rule__LoopAction__Group_1__0__Impl_in_rule__LoopAction__Group_1__013459 = new BitSet(new long[]{0x0000000000000030L});
         public static final BitSet FOLLOW_rule__LoopAction__Group_1__1_in_rule__LoopAction__Group_1__013462 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_43_in_rule__LoopAction__Group_1__0__Impl13490 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__LoopAction__Group_1__1__Impl_in_rule__LoopAction__Group_1__113521 = new BitSet(new long[]{0x0000100000000000L});
@@ -39527,7 +39531,7 @@ public class InternalStaLangParser extends AbstractInternalContentAssistParser {
         public static final BitSet FOLLOW_rule__BranchAction__Group__4__Impl_in_rule__BranchAction__Group__413896 = new BitSet(new long[]{0x0004000000000000L});
         public static final BitSet FOLLOW_rule__BranchAction__Group__5_in_rule__BranchAction__Group__413899 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_72_in_rule__BranchAction__Group__4__Impl13927 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__BranchAction__Group__5__Impl_in_rule__BranchAction__Group__513958 = new BitSet(new long[]{0x0040000000000030L});
+        public static final BitSet FOLLOW_rule__BranchAction__Group__5__Impl_in_rule__BranchAction__Group__513958 = new BitSet(new long[]{0x0000000000000030L});
         public static final BitSet FOLLOW_rule__BranchAction__Group__6_in_rule__BranchAction__Group__513961 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_50_in_rule__BranchAction__Group__5__Impl13989 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__BranchAction__Group__6__Impl_in_rule__BranchAction__Group__614020 = new BitSet(new long[]{0x0000400000000000L});
@@ -39539,7 +39543,7 @@ public class InternalStaLangParser extends AbstractInternalContentAssistParser {
         public static final BitSet FOLLOW_rule__BranchAction__Group__8__Impl_in_rule__BranchAction__Group__814142 = new BitSet(new long[]{0x0004000000000000L});
         public static final BitSet FOLLOW_rule__BranchAction__Group__9_in_rule__BranchAction__Group__814145 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_73_in_rule__BranchAction__Group__8__Impl14173 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__BranchAction__Group__9__Impl_in_rule__BranchAction__Group__914204 = new BitSet(new long[]{0x0040000000000030L});
+        public static final BitSet FOLLOW_rule__BranchAction__Group__9__Impl_in_rule__BranchAction__Group__914204 = new BitSet(new long[]{0x0000000000000030L});
         public static final BitSet FOLLOW_rule__BranchAction__Group__10_in_rule__BranchAction__Group__914207 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_50_in_rule__BranchAction__Group__9__Impl14235 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__BranchAction__Group__10__Impl_in_rule__BranchAction__Group__1014266 = new BitSet(new long[]{0x0010000000000000L});
@@ -39551,7 +39555,7 @@ public class InternalStaLangParser extends AbstractInternalContentAssistParser {
         public static final BitSet FOLLOW_rule__BranchAction__Group__12__Impl_in_rule__BranchAction__Group__1214388 = new BitSet(new long[]{0x0008000000000000L});
         public static final BitSet FOLLOW_rule__BranchAction__Group__13_in_rule__BranchAction__Group__1214391 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_74_in_rule__BranchAction__Group__12__Impl14419 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__BranchAction__Group__13__Impl_in_rule__BranchAction__Group__1314450 = new BitSet(new long[]{0x0040000000000030L});
+        public static final BitSet FOLLOW_rule__BranchAction__Group__13__Impl_in_rule__BranchAction__Group__1314450 = new BitSet(new long[]{0x0000000000000030L});
         public static final BitSet FOLLOW_rule__BranchAction__Group__14_in_rule__BranchAction__Group__1314453 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_51_in_rule__BranchAction__Group__13__Impl14481 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__BranchAction__Group__14__Impl_in_rule__BranchAction__Group__1414512 = new BitSet(new long[]{0x0010000000000000L});
@@ -39563,7 +39567,7 @@ public class InternalStaLangParser extends AbstractInternalContentAssistParser {
         public static final BitSet FOLLOW_rule__BranchAction__Group__16__Impl_in_rule__BranchAction__Group__1614634 = new BitSet(new long[]{0x0008000000000000L});
         public static final BitSet FOLLOW_rule__BranchAction__Group__17_in_rule__BranchAction__Group__1614637 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_75_in_rule__BranchAction__Group__16__Impl14665 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__BranchAction__Group__17__Impl_in_rule__BranchAction__Group__1714696 = new BitSet(new long[]{0x0040000000000030L});
+        public static final BitSet FOLLOW_rule__BranchAction__Group__17__Impl_in_rule__BranchAction__Group__1714696 = new BitSet(new long[]{0x0000000000000030L});
         public static final BitSet FOLLOW_rule__BranchAction__Group__18_in_rule__BranchAction__Group__1714699 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_51_in_rule__BranchAction__Group__17__Impl14727 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__BranchAction__Group__18__Impl_in_rule__BranchAction__Group__1814758 = new BitSet(new long[]{0x0010000000000000L});
@@ -39571,7 +39575,7 @@ public class InternalStaLangParser extends AbstractInternalContentAssistParser {
         public static final BitSet FOLLOW_rule__BranchAction__ConditionFalseBranchAssignment_18_in_rule__BranchAction__Group__18__Impl14788 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__BranchAction__Group__19__Impl_in_rule__BranchAction__Group__1914818 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_52_in_rule__BranchAction__Group__19__Impl14846 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__BranchAction__Group_1__0__Impl_in_rule__BranchAction__Group_1__014917 = new BitSet(new long[]{0x0040000000000030L});
+        public static final BitSet FOLLOW_rule__BranchAction__Group_1__0__Impl_in_rule__BranchAction__Group_1__014917 = new BitSet(new long[]{0x0000000000000030L});
         public static final BitSet FOLLOW_rule__BranchAction__Group_1__1_in_rule__BranchAction__Group_1__014920 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_43_in_rule__BranchAction__Group_1__0__Impl14948 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__BranchAction__Group_1__1__Impl_in_rule__BranchAction__Group_1__114979 = new BitSet(new long[]{0x0000100000000000L});
@@ -39588,7 +39592,7 @@ public class InternalStaLangParser extends AbstractInternalContentAssistParser {
         public static final BitSet FOLLOW_rule__ActionReference__Group__2__Impl_in_rule__ActionReference__Group__215227 = new BitSet(new long[]{0x0000000000000000L,0x0000000000002000L});
         public static final BitSet FOLLOW_rule__ActionReference__Group__3_in_rule__ActionReference__Group__215230 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_51_in_rule__ActionReference__Group__2__Impl15258 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ActionReference__Group__3__Impl_in_rule__ActionReference__Group__315289 = new BitSet(new long[]{0x0040000000000030L});
+        public static final BitSet FOLLOW_rule__ActionReference__Group__3__Impl_in_rule__ActionReference__Group__315289 = new BitSet(new long[]{0x0000000000000030L});
         public static final BitSet FOLLOW_rule__ActionReference__Group__4_in_rule__ActionReference__Group__315292 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_77_in_rule__ActionReference__Group__3__Impl15320 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__ActionReference__Group__4__Impl_in_rule__ActionReference__Group__415351 = new BitSet(new long[]{0x0010000000000000L});
@@ -39596,7 +39600,7 @@ public class InternalStaLangParser extends AbstractInternalContentAssistParser {
         public static final BitSet FOLLOW_rule__ActionReference__RefersToAssignment_4_in_rule__ActionReference__Group__4__Impl15381 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__ActionReference__Group__5__Impl_in_rule__ActionReference__Group__515411 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_52_in_rule__ActionReference__Group__5__Impl15439 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ActionReference__Group_1__0__Impl_in_rule__ActionReference__Group_1__015482 = new BitSet(new long[]{0x0040000000000030L});
+        public static final BitSet FOLLOW_rule__ActionReference__Group_1__0__Impl_in_rule__ActionReference__Group_1__015482 = new BitSet(new long[]{0x0000000000000030L});
         public static final BitSet FOLLOW_rule__ActionReference__Group_1__1_in_rule__ActionReference__Group_1__015485 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_43_in_rule__ActionReference__Group_1__0__Impl15513 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__ActionReference__Group_1__1__Impl_in_rule__ActionReference__Group_1__115544 = new BitSet(new long[]{0x0000100000000000L});
@@ -39627,7 +39631,7 @@ public class InternalStaLangParser extends AbstractInternalContentAssistParser {
         public static final BitSet FOLLOW_rule__ModelVariableConfigurationRange__Group__2__Impl_in_rule__ModelVariableConfigurationRange__Group__216105 = new BitSet(new long[]{0x0000000000000000L,0x0000000000008000L});
         public static final BitSet FOLLOW_rule__ModelVariableConfigurationRange__Group__3_in_rule__ModelVariableConfigurationRange__Group__216108 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_36_in_rule__ModelVariableConfigurationRange__Group__2__Impl16136 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ModelVariableConfigurationRange__Group__3__Impl_in_rule__ModelVariableConfigurationRange__Group__316167 = new BitSet(new long[]{0x0040000000000030L});
+        public static final BitSet FOLLOW_rule__ModelVariableConfigurationRange__Group__3__Impl_in_rule__ModelVariableConfigurationRange__Group__316167 = new BitSet(new long[]{0x0000000000000030L});
         public static final BitSet FOLLOW_rule__ModelVariableConfigurationRange__Group__4_in_rule__ModelVariableConfigurationRange__Group__316170 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_79_in_rule__ModelVariableConfigurationRange__Group__3__Impl16198 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__ModelVariableConfigurationRange__Group__4__Impl_in_rule__ModelVariableConfigurationRange__Group__416229 = new BitSet(new long[]{0x0000000000000000L,0x0000000000010000L});
@@ -39645,7 +39649,7 @@ public class InternalStaLangParser extends AbstractInternalContentAssistParser {
         public static final BitSet FOLLOW_rule__ModelVariableConfigurationRange__Group__8__Impl_in_rule__ModelVariableConfigurationRange__Group__816473 = new BitSet(new long[]{0x0000000000000000L,0x0000000000040000L});
         public static final BitSet FOLLOW_rule__ModelVariableConfigurationRange__Group__9_in_rule__ModelVariableConfigurationRange__Group__816476 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__ModelVariableConfigurationRange__MaxValueAssignment_8_in_rule__ModelVariableConfigurationRange__Group__8__Impl16503 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ModelVariableConfigurationRange__Group__9__Impl_in_rule__ModelVariableConfigurationRange__Group__916533 = new BitSet(new long[]{0x0040000000000030L});
+        public static final BitSet FOLLOW_rule__ModelVariableConfigurationRange__Group__9__Impl_in_rule__ModelVariableConfigurationRange__Group__916533 = new BitSet(new long[]{0x0000000000000030L});
         public static final BitSet FOLLOW_rule__ModelVariableConfigurationRange__Group__10_in_rule__ModelVariableConfigurationRange__Group__916536 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_82_in_rule__ModelVariableConfigurationRange__Group__9__Impl16564 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__ModelVariableConfigurationRange__Group__10__Impl_in_rule__ModelVariableConfigurationRange__Group__1016595 = new BitSet(new long[]{0x0000040000000000L});
@@ -39653,7 +39657,7 @@ public class InternalStaLangParser extends AbstractInternalContentAssistParser {
         public static final BitSet FOLLOW_rule__ModelVariableConfigurationRange__AdaptableEntityAssignment_10_in_rule__ModelVariableConfigurationRange__Group__10__Impl16625 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__ModelVariableConfigurationRange__Group__11__Impl_in_rule__ModelVariableConfigurationRange__Group__1116655 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_42_in_rule__ModelVariableConfigurationRange__Group__11__Impl16683 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ModelVariableConfigurationRange__Group_1__0__Impl_in_rule__ModelVariableConfigurationRange__Group_1__016738 = new BitSet(new long[]{0x0040000000000030L});
+        public static final BitSet FOLLOW_rule__ModelVariableConfigurationRange__Group_1__0__Impl_in_rule__ModelVariableConfigurationRange__Group_1__016738 = new BitSet(new long[]{0x0000000000000030L});
         public static final BitSet FOLLOW_rule__ModelVariableConfigurationRange__Group_1__1_in_rule__ModelVariableConfigurationRange__Group_1__016741 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_43_in_rule__ModelVariableConfigurationRange__Group_1__0__Impl16769 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__ModelVariableConfigurationRange__Group_1__1__Impl_in_rule__ModelVariableConfigurationRange__Group_1__116800 = new BitSet(new long[]{0x0000100000000000L});
@@ -39670,13 +39674,13 @@ public class InternalStaLangParser extends AbstractInternalContentAssistParser {
         public static final BitSet FOLLOW_rule__ModelEntityConfigurationRange__Group__2__Impl_in_rule__ModelEntityConfigurationRange__Group__217048 = new BitSet(new long[]{0x0000000000000000L,0x0000000000008000L});
         public static final BitSet FOLLOW_rule__ModelEntityConfigurationRange__Group__3_in_rule__ModelEntityConfigurationRange__Group__217051 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_36_in_rule__ModelEntityConfigurationRange__Group__2__Impl17079 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ModelEntityConfigurationRange__Group__3__Impl_in_rule__ModelEntityConfigurationRange__Group__317110 = new BitSet(new long[]{0x0040000000000030L});
+        public static final BitSet FOLLOW_rule__ModelEntityConfigurationRange__Group__3__Impl_in_rule__ModelEntityConfigurationRange__Group__317110 = new BitSet(new long[]{0x0000000000000030L});
         public static final BitSet FOLLOW_rule__ModelEntityConfigurationRange__Group__4_in_rule__ModelEntityConfigurationRange__Group__317113 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_79_in_rule__ModelEntityConfigurationRange__Group__3__Impl17141 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__ModelEntityConfigurationRange__Group__4__Impl_in_rule__ModelEntityConfigurationRange__Group__417172 = new BitSet(new long[]{0x0000000000000000L,0x0000000000040000L});
         public static final BitSet FOLLOW_rule__ModelEntityConfigurationRange__Group__5_in_rule__ModelEntityConfigurationRange__Group__417175 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__ModelEntityConfigurationRange__NameAssignment_4_in_rule__ModelEntityConfigurationRange__Group__4__Impl17202 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ModelEntityConfigurationRange__Group__5__Impl_in_rule__ModelEntityConfigurationRange__Group__517232 = new BitSet(new long[]{0x0040000000000030L});
+        public static final BitSet FOLLOW_rule__ModelEntityConfigurationRange__Group__5__Impl_in_rule__ModelEntityConfigurationRange__Group__517232 = new BitSet(new long[]{0x0000000000000030L});
         public static final BitSet FOLLOW_rule__ModelEntityConfigurationRange__Group__6_in_rule__ModelEntityConfigurationRange__Group__517235 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_82_in_rule__ModelEntityConfigurationRange__Group__5__Impl17263 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__ModelEntityConfigurationRange__Group__6__Impl_in_rule__ModelEntityConfigurationRange__Group__617294 = new BitSet(new long[]{0x0000000000000000L,0x0000000000100000L});
@@ -39690,7 +39694,7 @@ public class InternalStaLangParser extends AbstractInternalContentAssistParser {
         public static final BitSet FOLLOW_rule__ModelEntityConfigurationRange__VariationPossibilityAssignment_8_in_rule__ModelEntityConfigurationRange__Group__8__Impl17446 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__ModelEntityConfigurationRange__Group__9__Impl_in_rule__ModelEntityConfigurationRange__Group__917476 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_42_in_rule__ModelEntityConfigurationRange__Group__9__Impl17504 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ModelEntityConfigurationRange__Group_1__0__Impl_in_rule__ModelEntityConfigurationRange__Group_1__017555 = new BitSet(new long[]{0x0040000000000030L});
+        public static final BitSet FOLLOW_rule__ModelEntityConfigurationRange__Group_1__0__Impl_in_rule__ModelEntityConfigurationRange__Group_1__017555 = new BitSet(new long[]{0x0000000000000030L});
         public static final BitSet FOLLOW_rule__ModelEntityConfigurationRange__Group_1__1_in_rule__ModelEntityConfigurationRange__Group_1__017558 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_43_in_rule__ModelEntityConfigurationRange__Group_1__0__Impl17586 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__ModelEntityConfigurationRange__Group_1__1__Impl_in_rule__ModelEntityConfigurationRange__Group_1__117617 = new BitSet(new long[]{0x0000100000000000L});
@@ -39760,7 +39764,7 @@ public class InternalStaLangParser extends AbstractInternalContentAssistParser {
         public static final BitSet FOLLOW_rule__SetOfConfigurations__Group_2__0__Impl_in_rule__SetOfConfigurations__Group_2__019064 = new BitSet(new long[]{0x0008000000000000L});
         public static final BitSet FOLLOW_rule__SetOfConfigurations__Group_2__1_in_rule__SetOfConfigurations__Group_2__019067 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_92_in_rule__SetOfConfigurations__Group_2__0__Impl19095 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__SetOfConfigurations__Group_2__1__Impl_in_rule__SetOfConfigurations__Group_2__119126 = new BitSet(new long[]{0x0040000000000030L});
+        public static final BitSet FOLLOW_rule__SetOfConfigurations__Group_2__1__Impl_in_rule__SetOfConfigurations__Group_2__119126 = new BitSet(new long[]{0x0000000000000030L});
         public static final BitSet FOLLOW_rule__SetOfConfigurations__Group_2__2_in_rule__SetOfConfigurations__Group_2__119129 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_51_in_rule__SetOfConfigurations__Group_2__1__Impl19157 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__SetOfConfigurations__Group_2__2__Impl_in_rule__SetOfConfigurations__Group_2__219188 = new BitSet(new long[]{0x0010400000000000L});
@@ -39771,12 +39775,12 @@ public class InternalStaLangParser extends AbstractInternalContentAssistParser {
         public static final BitSet FOLLOW_rule__SetOfConfigurations__Group_2_3__0_in_rule__SetOfConfigurations__Group_2__3__Impl19278 = new BitSet(new long[]{0x0000400000000002L});
         public static final BitSet FOLLOW_rule__SetOfConfigurations__Group_2__4__Impl_in_rule__SetOfConfigurations__Group_2__419309 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_52_in_rule__SetOfConfigurations__Group_2__4__Impl19337 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__SetOfConfigurations__Group_2_3__0__Impl_in_rule__SetOfConfigurations__Group_2_3__019378 = new BitSet(new long[]{0x0040000000000030L});
+        public static final BitSet FOLLOW_rule__SetOfConfigurations__Group_2_3__0__Impl_in_rule__SetOfConfigurations__Group_2_3__019378 = new BitSet(new long[]{0x0000000000000030L});
         public static final BitSet FOLLOW_rule__SetOfConfigurations__Group_2_3__1_in_rule__SetOfConfigurations__Group_2_3__019381 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_46_in_rule__SetOfConfigurations__Group_2_3__0__Impl19409 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__SetOfConfigurations__Group_2_3__1__Impl_in_rule__SetOfConfigurations__Group_2_3__119440 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__SetOfConfigurations__VariantsAssignment_2_3_1_in_rule__SetOfConfigurations__Group_2_3__1__Impl19467 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__OclConstraint__Group__0__Impl_in_rule__OclConstraint__Group__019501 = new BitSet(new long[]{0x0040000000000030L});
+        public static final BitSet FOLLOW_rule__OclConstraint__Group__0__Impl_in_rule__OclConstraint__Group__019501 = new BitSet(new long[]{0x0000000000000030L});
         public static final BitSet FOLLOW_rule__OclConstraint__Group__1_in_rule__OclConstraint__Group__019504 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_93_in_rule__OclConstraint__Group__0__Impl19532 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__OclConstraint__Group__1__Impl_in_rule__OclConstraint__Group__119563 = new BitSet(new long[]{0x0000001000000000L});
@@ -39785,7 +39789,7 @@ public class InternalStaLangParser extends AbstractInternalContentAssistParser {
         public static final BitSet FOLLOW_rule__OclConstraint__Group__2__Impl_in_rule__OclConstraint__Group__219623 = new BitSet(new long[]{0x0000000000000000L,0x0000000040000000L});
         public static final BitSet FOLLOW_rule__OclConstraint__Group__3_in_rule__OclConstraint__Group__219626 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_36_in_rule__OclConstraint__Group__2__Impl19654 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__OclConstraint__Group__3__Impl_in_rule__OclConstraint__Group__319685 = new BitSet(new long[]{0x0040000000000030L});
+        public static final BitSet FOLLOW_rule__OclConstraint__Group__3__Impl_in_rule__OclConstraint__Group__319685 = new BitSet(new long[]{0x0000000000000030L});
         public static final BitSet FOLLOW_rule__OclConstraint__Group__4_in_rule__OclConstraint__Group__319688 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_94_in_rule__OclConstraint__Group__3__Impl19716 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__OclConstraint__Group__4__Impl_in_rule__OclConstraint__Group__419747 = new BitSet(new long[]{0x0000040000000000L});
@@ -39813,7 +39817,7 @@ public class InternalStaLangParser extends AbstractInternalContentAssistParser {
         public static final BitSet FOLLOW_rule__Objective__Alternatives_5_in_rule__Objective__Group__5__Impl20215 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__Objective__Group__6__Impl_in_rule__Objective__Group__620245 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_42_in_rule__Objective__Group__6__Impl20273 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Objective__Group_1__0__Impl_in_rule__Objective__Group_1__020318 = new BitSet(new long[]{0x0040000000000030L});
+        public static final BitSet FOLLOW_rule__Objective__Group_1__0__Impl_in_rule__Objective__Group_1__020318 = new BitSet(new long[]{0x0000000000000030L});
         public static final BitSet FOLLOW_rule__Objective__Group_1__1_in_rule__Objective__Group_1__020321 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_43_in_rule__Objective__Group_1__0__Impl20349 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__Objective__Group_1__1__Impl_in_rule__Objective__Group_1__120380 = new BitSet(new long[]{0x0000100000000000L});
@@ -39842,7 +39846,7 @@ public class InternalStaLangParser extends AbstractInternalContentAssistParser {
         public static final BitSet FOLLOW_rule__Event__NameAssignment_0_in_rule__Event__Group__0__Impl20908 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__Event__Group__1__Impl_in_rule__Event__Group__120938 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__Event__Group_1__0_in_rule__Event__Group__1__Impl20965 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Event__Group_1__0__Impl_in_rule__Event__Group_1__021000 = new BitSet(new long[]{0x0040000000000030L});
+        public static final BitSet FOLLOW_rule__Event__Group_1__0__Impl_in_rule__Event__Group_1__021000 = new BitSet(new long[]{0x0000000000000030L});
         public static final BitSet FOLLOW_rule__Event__Group_1__1_in_rule__Event__Group_1__021003 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_43_in_rule__Event__Group_1__0__Impl21031 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__Event__Group_1__1__Impl_in_rule__Event__Group_1__121062 = new BitSet(new long[]{0x0000100000000000L});
@@ -39859,10 +39863,10 @@ public class InternalStaLangParser extends AbstractInternalContentAssistParser {
         public static final BitSet FOLLOW_rule__WeightedTactic__Group__2__Impl_in_rule__WeightedTactic__Group__221308 = new BitSet(new long[]{0x0008000000000000L});
         public static final BitSet FOLLOW_rule__WeightedTactic__Group__3_in_rule__WeightedTactic__Group__221311 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_50_in_rule__WeightedTactic__Group__2__Impl21339 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__WeightedTactic__Group__3__Impl_in_rule__WeightedTactic__Group__321370 = new BitSet(new long[]{0x0040000000000030L,0x0000000100000000L});
+        public static final BitSet FOLLOW_rule__WeightedTactic__Group__3__Impl_in_rule__WeightedTactic__Group__321370 = new BitSet(new long[]{0x0000000000000030L,0x0000000100000000L});
         public static final BitSet FOLLOW_rule__WeightedTactic__Group__4_in_rule__WeightedTactic__Group__321373 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_51_in_rule__WeightedTactic__Group__3__Impl21401 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__WeightedTactic__Group__4__Impl_in_rule__WeightedTactic__Group__421432 = new BitSet(new long[]{0x0040000000000030L,0x0000000100000000L});
+        public static final BitSet FOLLOW_rule__WeightedTactic__Group__4__Impl_in_rule__WeightedTactic__Group__421432 = new BitSet(new long[]{0x0000000000000030L,0x0000000100000000L});
         public static final BitSet FOLLOW_rule__WeightedTactic__Group__5_in_rule__WeightedTactic__Group__421435 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__WeightedTactic__Group_4__0_in_rule__WeightedTactic__Group__4__Impl21462 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__WeightedTactic__Group__5__Impl_in_rule__WeightedTactic__Group__521493 = new BitSet(new long[]{0x0000400000000000L});
@@ -39891,7 +39895,7 @@ public class InternalStaLangParser extends AbstractInternalContentAssistParser {
         public static final BitSet FOLLOW_rule__WeightedTactic__Group_12__0_in_rule__WeightedTactic__Group__12__Impl21949 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__WeightedTactic__Group__13__Impl_in_rule__WeightedTactic__Group__1321980 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_52_in_rule__WeightedTactic__Group__13__Impl22008 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__WeightedTactic__Group_1__0__Impl_in_rule__WeightedTactic__Group_1__022067 = new BitSet(new long[]{0x0040000000000030L});
+        public static final BitSet FOLLOW_rule__WeightedTactic__Group_1__0__Impl_in_rule__WeightedTactic__Group_1__022067 = new BitSet(new long[]{0x0000000000000030L});
         public static final BitSet FOLLOW_rule__WeightedTactic__Group_1__1_in_rule__WeightedTactic__Group_1__022070 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_43_in_rule__WeightedTactic__Group_1__0__Impl22098 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__WeightedTactic__Group_1__1__Impl_in_rule__WeightedTactic__Group_1__122129 = new BitSet(new long[]{0x0000100000000000L});
@@ -39917,10 +39921,10 @@ public class InternalStaLangParser extends AbstractInternalContentAssistParser {
         public static final BitSet FOLLOW_98_in_rule__WeightedTactic__Group_10__0__Impl22535 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__WeightedTactic__Group_10__1__Impl_in_rule__WeightedTactic__Group_10__122566 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_50_in_rule__WeightedTactic__Group_10__1__Impl22594 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__WeightedTactic__Group_12__0__Impl_in_rule__WeightedTactic__Group_12__022629 = new BitSet(new long[]{0x0040000000000030L,0x0000000800000000L});
+        public static final BitSet FOLLOW_rule__WeightedTactic__Group_12__0__Impl_in_rule__WeightedTactic__Group_12__022629 = new BitSet(new long[]{0x0000000000000030L,0x0000000800000000L});
         public static final BitSet FOLLOW_rule__WeightedTactic__Group_12__1_in_rule__WeightedTactic__Group_12__022632 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_46_in_rule__WeightedTactic__Group_12__0__Impl22660 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__WeightedTactic__Group_12__1__Impl_in_rule__WeightedTactic__Group_12__122691 = new BitSet(new long[]{0x0040000000000030L,0x0000000800000000L});
+        public static final BitSet FOLLOW_rule__WeightedTactic__Group_12__1__Impl_in_rule__WeightedTactic__Group_12__122691 = new BitSet(new long[]{0x0000000000000030L,0x0000000800000000L});
         public static final BitSet FOLLOW_rule__WeightedTactic__Group_12__2_in_rule__WeightedTactic__Group_12__122694 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__WeightedTactic__Group_12_1__0_in_rule__WeightedTactic__Group_12__1__Impl22721 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__WeightedTactic__Group_12__2__Impl_in_rule__WeightedTactic__Group_12__222752 = new BitSet(new long[]{0x0000000000000002L});
@@ -39945,7 +39949,7 @@ public class InternalStaLangParser extends AbstractInternalContentAssistParser {
         public static final BitSet FOLLOW_rule__WeightingFunction__Group__4__Impl_in_rule__WeightingFunction__Group__423185 = new BitSet(new long[]{0x0004000000000000L});
         public static final BitSet FOLLOW_rule__WeightingFunction__Group__5_in_rule__WeightingFunction__Group__423188 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_100_in_rule__WeightingFunction__Group__4__Impl23216 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__WeightingFunction__Group__5__Impl_in_rule__WeightingFunction__Group__523247 = new BitSet(new long[]{0x0040000000000030L});
+        public static final BitSet FOLLOW_rule__WeightingFunction__Group__5__Impl_in_rule__WeightingFunction__Group__523247 = new BitSet(new long[]{0x0000000000000030L});
         public static final BitSet FOLLOW_rule__WeightingFunction__Group__6_in_rule__WeightingFunction__Group__523250 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_50_in_rule__WeightingFunction__Group__5__Impl23278 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__WeightingFunction__Group__6__Impl_in_rule__WeightingFunction__Group__623309 = new BitSet(new long[]{0x0000000000000000L,0x0000002000000000L});
@@ -39957,7 +39961,7 @@ public class InternalStaLangParser extends AbstractInternalContentAssistParser {
         public static final BitSet FOLLOW_rule__WeightingFunction__Group__8__Impl_in_rule__WeightingFunction__Group__823431 = new BitSet(new long[]{0x0008000000000000L});
         public static final BitSet FOLLOW_rule__WeightingFunction__Group__9_in_rule__WeightingFunction__Group__823434 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_50_in_rule__WeightingFunction__Group__8__Impl23462 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__WeightingFunction__Group__9__Impl_in_rule__WeightingFunction__Group__923493 = new BitSet(new long[]{0x0040000000000030L,0x0000080000000000L});
+        public static final BitSet FOLLOW_rule__WeightingFunction__Group__9__Impl_in_rule__WeightingFunction__Group__923493 = new BitSet(new long[]{0x0000000000000030L,0x0000080000000000L});
         public static final BitSet FOLLOW_rule__WeightingFunction__Group__10_in_rule__WeightingFunction__Group__923496 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_51_in_rule__WeightingFunction__Group__9__Impl23524 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__WeightingFunction__Group__10__Impl_in_rule__WeightingFunction__Group__1023555 = new BitSet(new long[]{0x0010400000000000L});
@@ -39971,7 +39975,7 @@ public class InternalStaLangParser extends AbstractInternalContentAssistParser {
         public static final BitSet FOLLOW_52_in_rule__WeightingFunction__Group__12__Impl23707 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__WeightingFunction__Group__13__Impl_in_rule__WeightingFunction__Group__1323738 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_52_in_rule__WeightingFunction__Group__13__Impl23766 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__WeightingFunction__Group_1__0__Impl_in_rule__WeightingFunction__Group_1__023825 = new BitSet(new long[]{0x0040000000000030L});
+        public static final BitSet FOLLOW_rule__WeightingFunction__Group_1__0__Impl_in_rule__WeightingFunction__Group_1__023825 = new BitSet(new long[]{0x0000000000000030L});
         public static final BitSet FOLLOW_rule__WeightingFunction__Group_1__1_in_rule__WeightingFunction__Group_1__023828 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_43_in_rule__WeightingFunction__Group_1__0__Impl23856 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__WeightingFunction__Group_1__1__Impl_in_rule__WeightingFunction__Group_1__123887 = new BitSet(new long[]{0x0000100000000000L});
@@ -39979,7 +39983,7 @@ public class InternalStaLangParser extends AbstractInternalContentAssistParser {
         public static final BitSet FOLLOW_rule__WeightingFunction__IdAssignment_1_1_in_rule__WeightingFunction__Group_1__1__Impl23917 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__WeightingFunction__Group_1__2__Impl_in_rule__WeightingFunction__Group_1__223947 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_44_in_rule__WeightingFunction__Group_1__2__Impl23975 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__WeightingFunction__Group_11__0__Impl_in_rule__WeightingFunction__Group_11__024012 = new BitSet(new long[]{0x0040000000000030L,0x0000080000000000L});
+        public static final BitSet FOLLOW_rule__WeightingFunction__Group_11__0__Impl_in_rule__WeightingFunction__Group_11__024012 = new BitSet(new long[]{0x0000000000000030L,0x0000080000000000L});
         public static final BitSet FOLLOW_rule__WeightingFunction__Group_11__1_in_rule__WeightingFunction__Group_11__024015 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_46_in_rule__WeightingFunction__Group_11__0__Impl24043 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__WeightingFunction__Group_11__1__Impl_in_rule__WeightingFunction__Group_11__124074 = new BitSet(new long[]{0x0000000000000002L});
@@ -39987,10 +39991,10 @@ public class InternalStaLangParser extends AbstractInternalContentAssistParser {
         public static final BitSet FOLLOW_rule__Specification__Group__0__Impl_in_rule__Specification__Group__024135 = new BitSet(new long[]{0x0008000000000000L,0x0000004000000000L});
         public static final BitSet FOLLOW_rule__Specification__Group__1_in_rule__Specification__Group__024138 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_102_in_rule__Specification__Group__0__Impl24167 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Specification__Group__1__Impl_in_rule__Specification__Group__124200 = new BitSet(new long[]{0x0040000000000030L,0x0000008000000000L});
+        public static final BitSet FOLLOW_rule__Specification__Group__1__Impl_in_rule__Specification__Group__124200 = new BitSet(new long[]{0x0000000000000030L,0x0000008000000000L});
         public static final BitSet FOLLOW_rule__Specification__Group__2_in_rule__Specification__Group__124203 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_51_in_rule__Specification__Group__1__Impl24231 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Specification__Group__2__Impl_in_rule__Specification__Group__224262 = new BitSet(new long[]{0x0040000000000030L,0x0000008000000000L});
+        public static final BitSet FOLLOW_rule__Specification__Group__2__Impl_in_rule__Specification__Group__224262 = new BitSet(new long[]{0x0000000000000030L,0x0000008000000000L});
         public static final BitSet FOLLOW_rule__Specification__Group__3_in_rule__Specification__Group__224265 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_103_in_rule__Specification__Group__2__Impl24294 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__Specification__Group__3__Impl_in_rule__Specification__Group__324327 = new BitSet(new long[]{0x0000400000000000L});
@@ -40016,7 +40020,7 @@ public class InternalStaLangParser extends AbstractInternalContentAssistParser {
         public static final BitSet FOLLOW_rule__Specification__ValueAssignment_9_in_rule__Specification__Group__9__Impl24731 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__Specification__Group__10__Impl_in_rule__Specification__Group__1024761 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_52_in_rule__Specification__Group__10__Impl24789 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__MetricValue__Group__0__Impl_in_rule__MetricValue__Group__024849 = new BitSet(new long[]{0x0040000000000030L});
+        public static final BitSet FOLLOW_rule__MetricValue__Group__0__Impl_in_rule__MetricValue__Group__024849 = new BitSet(new long[]{0x0000000000000030L});
         public static final BitSet FOLLOW_rule__MetricValue__Group__1_in_rule__MetricValue__Group__024852 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_105_in_rule__MetricValue__Group__0__Impl24880 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__MetricValue__Group__1__Impl_in_rule__MetricValue__Group__124911 = new BitSet(new long[]{0x0000081000000000L});
@@ -40034,13 +40038,13 @@ public class InternalStaLangParser extends AbstractInternalContentAssistParser {
         public static final BitSet FOLLOW_rule__MetricValue__Group__5__Impl_in_rule__MetricValue__Group__525156 = new BitSet(new long[]{0x0000000000000000L,0x0000040000000000L});
         public static final BitSet FOLLOW_rule__MetricValue__Group__6_in_rule__MetricValue__Group__525159 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__MetricValue__ValueAssignment_5_in_rule__MetricValue__Group__5__Impl25186 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__MetricValue__Group__6__Impl_in_rule__MetricValue__Group__625216 = new BitSet(new long[]{0x0040000000000030L});
+        public static final BitSet FOLLOW_rule__MetricValue__Group__6__Impl_in_rule__MetricValue__Group__625216 = new BitSet(new long[]{0x0000000000000030L});
         public static final BitSet FOLLOW_rule__MetricValue__Group__7_in_rule__MetricValue__Group__625219 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_106_in_rule__MetricValue__Group__6__Impl25247 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__MetricValue__Group__7__Impl_in_rule__MetricValue__Group__725278 = new BitSet(new long[]{0x0000000000000000L,0x0000008000000000L});
         public static final BitSet FOLLOW_rule__MetricValue__Group__8_in_rule__MetricValue__Group__725281 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__MetricValue__MeasuredEntityAssignment_7_in_rule__MetricValue__Group__7__Impl25308 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__MetricValue__Group__8__Impl_in_rule__MetricValue__Group__825338 = new BitSet(new long[]{0x0040000000000030L});
+        public static final BitSet FOLLOW_rule__MetricValue__Group__8__Impl_in_rule__MetricValue__Group__825338 = new BitSet(new long[]{0x0000000000000030L});
         public static final BitSet FOLLOW_rule__MetricValue__Group__9_in_rule__MetricValue__Group__825341 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_103_in_rule__MetricValue__Group__8__Impl25369 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__MetricValue__Group__9__Impl_in_rule__MetricValue__Group__925400 = new BitSet(new long[]{0x0000040000000000L});
@@ -40048,7 +40052,7 @@ public class InternalStaLangParser extends AbstractInternalContentAssistParser {
         public static final BitSet FOLLOW_rule__MetricValue__MetricTypeAssignment_9_in_rule__MetricValue__Group__9__Impl25430 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__MetricValue__Group__10__Impl_in_rule__MetricValue__Group__1025460 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_42_in_rule__MetricValue__Group__10__Impl25488 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__MetricValue__Group_2__0__Impl_in_rule__MetricValue__Group_2__025541 = new BitSet(new long[]{0x0040000000000030L});
+        public static final BitSet FOLLOW_rule__MetricValue__Group_2__0__Impl_in_rule__MetricValue__Group_2__025541 = new BitSet(new long[]{0x0000000000000030L});
         public static final BitSet FOLLOW_rule__MetricValue__Group_2__1_in_rule__MetricValue__Group_2__025544 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_43_in_rule__MetricValue__Group_2__0__Impl25572 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__MetricValue__Group_2__1__Impl_in_rule__MetricValue__Group_2__125603 = new BitSet(new long[]{0x0000100000000000L});
@@ -40056,7 +40060,7 @@ public class InternalStaLangParser extends AbstractInternalContentAssistParser {
         public static final BitSet FOLLOW_rule__MetricValue__IdAssignment_2_1_in_rule__MetricValue__Group_2__1__Impl25633 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__MetricValue__Group_2__2__Impl_in_rule__MetricValue__Group_2__225663 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_44_in_rule__MetricValue__Group_2__2__Impl25691 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__WeightedMetric__Group__0__Impl_in_rule__WeightedMetric__Group__025731 = new BitSet(new long[]{0x0040000000000030L,0x0000080000000000L});
+        public static final BitSet FOLLOW_rule__WeightedMetric__Group__0__Impl_in_rule__WeightedMetric__Group__025731 = new BitSet(new long[]{0x0000000000000030L,0x0000080000000000L});
         public static final BitSet FOLLOW_rule__WeightedMetric__Group__1_in_rule__WeightedMetric__Group__025734 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_107_in_rule__WeightedMetric__Group__0__Impl25763 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__WeightedMetric__Group__1__Impl_in_rule__WeightedMetric__Group__125796 = new BitSet(new long[]{0x0004080000000000L});
@@ -40068,10 +40072,10 @@ public class InternalStaLangParser extends AbstractInternalContentAssistParser {
         public static final BitSet FOLLOW_rule__WeightedMetric__Group__3__Impl_in_rule__WeightedMetric__Group__325917 = new BitSet(new long[]{0x0008000000000000L});
         public static final BitSet FOLLOW_rule__WeightedMetric__Group__4_in_rule__WeightedMetric__Group__325920 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_50_in_rule__WeightedMetric__Group__3__Impl25948 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__WeightedMetric__Group__4__Impl_in_rule__WeightedMetric__Group__425979 = new BitSet(new long[]{0x0040000000000030L,0x0000008000000000L});
+        public static final BitSet FOLLOW_rule__WeightedMetric__Group__4__Impl_in_rule__WeightedMetric__Group__425979 = new BitSet(new long[]{0x0000000000000030L,0x0000008000000000L});
         public static final BitSet FOLLOW_rule__WeightedMetric__Group__5_in_rule__WeightedMetric__Group__425982 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_51_in_rule__WeightedMetric__Group__4__Impl26010 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__WeightedMetric__Group__5__Impl_in_rule__WeightedMetric__Group__526041 = new BitSet(new long[]{0x0040000000000030L,0x0000008000000000L});
+        public static final BitSet FOLLOW_rule__WeightedMetric__Group__5__Impl_in_rule__WeightedMetric__Group__526041 = new BitSet(new long[]{0x0000000000000030L,0x0000008000000000L});
         public static final BitSet FOLLOW_rule__WeightedMetric__Group__6_in_rule__WeightedMetric__Group__526044 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__WeightedMetric__Group_5__0_in_rule__WeightedMetric__Group__5__Impl26071 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__WeightedMetric__Group__6__Impl_in_rule__WeightedMetric__Group__626102 = new BitSet(new long[]{0x0000400000000000L});
@@ -40088,7 +40092,7 @@ public class InternalStaLangParser extends AbstractInternalContentAssistParser {
         public static final BitSet FOLLOW_rule__WeightedMetric__WeightAssignment_9_in_rule__WeightedMetric__Group__9__Impl26315 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__WeightedMetric__Group__10__Impl_in_rule__WeightedMetric__Group__1026345 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_52_in_rule__WeightedMetric__Group__10__Impl26373 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__WeightedMetric__Group_2__0__Impl_in_rule__WeightedMetric__Group_2__026426 = new BitSet(new long[]{0x0040000000000030L});
+        public static final BitSet FOLLOW_rule__WeightedMetric__Group_2__0__Impl_in_rule__WeightedMetric__Group_2__026426 = new BitSet(new long[]{0x0000000000000030L});
         public static final BitSet FOLLOW_rule__WeightedMetric__Group_2__1_in_rule__WeightedMetric__Group_2__026429 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_43_in_rule__WeightedMetric__Group_2__0__Impl26457 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__WeightedMetric__Group_2__1__Impl_in_rule__WeightedMetric__Group_2__126488 = new BitSet(new long[]{0x0000100000000000L});
@@ -40107,7 +40111,7 @@ public class InternalStaLangParser extends AbstractInternalContentAssistParser {
         public static final BitSet FOLLOW_rule__WeightedMetric__Group_8__1__Impl_in_rule__WeightedMetric__Group_8__126800 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_50_in_rule__WeightedMetric__Group_8__1__Impl26828 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_ruleImportDeclaration_in_rule__AdaptationProcess__ImportDeclarationAssignment_026868 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_RULE_ID_in_rule__AdaptationProcess__NameAssignment_226899 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleEString_in_rule__AdaptationProcess__NameAssignment_226899 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_ruleEString_in_rule__AdaptationProcess__IdAssignment_3_126930 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_ruleParameter_in_rule__AdaptationProcess__ParametersAssignment_5_226961 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_ruleParameter_in_rule__AdaptationProcess__ParametersAssignment_5_3_126992 = new BitSet(new long[]{0x0000000000000002L});
diff --git a/edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/StaLang.xtextbin b/edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/StaLang.xtextbin
index ed90325a6382cbd94b88030db8118dbe7de20632..7ea71c39a38ed318b6a43186e9aa2c8a6807e0ce 100644
GIT binary patch
delta 15
Xcmey7@-t<_Mh+&2`pug-j%fk_K?Dat

delta 14
WcmeyF@*`!#Mh-@~&6_!nX#xN^*an{f

diff --git a/edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g b/edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g
index 76d904c2..14130652 100644
--- a/edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g
+++ b/edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g
@@ -102,19 +102,19 @@ ruleAdaptationProcess returns [EObject current=null]
     }
 (
 (
-		lv_name_2_0=RULE_ID
-		{
-			newLeafNode(lv_name_2_0, grammarAccess.getAdaptationProcessAccess().getNameIDTerminalRuleCall_2_0()); 
-		}
-		{
+		{ 
+	        newCompositeNode(grammarAccess.getAdaptationProcessAccess().getNameEStringParserRuleCall_2_0()); 
+	    }
+		lv_name_2_0=ruleEString		{
 	        if ($current==null) {
-	            $current = createModelElement(grammarAccess.getAdaptationProcessRule());
+	            $current = createModelElementForParent(grammarAccess.getAdaptationProcessRule());
 	        }
-       		setWithLastConsumed(
+       		set(
        			$current, 
        			"name",
         		lv_name_2_0, 
-        		"ID");
+        		"EString");
+	        afterParserOrEnumRuleCall();
 	    }
 
 )
diff --git a/edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.tokens b/edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.tokens
index 421519af..0799b94e 100644
--- a/edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.tokens
+++ b/edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.tokens
@@ -1,4 +1,4 @@
-RULE_ID=4
+RULE_ID=5
 T__29=29
 T__28=28
 T__27=27
@@ -40,7 +40,7 @@ T__86=86
 T__89=89
 T__88=88
 RULE_ML_COMMENT=7
-RULE_STRING=5
+RULE_STRING=4
 T__71=71
 T__72=72
 T__70=70
diff --git a/edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLangLexer.java b/edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLangLexer.java
index fb99f530..024ca5e4 100644
--- a/edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLangLexer.java
+++ b/edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLangLexer.java
@@ -12,7 +12,7 @@ import java.util.ArrayList;
 
 @SuppressWarnings("all")
 public class InternalStaLangLexer extends Lexer {
-    public static final int RULE_ID=4;
+    public static final int RULE_ID=5;
     public static final int T__29=29;
     public static final int T__28=28;
     public static final int T__27=27;
@@ -55,7 +55,7 @@ public class InternalStaLangLexer extends Lexer {
     public static final int T__89=89;
     public static final int T__88=88;
     public static final int RULE_ML_COMMENT=7;
-    public static final int RULE_STRING=5;
+    public static final int RULE_STRING=4;
     public static final int T__71=71;
     public static final int T__72=72;
     public static final int T__70=70;
diff --git a/edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLangParser.java b/edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLangParser.java
index 6144ac44..1ef737f8 100644
--- a/edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLangParser.java
+++ b/edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLangParser.java
@@ -22,9 +22,9 @@ import java.util.ArrayList;
 @SuppressWarnings("all")
 public class InternalStaLangParser 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", "'AdaptationProcess'", "'[id:'", "']'", "'{'", "'parameters'", "':'", "','", "'goal'", "'actions'", "'tactics'", "'strategies'", "'}'", "'Tactic'", "'implementedPlan'", "'input'", "'='", "'('", "')'", "'output'", "'Action'", "'operation'", "'referredAdaptationPoint'", "'objective'", "'triggeringEvent'", "'weightingFunction'", "'type'", "'value'", "'description'", "'objectives'", "'ImportDeclaration'", "'StartAction'", "'StopAction'", "'LoopAction'", "'repeat'", "'counter'", "'BranchAction'", "'if'", "'context'", "'condition'", "'then'", "'else'", "'ActionReference'", "'refersTo'", "'ModelVariableConfigurationRange'", "'name'", "'minValue'", "'maxValue'", "'adaptableEntity'", "'ModelEntityConfigurationRange'", "'variationPossibility'", "'-'", "'.'", "'E'", "'e'", "'PropertyRange'", "'minValueConstraint'", "'maxValueConstraint'", "'SetOfConfigurations'", "'variants'", "'valueConstraint'", "'OclConstraint'", "'oclString'", "'specification'", "'tactic'", "'default'", "'current'", "'lastImpact'", "'weightingFunctionImplementation'", "'weightedMetrics'", "'Specification'", "'metricType'", "'relationalOperator'", "'EDate'", "'MetricValue'", "'measuredEntity'", "'WeightedMetric'", "'weight'", "'NOT_SET'", "'THIS'", "'LEAST_UTILIZED_FIRST'", "'MOST_UTILIZED_FIRST'", "'RANDOM'", "'ALL'", "'INCREASE'", "'DECREASE'", "'MIGRATE'", "'=='", "'!='", "'>'", "'>='", "'<'", "'<='", "'EQUAL'", "'NOT_EQUAL'", "'GREATER'", "'GREATER_EQUAL'", "'LESS'", "'LESS_EQUAL'"
+        "<invalid>", "<EOR>", "<DOWN>", "<UP>", "RULE_STRING", "RULE_ID", "RULE_INT", "RULE_ML_COMMENT", "RULE_SL_COMMENT", "RULE_WS", "RULE_ANY_OTHER", "'AdaptationProcess'", "'[id:'", "']'", "'{'", "'parameters'", "':'", "','", "'goal'", "'actions'", "'tactics'", "'strategies'", "'}'", "'Tactic'", "'implementedPlan'", "'input'", "'='", "'('", "')'", "'output'", "'Action'", "'operation'", "'referredAdaptationPoint'", "'objective'", "'triggeringEvent'", "'weightingFunction'", "'type'", "'value'", "'description'", "'objectives'", "'ImportDeclaration'", "'StartAction'", "'StopAction'", "'LoopAction'", "'repeat'", "'counter'", "'BranchAction'", "'if'", "'context'", "'condition'", "'then'", "'else'", "'ActionReference'", "'refersTo'", "'ModelVariableConfigurationRange'", "'name'", "'minValue'", "'maxValue'", "'adaptableEntity'", "'ModelEntityConfigurationRange'", "'variationPossibility'", "'-'", "'.'", "'E'", "'e'", "'PropertyRange'", "'minValueConstraint'", "'maxValueConstraint'", "'SetOfConfigurations'", "'variants'", "'valueConstraint'", "'OclConstraint'", "'oclString'", "'specification'", "'tactic'", "'default'", "'current'", "'lastImpact'", "'weightingFunctionImplementation'", "'weightedMetrics'", "'Specification'", "'metricType'", "'relationalOperator'", "'EDate'", "'MetricValue'", "'measuredEntity'", "'WeightedMetric'", "'weight'", "'NOT_SET'", "'THIS'", "'LEAST_UTILIZED_FIRST'", "'MOST_UTILIZED_FIRST'", "'RANDOM'", "'ALL'", "'INCREASE'", "'DECREASE'", "'MIGRATE'", "'=='", "'!='", "'>'", "'>='", "'<'", "'<='", "'EQUAL'", "'NOT_EQUAL'", "'GREATER'", "'GREATER_EQUAL'", "'LESS'", "'LESS_EQUAL'"
     };
-    public static final int RULE_ID=4;
+    public static final int RULE_ID=5;
     public static final int T__29=29;
     public static final int T__28=28;
     public static final int T__27=27;
@@ -67,7 +67,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
     public static final int T__89=89;
     public static final int T__88=88;
     public static final int RULE_ML_COMMENT=7;
-    public static final int RULE_STRING=5;
+    public static final int RULE_STRING=4;
     public static final int T__71=71;
     public static final int T__72=72;
     public static final int T__70=70;
@@ -206,12 +206,11 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
 
     // $ANTLR start "ruleAdaptationProcess"
-    // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:77:1: ruleAdaptationProcess returns [EObject current=null] : ( ( (lv_importDeclaration_0_0= ruleImportDeclaration ) )* otherlv_1= 'AdaptationProcess' ( (lv_name_2_0= RULE_ID ) ) (otherlv_3= '[id:' ( (lv_id_4_0= ruleEString ) ) otherlv_5= ']' )? otherlv_6= '{' (otherlv_7= 'parameters' otherlv_8= ':' ( (lv_parameters_9_0= ruleParameter ) ) (otherlv_10= ',' ( (lv_parameters_11_0= ruleParameter ) ) )* )? otherlv_12= 'goal' otherlv_13= ':' ( (lv_goal_14_0= ruleOverallGoal ) ) otherlv_15= 'actions' otherlv_16= ':' ( (lv_actions_17_0= ruleAction ) ) (otherlv_18= ',' ( (lv_actions_19_0= ruleAction ) ) )* otherlv_20= 'tactics' otherlv_21= ':' ( (lv_tactics_22_0= ruleTactic ) ) (otherlv_23= ',' ( (lv_tactics_24_0= ruleTactic ) ) )* otherlv_25= 'strategies' otherlv_26= ':' ( (lv_strategies_27_0= ruleStrategy ) ) (otherlv_28= ',' ( (lv_strategies_29_0= ruleStrategy ) ) )* otherlv_30= '}' ) ;
+    // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:77:1: ruleAdaptationProcess returns [EObject current=null] : ( ( (lv_importDeclaration_0_0= ruleImportDeclaration ) )* otherlv_1= 'AdaptationProcess' ( (lv_name_2_0= ruleEString ) ) (otherlv_3= '[id:' ( (lv_id_4_0= ruleEString ) ) otherlv_5= ']' )? otherlv_6= '{' (otherlv_7= 'parameters' otherlv_8= ':' ( (lv_parameters_9_0= ruleParameter ) ) (otherlv_10= ',' ( (lv_parameters_11_0= ruleParameter ) ) )* )? otherlv_12= 'goal' otherlv_13= ':' ( (lv_goal_14_0= ruleOverallGoal ) ) otherlv_15= 'actions' otherlv_16= ':' ( (lv_actions_17_0= ruleAction ) ) (otherlv_18= ',' ( (lv_actions_19_0= ruleAction ) ) )* otherlv_20= 'tactics' otherlv_21= ':' ( (lv_tactics_22_0= ruleTactic ) ) (otherlv_23= ',' ( (lv_tactics_24_0= ruleTactic ) ) )* otherlv_25= 'strategies' otherlv_26= ':' ( (lv_strategies_27_0= ruleStrategy ) ) (otherlv_28= ',' ( (lv_strategies_29_0= ruleStrategy ) ) )* otherlv_30= '}' ) ;
     public final EObject ruleAdaptationProcess() throws RecognitionException {
         EObject current = null;
 
         Token otherlv_1=null;
-        Token lv_name_2_0=null;
         Token otherlv_3=null;
         Token otherlv_5=null;
         Token otherlv_6=null;
@@ -232,6 +231,8 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
         Token otherlv_30=null;
         EObject lv_importDeclaration_0_0 = null;
 
+        AntlrDatatypeRuleToken lv_name_2_0 = null;
+
         AntlrDatatypeRuleToken lv_id_4_0 = null;
 
         EObject lv_parameters_9_0 = null;
@@ -256,11 +257,11 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
          enterRule(); 
             
         try {
-            // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:80:28: ( ( ( (lv_importDeclaration_0_0= ruleImportDeclaration ) )* otherlv_1= 'AdaptationProcess' ( (lv_name_2_0= RULE_ID ) ) (otherlv_3= '[id:' ( (lv_id_4_0= ruleEString ) ) otherlv_5= ']' )? otherlv_6= '{' (otherlv_7= 'parameters' otherlv_8= ':' ( (lv_parameters_9_0= ruleParameter ) ) (otherlv_10= ',' ( (lv_parameters_11_0= ruleParameter ) ) )* )? otherlv_12= 'goal' otherlv_13= ':' ( (lv_goal_14_0= ruleOverallGoal ) ) otherlv_15= 'actions' otherlv_16= ':' ( (lv_actions_17_0= ruleAction ) ) (otherlv_18= ',' ( (lv_actions_19_0= ruleAction ) ) )* otherlv_20= 'tactics' otherlv_21= ':' ( (lv_tactics_22_0= ruleTactic ) ) (otherlv_23= ',' ( (lv_tactics_24_0= ruleTactic ) ) )* otherlv_25= 'strategies' otherlv_26= ':' ( (lv_strategies_27_0= ruleStrategy ) ) (otherlv_28= ',' ( (lv_strategies_29_0= ruleStrategy ) ) )* otherlv_30= '}' ) )
-            // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:81:1: ( ( (lv_importDeclaration_0_0= ruleImportDeclaration ) )* otherlv_1= 'AdaptationProcess' ( (lv_name_2_0= RULE_ID ) ) (otherlv_3= '[id:' ( (lv_id_4_0= ruleEString ) ) otherlv_5= ']' )? otherlv_6= '{' (otherlv_7= 'parameters' otherlv_8= ':' ( (lv_parameters_9_0= ruleParameter ) ) (otherlv_10= ',' ( (lv_parameters_11_0= ruleParameter ) ) )* )? otherlv_12= 'goal' otherlv_13= ':' ( (lv_goal_14_0= ruleOverallGoal ) ) otherlv_15= 'actions' otherlv_16= ':' ( (lv_actions_17_0= ruleAction ) ) (otherlv_18= ',' ( (lv_actions_19_0= ruleAction ) ) )* otherlv_20= 'tactics' otherlv_21= ':' ( (lv_tactics_22_0= ruleTactic ) ) (otherlv_23= ',' ( (lv_tactics_24_0= ruleTactic ) ) )* otherlv_25= 'strategies' otherlv_26= ':' ( (lv_strategies_27_0= ruleStrategy ) ) (otherlv_28= ',' ( (lv_strategies_29_0= ruleStrategy ) ) )* otherlv_30= '}' )
+            // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:80:28: ( ( ( (lv_importDeclaration_0_0= ruleImportDeclaration ) )* otherlv_1= 'AdaptationProcess' ( (lv_name_2_0= ruleEString ) ) (otherlv_3= '[id:' ( (lv_id_4_0= ruleEString ) ) otherlv_5= ']' )? otherlv_6= '{' (otherlv_7= 'parameters' otherlv_8= ':' ( (lv_parameters_9_0= ruleParameter ) ) (otherlv_10= ',' ( (lv_parameters_11_0= ruleParameter ) ) )* )? otherlv_12= 'goal' otherlv_13= ':' ( (lv_goal_14_0= ruleOverallGoal ) ) otherlv_15= 'actions' otherlv_16= ':' ( (lv_actions_17_0= ruleAction ) ) (otherlv_18= ',' ( (lv_actions_19_0= ruleAction ) ) )* otherlv_20= 'tactics' otherlv_21= ':' ( (lv_tactics_22_0= ruleTactic ) ) (otherlv_23= ',' ( (lv_tactics_24_0= ruleTactic ) ) )* otherlv_25= 'strategies' otherlv_26= ':' ( (lv_strategies_27_0= ruleStrategy ) ) (otherlv_28= ',' ( (lv_strategies_29_0= ruleStrategy ) ) )* otherlv_30= '}' ) )
+            // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:81:1: ( ( (lv_importDeclaration_0_0= ruleImportDeclaration ) )* otherlv_1= 'AdaptationProcess' ( (lv_name_2_0= ruleEString ) ) (otherlv_3= '[id:' ( (lv_id_4_0= ruleEString ) ) otherlv_5= ']' )? otherlv_6= '{' (otherlv_7= 'parameters' otherlv_8= ':' ( (lv_parameters_9_0= ruleParameter ) ) (otherlv_10= ',' ( (lv_parameters_11_0= ruleParameter ) ) )* )? otherlv_12= 'goal' otherlv_13= ':' ( (lv_goal_14_0= ruleOverallGoal ) ) otherlv_15= 'actions' otherlv_16= ':' ( (lv_actions_17_0= ruleAction ) ) (otherlv_18= ',' ( (lv_actions_19_0= ruleAction ) ) )* otherlv_20= 'tactics' otherlv_21= ':' ( (lv_tactics_22_0= ruleTactic ) ) (otherlv_23= ',' ( (lv_tactics_24_0= ruleTactic ) ) )* otherlv_25= 'strategies' otherlv_26= ':' ( (lv_strategies_27_0= ruleStrategy ) ) (otherlv_28= ',' ( (lv_strategies_29_0= ruleStrategy ) ) )* otherlv_30= '}' )
             {
-            // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:81:1: ( ( (lv_importDeclaration_0_0= ruleImportDeclaration ) )* otherlv_1= 'AdaptationProcess' ( (lv_name_2_0= RULE_ID ) ) (otherlv_3= '[id:' ( (lv_id_4_0= ruleEString ) ) otherlv_5= ']' )? otherlv_6= '{' (otherlv_7= 'parameters' otherlv_8= ':' ( (lv_parameters_9_0= ruleParameter ) ) (otherlv_10= ',' ( (lv_parameters_11_0= ruleParameter ) ) )* )? otherlv_12= 'goal' otherlv_13= ':' ( (lv_goal_14_0= ruleOverallGoal ) ) otherlv_15= 'actions' otherlv_16= ':' ( (lv_actions_17_0= ruleAction ) ) (otherlv_18= ',' ( (lv_actions_19_0= ruleAction ) ) )* otherlv_20= 'tactics' otherlv_21= ':' ( (lv_tactics_22_0= ruleTactic ) ) (otherlv_23= ',' ( (lv_tactics_24_0= ruleTactic ) ) )* otherlv_25= 'strategies' otherlv_26= ':' ( (lv_strategies_27_0= ruleStrategy ) ) (otherlv_28= ',' ( (lv_strategies_29_0= ruleStrategy ) ) )* otherlv_30= '}' )
-            // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:81:2: ( (lv_importDeclaration_0_0= ruleImportDeclaration ) )* otherlv_1= 'AdaptationProcess' ( (lv_name_2_0= RULE_ID ) ) (otherlv_3= '[id:' ( (lv_id_4_0= ruleEString ) ) otherlv_5= ']' )? otherlv_6= '{' (otherlv_7= 'parameters' otherlv_8= ':' ( (lv_parameters_9_0= ruleParameter ) ) (otherlv_10= ',' ( (lv_parameters_11_0= ruleParameter ) ) )* )? otherlv_12= 'goal' otherlv_13= ':' ( (lv_goal_14_0= ruleOverallGoal ) ) otherlv_15= 'actions' otherlv_16= ':' ( (lv_actions_17_0= ruleAction ) ) (otherlv_18= ',' ( (lv_actions_19_0= ruleAction ) ) )* otherlv_20= 'tactics' otherlv_21= ':' ( (lv_tactics_22_0= ruleTactic ) ) (otherlv_23= ',' ( (lv_tactics_24_0= ruleTactic ) ) )* otherlv_25= 'strategies' otherlv_26= ':' ( (lv_strategies_27_0= ruleStrategy ) ) (otherlv_28= ',' ( (lv_strategies_29_0= ruleStrategy ) ) )* otherlv_30= '}'
+            // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:81:1: ( ( (lv_importDeclaration_0_0= ruleImportDeclaration ) )* otherlv_1= 'AdaptationProcess' ( (lv_name_2_0= ruleEString ) ) (otherlv_3= '[id:' ( (lv_id_4_0= ruleEString ) ) otherlv_5= ']' )? otherlv_6= '{' (otherlv_7= 'parameters' otherlv_8= ':' ( (lv_parameters_9_0= ruleParameter ) ) (otherlv_10= ',' ( (lv_parameters_11_0= ruleParameter ) ) )* )? otherlv_12= 'goal' otherlv_13= ':' ( (lv_goal_14_0= ruleOverallGoal ) ) otherlv_15= 'actions' otherlv_16= ':' ( (lv_actions_17_0= ruleAction ) ) (otherlv_18= ',' ( (lv_actions_19_0= ruleAction ) ) )* otherlv_20= 'tactics' otherlv_21= ':' ( (lv_tactics_22_0= ruleTactic ) ) (otherlv_23= ',' ( (lv_tactics_24_0= ruleTactic ) ) )* otherlv_25= 'strategies' otherlv_26= ':' ( (lv_strategies_27_0= ruleStrategy ) ) (otherlv_28= ',' ( (lv_strategies_29_0= ruleStrategy ) ) )* otherlv_30= '}' )
+            // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:81:2: ( (lv_importDeclaration_0_0= ruleImportDeclaration ) )* otherlv_1= 'AdaptationProcess' ( (lv_name_2_0= ruleEString ) ) (otherlv_3= '[id:' ( (lv_id_4_0= ruleEString ) ) otherlv_5= ']' )? otherlv_6= '{' (otherlv_7= 'parameters' otherlv_8= ':' ( (lv_parameters_9_0= ruleParameter ) ) (otherlv_10= ',' ( (lv_parameters_11_0= ruleParameter ) ) )* )? otherlv_12= 'goal' otherlv_13= ':' ( (lv_goal_14_0= ruleOverallGoal ) ) otherlv_15= 'actions' otherlv_16= ':' ( (lv_actions_17_0= ruleAction ) ) (otherlv_18= ',' ( (lv_actions_19_0= ruleAction ) ) )* otherlv_20= 'tactics' otherlv_21= ':' ( (lv_tactics_22_0= ruleTactic ) ) (otherlv_23= ',' ( (lv_tactics_24_0= ruleTactic ) ) )* otherlv_25= 'strategies' otherlv_26= ':' ( (lv_strategies_27_0= ruleStrategy ) ) (otherlv_28= ',' ( (lv_strategies_29_0= ruleStrategy ) ) )* otherlv_30= '}'
             {
             // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:81:2: ( (lv_importDeclaration_0_0= ruleImportDeclaration ) )*
             loop1:
@@ -315,25 +316,30 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
                 	newLeafNode(otherlv_1, grammarAccess.getAdaptationProcessAccess().getAdaptationProcessKeyword_1());
                 
-            // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:103:1: ( (lv_name_2_0= RULE_ID ) )
-            // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:104:1: (lv_name_2_0= RULE_ID )
+            // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:103:1: ( (lv_name_2_0= ruleEString ) )
+            // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:104:1: (lv_name_2_0= ruleEString )
             {
-            // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:104:1: (lv_name_2_0= RULE_ID )
-            // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:105:3: lv_name_2_0= RULE_ID
+            // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:104:1: (lv_name_2_0= ruleEString )
+            // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:105:3: lv_name_2_0= ruleEString
             {
-            lv_name_2_0=(Token)match(input,RULE_ID,FollowSets000.FOLLOW_RULE_ID_in_ruleAdaptationProcess161); 
+             
+            	        newCompositeNode(grammarAccess.getAdaptationProcessAccess().getNameEStringParserRuleCall_2_0()); 
+            	    
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleAdaptationProcess165);
+            lv_name_2_0=ruleEString();
+
+            state._fsp--;
 
-            			newLeafNode(lv_name_2_0, grammarAccess.getAdaptationProcessAccess().getNameIDTerminalRuleCall_2_0()); 
-            		
 
             	        if (current==null) {
-            	            current = createModelElement(grammarAccess.getAdaptationProcessRule());
+            	            current = createModelElementForParent(grammarAccess.getAdaptationProcessRule());
             	        }
-                   		setWithLastConsumed(
+                   		set(
                    			current, 
                    			"name",
                     		lv_name_2_0, 
-                    		"ID");
+                    		"EString");
+            	        afterParserOrEnumRuleCall();
             	    
 
             }
@@ -352,7 +358,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                 case 1 :
                     // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:121:4: otherlv_3= '[id:' ( (lv_id_4_0= ruleEString ) ) otherlv_5= ']'
                     {
-                    otherlv_3=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleAdaptationProcess179); 
+                    otherlv_3=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleAdaptationProcess178); 
 
                         	newLeafNode(otherlv_3, grammarAccess.getAdaptationProcessAccess().getIdKeyword_3_0());
                         
@@ -365,7 +371,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                      
                     	        newCompositeNode(grammarAccess.getAdaptationProcessAccess().getIdEStringParserRuleCall_3_1_0()); 
                     	    
-                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleAdaptationProcess200);
+                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleAdaptationProcess199);
                     lv_id_4_0=ruleEString();
 
                     state._fsp--;
@@ -387,7 +393,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
                     }
 
-                    otherlv_5=(Token)match(input,13,FollowSets000.FOLLOW_13_in_ruleAdaptationProcess212); 
+                    otherlv_5=(Token)match(input,13,FollowSets000.FOLLOW_13_in_ruleAdaptationProcess211); 
 
                         	newLeafNode(otherlv_5, grammarAccess.getAdaptationProcessAccess().getRightSquareBracketKeyword_3_2());
                         
@@ -397,7 +403,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_6=(Token)match(input,14,FollowSets000.FOLLOW_14_in_ruleAdaptationProcess226); 
+            otherlv_6=(Token)match(input,14,FollowSets000.FOLLOW_14_in_ruleAdaptationProcess225); 
 
                 	newLeafNode(otherlv_6, grammarAccess.getAdaptationProcessAccess().getLeftCurlyBracketKeyword_4());
                 
@@ -412,11 +418,11 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                 case 1 :
                     // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:151:3: otherlv_7= 'parameters' otherlv_8= ':' ( (lv_parameters_9_0= ruleParameter ) ) (otherlv_10= ',' ( (lv_parameters_11_0= ruleParameter ) ) )*
                     {
-                    otherlv_7=(Token)match(input,15,FollowSets000.FOLLOW_15_in_ruleAdaptationProcess239); 
+                    otherlv_7=(Token)match(input,15,FollowSets000.FOLLOW_15_in_ruleAdaptationProcess238); 
 
                         	newLeafNode(otherlv_7, grammarAccess.getAdaptationProcessAccess().getParametersKeyword_5_0());
                         
-                    otherlv_8=(Token)match(input,16,FollowSets000.FOLLOW_16_in_ruleAdaptationProcess251); 
+                    otherlv_8=(Token)match(input,16,FollowSets000.FOLLOW_16_in_ruleAdaptationProcess250); 
 
                         	newLeafNode(otherlv_8, grammarAccess.getAdaptationProcessAccess().getColonKeyword_5_1());
                         
@@ -429,7 +435,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                      
                     	        newCompositeNode(grammarAccess.getAdaptationProcessAccess().getParametersParameterParserRuleCall_5_2_0()); 
                     	    
-                    pushFollow(FollowSets000.FOLLOW_ruleParameter_in_ruleAdaptationProcess272);
+                    pushFollow(FollowSets000.FOLLOW_ruleParameter_in_ruleAdaptationProcess271);
                     lv_parameters_9_0=ruleParameter();
 
                     state._fsp--;
@@ -466,7 +472,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                     	case 1 :
                     	    // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:177:4: otherlv_10= ',' ( (lv_parameters_11_0= ruleParameter ) )
                     	    {
-                    	    otherlv_10=(Token)match(input,17,FollowSets000.FOLLOW_17_in_ruleAdaptationProcess285); 
+                    	    otherlv_10=(Token)match(input,17,FollowSets000.FOLLOW_17_in_ruleAdaptationProcess284); 
 
                     	        	newLeafNode(otherlv_10, grammarAccess.getAdaptationProcessAccess().getCommaKeyword_5_3_0());
                     	        
@@ -479,7 +485,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                     	     
                     	    	        newCompositeNode(grammarAccess.getAdaptationProcessAccess().getParametersParameterParserRuleCall_5_3_1_0()); 
                     	    	    
-                    	    pushFollow(FollowSets000.FOLLOW_ruleParameter_in_ruleAdaptationProcess306);
+                    	    pushFollow(FollowSets000.FOLLOW_ruleParameter_in_ruleAdaptationProcess305);
                     	    lv_parameters_11_0=ruleParameter();
 
                     	    state._fsp--;
@@ -516,11 +522,11 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_12=(Token)match(input,18,FollowSets000.FOLLOW_18_in_ruleAdaptationProcess322); 
+            otherlv_12=(Token)match(input,18,FollowSets000.FOLLOW_18_in_ruleAdaptationProcess321); 
 
                 	newLeafNode(otherlv_12, grammarAccess.getAdaptationProcessAccess().getGoalKeyword_6());
                 
-            otherlv_13=(Token)match(input,16,FollowSets000.FOLLOW_16_in_ruleAdaptationProcess334); 
+            otherlv_13=(Token)match(input,16,FollowSets000.FOLLOW_16_in_ruleAdaptationProcess333); 
 
                 	newLeafNode(otherlv_13, grammarAccess.getAdaptationProcessAccess().getColonKeyword_7());
                 
@@ -533,7 +539,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getAdaptationProcessAccess().getGoalOverallGoalParserRuleCall_8_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleOverallGoal_in_ruleAdaptationProcess355);
+            pushFollow(FollowSets000.FOLLOW_ruleOverallGoal_in_ruleAdaptationProcess354);
             lv_goal_14_0=ruleOverallGoal();
 
             state._fsp--;
@@ -555,11 +561,11 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_15=(Token)match(input,19,FollowSets000.FOLLOW_19_in_ruleAdaptationProcess367); 
+            otherlv_15=(Token)match(input,19,FollowSets000.FOLLOW_19_in_ruleAdaptationProcess366); 
 
                 	newLeafNode(otherlv_15, grammarAccess.getAdaptationProcessAccess().getActionsKeyword_9());
                 
-            otherlv_16=(Token)match(input,16,FollowSets000.FOLLOW_16_in_ruleAdaptationProcess379); 
+            otherlv_16=(Token)match(input,16,FollowSets000.FOLLOW_16_in_ruleAdaptationProcess378); 
 
                 	newLeafNode(otherlv_16, grammarAccess.getAdaptationProcessAccess().getColonKeyword_10());
                 
@@ -572,7 +578,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getAdaptationProcessAccess().getActionsActionParserRuleCall_11_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleAction_in_ruleAdaptationProcess400);
+            pushFollow(FollowSets000.FOLLOW_ruleAction_in_ruleAdaptationProcess399);
             lv_actions_17_0=ruleAction();
 
             state._fsp--;
@@ -609,7 +615,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
             	case 1 :
             	    // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:251:4: otherlv_18= ',' ( (lv_actions_19_0= ruleAction ) )
             	    {
-            	    otherlv_18=(Token)match(input,17,FollowSets000.FOLLOW_17_in_ruleAdaptationProcess413); 
+            	    otherlv_18=(Token)match(input,17,FollowSets000.FOLLOW_17_in_ruleAdaptationProcess412); 
 
             	        	newLeafNode(otherlv_18, grammarAccess.getAdaptationProcessAccess().getCommaKeyword_12_0());
             	        
@@ -622,7 +628,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
             	     
             	    	        newCompositeNode(grammarAccess.getAdaptationProcessAccess().getActionsActionParserRuleCall_12_1_0()); 
             	    	    
-            	    pushFollow(FollowSets000.FOLLOW_ruleAction_in_ruleAdaptationProcess434);
+            	    pushFollow(FollowSets000.FOLLOW_ruleAction_in_ruleAdaptationProcess433);
             	    lv_actions_19_0=ruleAction();
 
             	    state._fsp--;
@@ -653,11 +659,11 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                 }
             } while (true);
 
-            otherlv_20=(Token)match(input,20,FollowSets000.FOLLOW_20_in_ruleAdaptationProcess448); 
+            otherlv_20=(Token)match(input,20,FollowSets000.FOLLOW_20_in_ruleAdaptationProcess447); 
 
                 	newLeafNode(otherlv_20, grammarAccess.getAdaptationProcessAccess().getTacticsKeyword_13());
                 
-            otherlv_21=(Token)match(input,16,FollowSets000.FOLLOW_16_in_ruleAdaptationProcess460); 
+            otherlv_21=(Token)match(input,16,FollowSets000.FOLLOW_16_in_ruleAdaptationProcess459); 
 
                 	newLeafNode(otherlv_21, grammarAccess.getAdaptationProcessAccess().getColonKeyword_14());
                 
@@ -670,7 +676,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getAdaptationProcessAccess().getTacticsTacticParserRuleCall_15_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleTactic_in_ruleAdaptationProcess481);
+            pushFollow(FollowSets000.FOLLOW_ruleTactic_in_ruleAdaptationProcess480);
             lv_tactics_22_0=ruleTactic();
 
             state._fsp--;
@@ -707,7 +713,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
             	case 1 :
             	    // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:299:4: otherlv_23= ',' ( (lv_tactics_24_0= ruleTactic ) )
             	    {
-            	    otherlv_23=(Token)match(input,17,FollowSets000.FOLLOW_17_in_ruleAdaptationProcess494); 
+            	    otherlv_23=(Token)match(input,17,FollowSets000.FOLLOW_17_in_ruleAdaptationProcess493); 
 
             	        	newLeafNode(otherlv_23, grammarAccess.getAdaptationProcessAccess().getCommaKeyword_16_0());
             	        
@@ -720,7 +726,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
             	     
             	    	        newCompositeNode(grammarAccess.getAdaptationProcessAccess().getTacticsTacticParserRuleCall_16_1_0()); 
             	    	    
-            	    pushFollow(FollowSets000.FOLLOW_ruleTactic_in_ruleAdaptationProcess515);
+            	    pushFollow(FollowSets000.FOLLOW_ruleTactic_in_ruleAdaptationProcess514);
             	    lv_tactics_24_0=ruleTactic();
 
             	    state._fsp--;
@@ -751,11 +757,11 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                 }
             } while (true);
 
-            otherlv_25=(Token)match(input,21,FollowSets000.FOLLOW_21_in_ruleAdaptationProcess529); 
+            otherlv_25=(Token)match(input,21,FollowSets000.FOLLOW_21_in_ruleAdaptationProcess528); 
 
                 	newLeafNode(otherlv_25, grammarAccess.getAdaptationProcessAccess().getStrategiesKeyword_17());
                 
-            otherlv_26=(Token)match(input,16,FollowSets000.FOLLOW_16_in_ruleAdaptationProcess541); 
+            otherlv_26=(Token)match(input,16,FollowSets000.FOLLOW_16_in_ruleAdaptationProcess540); 
 
                 	newLeafNode(otherlv_26, grammarAccess.getAdaptationProcessAccess().getColonKeyword_18());
                 
@@ -768,7 +774,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getAdaptationProcessAccess().getStrategiesStrategyParserRuleCall_19_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleStrategy_in_ruleAdaptationProcess562);
+            pushFollow(FollowSets000.FOLLOW_ruleStrategy_in_ruleAdaptationProcess561);
             lv_strategies_27_0=ruleStrategy();
 
             state._fsp--;
@@ -805,7 +811,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
             	case 1 :
             	    // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:347:4: otherlv_28= ',' ( (lv_strategies_29_0= ruleStrategy ) )
             	    {
-            	    otherlv_28=(Token)match(input,17,FollowSets000.FOLLOW_17_in_ruleAdaptationProcess575); 
+            	    otherlv_28=(Token)match(input,17,FollowSets000.FOLLOW_17_in_ruleAdaptationProcess574); 
 
             	        	newLeafNode(otherlv_28, grammarAccess.getAdaptationProcessAccess().getCommaKeyword_20_0());
             	        
@@ -818,7 +824,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
             	     
             	    	        newCompositeNode(grammarAccess.getAdaptationProcessAccess().getStrategiesStrategyParserRuleCall_20_1_0()); 
             	    	    
-            	    pushFollow(FollowSets000.FOLLOW_ruleStrategy_in_ruleAdaptationProcess596);
+            	    pushFollow(FollowSets000.FOLLOW_ruleStrategy_in_ruleAdaptationProcess595);
             	    lv_strategies_29_0=ruleStrategy();
 
             	    state._fsp--;
@@ -849,7 +855,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                 }
             } while (true);
 
-            otherlv_30=(Token)match(input,22,FollowSets000.FOLLOW_22_in_ruleAdaptationProcess610); 
+            otherlv_30=(Token)match(input,22,FollowSets000.FOLLOW_22_in_ruleAdaptationProcess609); 
 
                 	newLeafNode(otherlv_30, grammarAccess.getAdaptationProcessAccess().getRightCurlyBracketKeyword_21());
                 
@@ -886,13 +892,13 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
             // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:385:2: iv_ruleAbstractControlFlowElement= ruleAbstractControlFlowElement EOF
             {
              newCompositeNode(grammarAccess.getAbstractControlFlowElementRule()); 
-            pushFollow(FollowSets000.FOLLOW_ruleAbstractControlFlowElement_in_entryRuleAbstractControlFlowElement648);
+            pushFollow(FollowSets000.FOLLOW_ruleAbstractControlFlowElement_in_entryRuleAbstractControlFlowElement647);
             iv_ruleAbstractControlFlowElement=ruleAbstractControlFlowElement();
 
             state._fsp--;
 
              current =iv_ruleAbstractControlFlowElement; 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleAbstractControlFlowElement658); 
+            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleAbstractControlFlowElement657); 
 
             }
 
@@ -941,7 +947,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                      
                             newCompositeNode(grammarAccess.getAbstractControlFlowElementAccess().getStartActionParserRuleCall_0()); 
                         
-                    pushFollow(FollowSets000.FOLLOW_ruleStartAction_in_ruleAbstractControlFlowElement705);
+                    pushFollow(FollowSets000.FOLLOW_ruleStartAction_in_ruleAbstractControlFlowElement704);
                     this_StartAction_0=ruleStartAction();
 
                     state._fsp--;
@@ -959,7 +965,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                      
                             newCompositeNode(grammarAccess.getAbstractControlFlowElementAccess().getStopActionParserRuleCall_1()); 
                         
-                    pushFollow(FollowSets000.FOLLOW_ruleStopAction_in_ruleAbstractControlFlowElement732);
+                    pushFollow(FollowSets000.FOLLOW_ruleStopAction_in_ruleAbstractControlFlowElement731);
                     this_StopAction_1=ruleStopAction();
 
                     state._fsp--;
@@ -977,7 +983,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                      
                             newCompositeNode(grammarAccess.getAbstractControlFlowElementAccess().getLoopActionParserRuleCall_2()); 
                         
-                    pushFollow(FollowSets000.FOLLOW_ruleLoopAction_in_ruleAbstractControlFlowElement759);
+                    pushFollow(FollowSets000.FOLLOW_ruleLoopAction_in_ruleAbstractControlFlowElement758);
                     this_LoopAction_2=ruleLoopAction();
 
                     state._fsp--;
@@ -995,7 +1001,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                      
                             newCompositeNode(grammarAccess.getAbstractControlFlowElementAccess().getBranchActionParserRuleCall_3()); 
                         
-                    pushFollow(FollowSets000.FOLLOW_ruleBranchAction_in_ruleAbstractControlFlowElement786);
+                    pushFollow(FollowSets000.FOLLOW_ruleBranchAction_in_ruleAbstractControlFlowElement785);
                     this_BranchAction_3=ruleBranchAction();
 
                     state._fsp--;
@@ -1013,7 +1019,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                      
                             newCompositeNode(grammarAccess.getAbstractControlFlowElementAccess().getActionReferenceParserRuleCall_4()); 
                         
-                    pushFollow(FollowSets000.FOLLOW_ruleActionReference_in_ruleAbstractControlFlowElement813);
+                    pushFollow(FollowSets000.FOLLOW_ruleActionReference_in_ruleAbstractControlFlowElement812);
                     this_ActionReference_4=ruleActionReference();
 
                     state._fsp--;
@@ -1058,13 +1064,13 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
             // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:455:2: iv_ruleVariationType= ruleVariationType EOF
             {
              newCompositeNode(grammarAccess.getVariationTypeRule()); 
-            pushFollow(FollowSets000.FOLLOW_ruleVariationType_in_entryRuleVariationType848);
+            pushFollow(FollowSets000.FOLLOW_ruleVariationType_in_entryRuleVariationType847);
             iv_ruleVariationType=ruleVariationType();
 
             state._fsp--;
 
              current =iv_ruleVariationType; 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleVariationType858); 
+            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleVariationType857); 
 
             }
 
@@ -1120,7 +1126,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                      
                             newCompositeNode(grammarAccess.getVariationTypeAccess().getPropertyRangeParserRuleCall_0()); 
                         
-                    pushFollow(FollowSets000.FOLLOW_rulePropertyRange_in_ruleVariationType905);
+                    pushFollow(FollowSets000.FOLLOW_rulePropertyRange_in_ruleVariationType904);
                     this_PropertyRange_0=rulePropertyRange();
 
                     state._fsp--;
@@ -1138,7 +1144,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                      
                             newCompositeNode(grammarAccess.getVariationTypeAccess().getSetOfConfigurationsParserRuleCall_1()); 
                         
-                    pushFollow(FollowSets000.FOLLOW_ruleSetOfConfigurations_in_ruleVariationType932);
+                    pushFollow(FollowSets000.FOLLOW_ruleSetOfConfigurations_in_ruleVariationType931);
                     this_SetOfConfigurations_1=ruleSetOfConfigurations();
 
                     state._fsp--;
@@ -1183,13 +1189,13 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
             // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:495:2: iv_ruleEString= ruleEString EOF
             {
              newCompositeNode(grammarAccess.getEStringRule()); 
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_entryRuleEString968);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_entryRuleEString967);
             iv_ruleEString=ruleEString();
 
             state._fsp--;
 
              current =iv_ruleEString.getText(); 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleEString979); 
+            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleEString978); 
 
             }
 
@@ -1240,7 +1246,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                 case 1 :
                     // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:506:6: this_STRING_0= RULE_STRING
                     {
-                    this_STRING_0=(Token)match(input,RULE_STRING,FollowSets000.FOLLOW_RULE_STRING_in_ruleEString1019); 
+                    this_STRING_0=(Token)match(input,RULE_STRING,FollowSets000.FOLLOW_RULE_STRING_in_ruleEString1018); 
 
                     		current.merge(this_STRING_0);
                         
@@ -1253,7 +1259,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                 case 2 :
                     // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:514:10: this_ID_1= RULE_ID
                     {
-                    this_ID_1=(Token)match(input,RULE_ID,FollowSets000.FOLLOW_RULE_ID_in_ruleEString1045); 
+                    this_ID_1=(Token)match(input,RULE_ID,FollowSets000.FOLLOW_RULE_ID_in_ruleEString1044); 
 
                     		current.merge(this_ID_1);
                         
@@ -1296,13 +1302,13 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
             // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:531:2: iv_ruleTactic= ruleTactic EOF
             {
              newCompositeNode(grammarAccess.getTacticRule()); 
-            pushFollow(FollowSets000.FOLLOW_ruleTactic_in_entryRuleTactic1090);
+            pushFollow(FollowSets000.FOLLOW_ruleTactic_in_entryRuleTactic1089);
             iv_ruleTactic=ruleTactic();
 
             state._fsp--;
 
              current =iv_ruleTactic; 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleTactic1100); 
+            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleTactic1099); 
 
             }
 
@@ -1364,7 +1370,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                 case 1 :
                     // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:542:4: otherlv_0= 'Tactic'
                     {
-                    otherlv_0=(Token)match(input,23,FollowSets000.FOLLOW_23_in_ruleTactic1138); 
+                    otherlv_0=(Token)match(input,23,FollowSets000.FOLLOW_23_in_ruleTactic1137); 
 
                         	newLeafNode(otherlv_0, grammarAccess.getTacticAccess().getTacticKeyword_0());
                         
@@ -1383,7 +1389,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getTacticAccess().getNameEStringParserRuleCall_1_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleTactic1161);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleTactic1160);
             lv_name_1_0=ruleEString();
 
             state._fsp--;
@@ -1416,7 +1422,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                 case 1 :
                     // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:564:4: otherlv_2= '[id:' ( (lv_id_3_0= ruleEString ) ) otherlv_4= ']'
                     {
-                    otherlv_2=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleTactic1174); 
+                    otherlv_2=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleTactic1173); 
 
                         	newLeafNode(otherlv_2, grammarAccess.getTacticAccess().getIdKeyword_2_0());
                         
@@ -1429,7 +1435,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                      
                     	        newCompositeNode(grammarAccess.getTacticAccess().getIdEStringParserRuleCall_2_1_0()); 
                     	    
-                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleTactic1195);
+                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleTactic1194);
                     lv_id_3_0=ruleEString();
 
                     state._fsp--;
@@ -1451,7 +1457,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
                     }
 
-                    otherlv_4=(Token)match(input,13,FollowSets000.FOLLOW_13_in_ruleTactic1207); 
+                    otherlv_4=(Token)match(input,13,FollowSets000.FOLLOW_13_in_ruleTactic1206); 
 
                         	newLeafNode(otherlv_4, grammarAccess.getTacticAccess().getRightSquareBracketKeyword_2_2());
                         
@@ -1461,11 +1467,11 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_5=(Token)match(input,14,FollowSets000.FOLLOW_14_in_ruleTactic1221); 
+            otherlv_5=(Token)match(input,14,FollowSets000.FOLLOW_14_in_ruleTactic1220); 
 
                 	newLeafNode(otherlv_5, grammarAccess.getTacticAccess().getLeftCurlyBracketKeyword_3());
                 
-            otherlv_6=(Token)match(input,24,FollowSets000.FOLLOW_24_in_ruleTactic1233); 
+            otherlv_6=(Token)match(input,24,FollowSets000.FOLLOW_24_in_ruleTactic1232); 
 
                 	newLeafNode(otherlv_6, grammarAccess.getTacticAccess().getImplementedPlanKeyword_4());
                 
@@ -1478,7 +1484,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getTacticAccess().getImplementedPlanAdaptationPlanParserRuleCall_5_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleAdaptationPlan_in_ruleTactic1254);
+            pushFollow(FollowSets000.FOLLOW_ruleAdaptationPlan_in_ruleTactic1253);
             lv_implementedPlan_7_0=ruleAdaptationPlan();
 
             state._fsp--;
@@ -1511,15 +1517,15 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                 case 1 :
                     // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:616:4: otherlv_8= 'input' otherlv_9= '=' otherlv_10= '(' ( ( ruleEString ) ) (otherlv_12= ',' ( ( ruleEString ) ) )* otherlv_14= ')'
                     {
-                    otherlv_8=(Token)match(input,25,FollowSets000.FOLLOW_25_in_ruleTactic1267); 
+                    otherlv_8=(Token)match(input,25,FollowSets000.FOLLOW_25_in_ruleTactic1266); 
 
                         	newLeafNode(otherlv_8, grammarAccess.getTacticAccess().getInputKeyword_6_0());
                         
-                    otherlv_9=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleTactic1279); 
+                    otherlv_9=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleTactic1278); 
 
                         	newLeafNode(otherlv_9, grammarAccess.getTacticAccess().getEqualsSignKeyword_6_1());
                         
-                    otherlv_10=(Token)match(input,27,FollowSets000.FOLLOW_27_in_ruleTactic1291); 
+                    otherlv_10=(Token)match(input,27,FollowSets000.FOLLOW_27_in_ruleTactic1290); 
 
                         	newLeafNode(otherlv_10, grammarAccess.getTacticAccess().getLeftParenthesisKeyword_6_2());
                         
@@ -1537,7 +1543,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                      
                     	        newCompositeNode(grammarAccess.getTacticAccess().getInputParamsParameterCrossReference_6_3_0()); 
                     	    
-                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleTactic1314);
+                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleTactic1313);
                     ruleEString();
 
                     state._fsp--;
@@ -1566,7 +1572,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                     	case 1 :
                     	    // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:643:4: otherlv_12= ',' ( ( ruleEString ) )
                     	    {
-                    	    otherlv_12=(Token)match(input,17,FollowSets000.FOLLOW_17_in_ruleTactic1327); 
+                    	    otherlv_12=(Token)match(input,17,FollowSets000.FOLLOW_17_in_ruleTactic1326); 
 
                     	        	newLeafNode(otherlv_12, grammarAccess.getTacticAccess().getCommaKeyword_6_4_0());
                     	        
@@ -1584,7 +1590,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                     	     
                     	    	        newCompositeNode(grammarAccess.getTacticAccess().getInputParamsParameterCrossReference_6_4_1_0()); 
                     	    	    
-                    	    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleTactic1350);
+                    	    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleTactic1349);
                     	    ruleEString();
 
                     	    state._fsp--;
@@ -1607,7 +1613,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                         }
                     } while (true);
 
-                    otherlv_14=(Token)match(input,28,FollowSets000.FOLLOW_28_in_ruleTactic1364); 
+                    otherlv_14=(Token)match(input,28,FollowSets000.FOLLOW_28_in_ruleTactic1363); 
 
                         	newLeafNode(otherlv_14, grammarAccess.getTacticAccess().getRightParenthesisKeyword_6_5());
                         
@@ -1628,11 +1634,11 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                 case 1 :
                     // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:666:5: otherlv_15= 'output' otherlv_16= '=' ( ( ruleEString ) )
                     {
-                    otherlv_15=(Token)match(input,29,FollowSets000.FOLLOW_29_in_ruleTactic1379); 
+                    otherlv_15=(Token)match(input,29,FollowSets000.FOLLOW_29_in_ruleTactic1378); 
 
                         	newLeafNode(otherlv_15, grammarAccess.getTacticAccess().getOutputKeyword_7_0());
                         
-                    otherlv_16=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleTactic1391); 
+                    otherlv_16=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleTactic1390); 
 
                         	newLeafNode(otherlv_16, grammarAccess.getTacticAccess().getEqualsSignKeyword_7_1());
                         
@@ -1650,7 +1656,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                      
                     	        newCompositeNode(grammarAccess.getTacticAccess().getOutputParamParameterCrossReference_7_2_0()); 
                     	    
-                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleTactic1414);
+                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleTactic1413);
                     ruleEString();
 
                     state._fsp--;
@@ -1670,7 +1676,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_18=(Token)match(input,22,FollowSets000.FOLLOW_22_in_ruleTactic1428); 
+            otherlv_18=(Token)match(input,22,FollowSets000.FOLLOW_22_in_ruleTactic1427); 
 
                 	newLeafNode(otherlv_18, grammarAccess.getTacticAccess().getRightCurlyBracketKeyword_8());
                 
@@ -1707,13 +1713,13 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
             // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:703:2: iv_ruleAction= ruleAction EOF
             {
              newCompositeNode(grammarAccess.getActionRule()); 
-            pushFollow(FollowSets000.FOLLOW_ruleAction_in_entryRuleAction1464);
+            pushFollow(FollowSets000.FOLLOW_ruleAction_in_entryRuleAction1463);
             iv_ruleAction=ruleAction();
 
             state._fsp--;
 
              current =iv_ruleAction; 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleAction1474); 
+            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleAction1473); 
 
             }
 
@@ -1778,7 +1784,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                 case 1 :
                     // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:714:4: otherlv_0= 'Action'
                     {
-                    otherlv_0=(Token)match(input,30,FollowSets000.FOLLOW_30_in_ruleAction1512); 
+                    otherlv_0=(Token)match(input,30,FollowSets000.FOLLOW_30_in_ruleAction1511); 
 
                         	newLeafNode(otherlv_0, grammarAccess.getActionAccess().getActionKeyword_0());
                         
@@ -1797,7 +1803,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getActionAccess().getNameEStringParserRuleCall_1_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleAction1535);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleAction1534);
             lv_name_1_0=ruleEString();
 
             state._fsp--;
@@ -1830,7 +1836,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                 case 1 :
                     // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:736:4: otherlv_2= '[id:' ( (lv_id_3_0= ruleEString ) ) otherlv_4= ']'
                     {
-                    otherlv_2=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleAction1548); 
+                    otherlv_2=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleAction1547); 
 
                         	newLeafNode(otherlv_2, grammarAccess.getActionAccess().getIdKeyword_2_0());
                         
@@ -1843,7 +1849,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                      
                     	        newCompositeNode(grammarAccess.getActionAccess().getIdEStringParserRuleCall_2_1_0()); 
                     	    
-                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleAction1569);
+                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleAction1568);
                     lv_id_3_0=ruleEString();
 
                     state._fsp--;
@@ -1865,7 +1871,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
                     }
 
-                    otherlv_4=(Token)match(input,13,FollowSets000.FOLLOW_13_in_ruleAction1581); 
+                    otherlv_4=(Token)match(input,13,FollowSets000.FOLLOW_13_in_ruleAction1580); 
 
                         	newLeafNode(otherlv_4, grammarAccess.getActionAccess().getRightSquareBracketKeyword_2_2());
                         
@@ -1875,15 +1881,15 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_5=(Token)match(input,14,FollowSets000.FOLLOW_14_in_ruleAction1595); 
+            otherlv_5=(Token)match(input,14,FollowSets000.FOLLOW_14_in_ruleAction1594); 
 
                 	newLeafNode(otherlv_5, grammarAccess.getActionAccess().getLeftCurlyBracketKeyword_3());
                 
-            otherlv_6=(Token)match(input,31,FollowSets000.FOLLOW_31_in_ruleAction1607); 
+            otherlv_6=(Token)match(input,31,FollowSets000.FOLLOW_31_in_ruleAction1606); 
 
                 	newLeafNode(otherlv_6, grammarAccess.getActionAccess().getOperationKeyword_4());
                 
-            otherlv_7=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleAction1619); 
+            otherlv_7=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleAction1618); 
 
                 	newLeafNode(otherlv_7, grammarAccess.getActionAccess().getEqualsSignKeyword_5());
                 
@@ -1896,7 +1902,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getActionAccess().getAdaptationActionOperationAdaptationActionOperationParserRuleCall_6_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleAdaptationActionOperation_in_ruleAction1640);
+            pushFollow(FollowSets000.FOLLOW_ruleAdaptationActionOperation_in_ruleAction1639);
             lv_adaptationActionOperation_8_0=ruleAdaptationActionOperation();
 
             state._fsp--;
@@ -1918,11 +1924,11 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_9=(Token)match(input,32,FollowSets000.FOLLOW_32_in_ruleAction1652); 
+            otherlv_9=(Token)match(input,32,FollowSets000.FOLLOW_32_in_ruleAction1651); 
 
                 	newLeafNode(otherlv_9, grammarAccess.getActionAccess().getReferredAdaptationPointKeyword_7());
                 
-            otherlv_10=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleAction1664); 
+            otherlv_10=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleAction1663); 
 
                 	newLeafNode(otherlv_10, grammarAccess.getActionAccess().getEqualsSignKeyword_8());
                 
@@ -1940,7 +1946,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getActionAccess().getReferredAdaptationPointAdaptationPointCrossReference_9_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleAction1687);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleAction1686);
             ruleEString();
 
             state._fsp--;
@@ -1965,15 +1971,15 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                 case 1 :
                     // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:815:4: otherlv_12= 'input' otherlv_13= '=' otherlv_14= '(' ( ( ruleEString ) ) (otherlv_16= ',' ( ( ruleEString ) ) )* otherlv_18= ')'
                     {
-                    otherlv_12=(Token)match(input,25,FollowSets000.FOLLOW_25_in_ruleAction1700); 
+                    otherlv_12=(Token)match(input,25,FollowSets000.FOLLOW_25_in_ruleAction1699); 
 
                         	newLeafNode(otherlv_12, grammarAccess.getActionAccess().getInputKeyword_10_0());
                         
-                    otherlv_13=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleAction1712); 
+                    otherlv_13=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleAction1711); 
 
                         	newLeafNode(otherlv_13, grammarAccess.getActionAccess().getEqualsSignKeyword_10_1());
                         
-                    otherlv_14=(Token)match(input,27,FollowSets000.FOLLOW_27_in_ruleAction1724); 
+                    otherlv_14=(Token)match(input,27,FollowSets000.FOLLOW_27_in_ruleAction1723); 
 
                         	newLeafNode(otherlv_14, grammarAccess.getActionAccess().getLeftParenthesisKeyword_10_2());
                         
@@ -1991,7 +1997,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                      
                     	        newCompositeNode(grammarAccess.getActionAccess().getInputParamsParameterCrossReference_10_3_0()); 
                     	    
-                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleAction1747);
+                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleAction1746);
                     ruleEString();
 
                     state._fsp--;
@@ -2020,7 +2026,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                     	case 1 :
                     	    // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:842:4: otherlv_16= ',' ( ( ruleEString ) )
                     	    {
-                    	    otherlv_16=(Token)match(input,17,FollowSets000.FOLLOW_17_in_ruleAction1760); 
+                    	    otherlv_16=(Token)match(input,17,FollowSets000.FOLLOW_17_in_ruleAction1759); 
 
                     	        	newLeafNode(otherlv_16, grammarAccess.getActionAccess().getCommaKeyword_10_4_0());
                     	        
@@ -2038,7 +2044,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                     	     
                     	    	        newCompositeNode(grammarAccess.getActionAccess().getInputParamsParameterCrossReference_10_4_1_0()); 
                     	    	    
-                    	    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleAction1783);
+                    	    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleAction1782);
                     	    ruleEString();
 
                     	    state._fsp--;
@@ -2061,7 +2067,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                         }
                     } while (true);
 
-                    otherlv_18=(Token)match(input,28,FollowSets000.FOLLOW_28_in_ruleAction1797); 
+                    otherlv_18=(Token)match(input,28,FollowSets000.FOLLOW_28_in_ruleAction1796); 
 
                         	newLeafNode(otherlv_18, grammarAccess.getActionAccess().getRightParenthesisKeyword_10_5());
                         
@@ -2082,11 +2088,11 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                 case 1 :
                     // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:865:5: otherlv_19= 'output' otherlv_20= '=' ( ( ruleEString ) )
                     {
-                    otherlv_19=(Token)match(input,29,FollowSets000.FOLLOW_29_in_ruleAction1812); 
+                    otherlv_19=(Token)match(input,29,FollowSets000.FOLLOW_29_in_ruleAction1811); 
 
                         	newLeafNode(otherlv_19, grammarAccess.getActionAccess().getOutputKeyword_11_0());
                         
-                    otherlv_20=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleAction1824); 
+                    otherlv_20=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleAction1823); 
 
                         	newLeafNode(otherlv_20, grammarAccess.getActionAccess().getEqualsSignKeyword_11_1());
                         
@@ -2104,7 +2110,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                      
                     	        newCompositeNode(grammarAccess.getActionAccess().getOutputParamParameterCrossReference_11_2_0()); 
                     	    
-                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleAction1847);
+                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleAction1846);
                     ruleEString();
 
                     state._fsp--;
@@ -2124,7 +2130,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_22=(Token)match(input,22,FollowSets000.FOLLOW_22_in_ruleAction1861); 
+            otherlv_22=(Token)match(input,22,FollowSets000.FOLLOW_22_in_ruleAction1860); 
 
                 	newLeafNode(otherlv_22, grammarAccess.getActionAccess().getRightCurlyBracketKeyword_12());
                 
@@ -2161,13 +2167,13 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
             // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:902:2: iv_ruleStrategy= ruleStrategy EOF
             {
              newCompositeNode(grammarAccess.getStrategyRule()); 
-            pushFollow(FollowSets000.FOLLOW_ruleStrategy_in_entryRuleStrategy1897);
+            pushFollow(FollowSets000.FOLLOW_ruleStrategy_in_entryRuleStrategy1896);
             iv_ruleStrategy=ruleStrategy();
 
             state._fsp--;
 
              current =iv_ruleStrategy; 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleStrategy1907); 
+            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleStrategy1906); 
 
             }
 
@@ -2234,7 +2240,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getStrategyAccess().getNameEStringParserRuleCall_0_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleStrategy1953);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleStrategy1952);
             lv_name_0_0=ruleEString();
 
             state._fsp--;
@@ -2267,7 +2273,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                 case 1 :
                     // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:931:4: otherlv_1= '[id:' ( (lv_id_2_0= ruleEString ) ) otherlv_3= ']'
                     {
-                    otherlv_1=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleStrategy1966); 
+                    otherlv_1=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleStrategy1965); 
 
                         	newLeafNode(otherlv_1, grammarAccess.getStrategyAccess().getIdKeyword_1_0());
                         
@@ -2280,7 +2286,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                      
                     	        newCompositeNode(grammarAccess.getStrategyAccess().getIdEStringParserRuleCall_1_1_0()); 
                     	    
-                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleStrategy1987);
+                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleStrategy1986);
                     lv_id_2_0=ruleEString();
 
                     state._fsp--;
@@ -2302,7 +2308,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
                     }
 
-                    otherlv_3=(Token)match(input,13,FollowSets000.FOLLOW_13_in_ruleStrategy1999); 
+                    otherlv_3=(Token)match(input,13,FollowSets000.FOLLOW_13_in_ruleStrategy1998); 
 
                         	newLeafNode(otherlv_3, grammarAccess.getStrategyAccess().getRightSquareBracketKeyword_1_2());
                         
@@ -2312,15 +2318,15 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_4=(Token)match(input,14,FollowSets000.FOLLOW_14_in_ruleStrategy2013); 
+            otherlv_4=(Token)match(input,14,FollowSets000.FOLLOW_14_in_ruleStrategy2012); 
 
                 	newLeafNode(otherlv_4, grammarAccess.getStrategyAccess().getLeftCurlyBracketKeyword_2());
                 
-            otherlv_5=(Token)match(input,33,FollowSets000.FOLLOW_33_in_ruleStrategy2025); 
+            otherlv_5=(Token)match(input,33,FollowSets000.FOLLOW_33_in_ruleStrategy2024); 
 
                 	newLeafNode(otherlv_5, grammarAccess.getStrategyAccess().getObjectiveKeyword_3());
                 
-            otherlv_6=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleStrategy2037); 
+            otherlv_6=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleStrategy2036); 
 
                 	newLeafNode(otherlv_6, grammarAccess.getStrategyAccess().getEqualsSignKeyword_4());
                 
@@ -2338,7 +2344,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getStrategyAccess().getObjectiveObjectiveCrossReference_5_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleStrategy2060);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleStrategy2059);
             ruleEString();
 
             state._fsp--;
@@ -2352,11 +2358,11 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_8=(Token)match(input,34,FollowSets000.FOLLOW_34_in_ruleStrategy2072); 
+            otherlv_8=(Token)match(input,34,FollowSets000.FOLLOW_34_in_ruleStrategy2071); 
 
                 	newLeafNode(otherlv_8, grammarAccess.getStrategyAccess().getTriggeringEventKeyword_6());
                 
-            otherlv_9=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleStrategy2084); 
+            otherlv_9=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleStrategy2083); 
 
                 	newLeafNode(otherlv_9, grammarAccess.getStrategyAccess().getEqualsSignKeyword_7());
                 
@@ -2369,7 +2375,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getStrategyAccess().getTriggeringEventsEventParserRuleCall_8_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleEvent_in_ruleStrategy2105);
+            pushFollow(FollowSets000.FOLLOW_ruleEvent_in_ruleStrategy2104);
             lv_triggeringEvents_10_0=ruleEvent();
 
             state._fsp--;
@@ -2391,15 +2397,15 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_11=(Token)match(input,20,FollowSets000.FOLLOW_20_in_ruleStrategy2117); 
+            otherlv_11=(Token)match(input,20,FollowSets000.FOLLOW_20_in_ruleStrategy2116); 
 
                 	newLeafNode(otherlv_11, grammarAccess.getStrategyAccess().getTacticsKeyword_9());
                 
-            otherlv_12=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleStrategy2129); 
+            otherlv_12=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleStrategy2128); 
 
                 	newLeafNode(otherlv_12, grammarAccess.getStrategyAccess().getEqualsSignKeyword_10());
                 
-            otherlv_13=(Token)match(input,27,FollowSets000.FOLLOW_27_in_ruleStrategy2141); 
+            otherlv_13=(Token)match(input,27,FollowSets000.FOLLOW_27_in_ruleStrategy2140); 
 
                 	newLeafNode(otherlv_13, grammarAccess.getStrategyAccess().getLeftParenthesisKeyword_11());
                 
@@ -2412,7 +2418,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getStrategyAccess().getTacticsWeightedTacticParserRuleCall_12_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleWeightedTactic_in_ruleStrategy2162);
+            pushFollow(FollowSets000.FOLLOW_ruleWeightedTactic_in_ruleStrategy2161);
             lv_tactics_14_0=ruleWeightedTactic();
 
             state._fsp--;
@@ -2449,7 +2455,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
             	case 1 :
             	    // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:1040:4: otherlv_15= ',' ( (lv_tactics_16_0= ruleWeightedTactic ) )
             	    {
-            	    otherlv_15=(Token)match(input,17,FollowSets000.FOLLOW_17_in_ruleStrategy2175); 
+            	    otherlv_15=(Token)match(input,17,FollowSets000.FOLLOW_17_in_ruleStrategy2174); 
 
             	        	newLeafNode(otherlv_15, grammarAccess.getStrategyAccess().getCommaKeyword_13_0());
             	        
@@ -2462,7 +2468,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
             	     
             	    	        newCompositeNode(grammarAccess.getStrategyAccess().getTacticsWeightedTacticParserRuleCall_13_1_0()); 
             	    	    
-            	    pushFollow(FollowSets000.FOLLOW_ruleWeightedTactic_in_ruleStrategy2196);
+            	    pushFollow(FollowSets000.FOLLOW_ruleWeightedTactic_in_ruleStrategy2195);
             	    lv_tactics_16_0=ruleWeightedTactic();
 
             	    state._fsp--;
@@ -2493,7 +2499,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                 }
             } while (true);
 
-            otherlv_17=(Token)match(input,28,FollowSets000.FOLLOW_28_in_ruleStrategy2210); 
+            otherlv_17=(Token)match(input,28,FollowSets000.FOLLOW_28_in_ruleStrategy2209); 
 
                 	newLeafNode(otherlv_17, grammarAccess.getStrategyAccess().getRightParenthesisKeyword_14());
                 
@@ -2508,7 +2514,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                 case 1 :
                     // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:1066:3: otherlv_18= 'weightingFunction'
                     {
-                    otherlv_18=(Token)match(input,35,FollowSets000.FOLLOW_35_in_ruleStrategy2223); 
+                    otherlv_18=(Token)match(input,35,FollowSets000.FOLLOW_35_in_ruleStrategy2222); 
 
                         	newLeafNode(otherlv_18, grammarAccess.getStrategyAccess().getWeightingFunctionKeyword_15());
                         
@@ -2527,7 +2533,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getStrategyAccess().getWeightingFunctionWeightingFunctionParserRuleCall_16_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleWeightingFunction_in_ruleStrategy2246);
+            pushFollow(FollowSets000.FOLLOW_ruleWeightingFunction_in_ruleStrategy2245);
             lv_weightingFunction_19_0=ruleWeightingFunction();
 
             state._fsp--;
@@ -2549,7 +2555,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_20=(Token)match(input,22,FollowSets000.FOLLOW_22_in_ruleStrategy2258); 
+            otherlv_20=(Token)match(input,22,FollowSets000.FOLLOW_22_in_ruleStrategy2257); 
 
                 	newLeafNode(otherlv_20, grammarAccess.getStrategyAccess().getRightCurlyBracketKeyword_17());
                 
@@ -2586,13 +2592,13 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
             // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:1102:2: iv_ruleParameter= ruleParameter EOF
             {
              newCompositeNode(grammarAccess.getParameterRule()); 
-            pushFollow(FollowSets000.FOLLOW_ruleParameter_in_entryRuleParameter2294);
+            pushFollow(FollowSets000.FOLLOW_ruleParameter_in_entryRuleParameter2293);
             iv_ruleParameter=ruleParameter();
 
             state._fsp--;
 
              current =iv_ruleParameter; 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleParameter2304); 
+            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleParameter2303); 
 
             }
 
@@ -2646,7 +2652,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getParameterAccess().getNameEStringParserRuleCall_0_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleParameter2350);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleParameter2349);
             lv_name_0_0=ruleEString();
 
             state._fsp--;
@@ -2668,7 +2674,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_1=(Token)match(input,14,FollowSets000.FOLLOW_14_in_ruleParameter2362); 
+            otherlv_1=(Token)match(input,14,FollowSets000.FOLLOW_14_in_ruleParameter2361); 
 
                 	newLeafNode(otherlv_1, grammarAccess.getParameterAccess().getLeftCurlyBracketKeyword_1());
                 
@@ -2683,11 +2689,11 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                 case 1 :
                     // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:1135:3: otherlv_2= 'type' otherlv_3= '='
                     {
-                    otherlv_2=(Token)match(input,36,FollowSets000.FOLLOW_36_in_ruleParameter2375); 
+                    otherlv_2=(Token)match(input,36,FollowSets000.FOLLOW_36_in_ruleParameter2374); 
 
                         	newLeafNode(otherlv_2, grammarAccess.getParameterAccess().getTypeKeyword_2_0());
                         
-                    otherlv_3=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleParameter2387); 
+                    otherlv_3=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleParameter2386); 
 
                         	newLeafNode(otherlv_3, grammarAccess.getParameterAccess().getEqualsSignKeyword_2_1());
                         
@@ -2706,7 +2712,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getParameterAccess().getTypeEStringParserRuleCall_3_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleParameter2410);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleParameter2409);
             lv_type_4_0=ruleEString();
 
             state._fsp--;
@@ -2739,7 +2745,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                 case 1 :
                     // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:1161:4: otherlv_5= ',' (otherlv_6= 'value' otherlv_7= '=' )? ( (lv_value_8_0= ruleEString ) )
                     {
-                    otherlv_5=(Token)match(input,17,FollowSets000.FOLLOW_17_in_ruleParameter2423); 
+                    otherlv_5=(Token)match(input,17,FollowSets000.FOLLOW_17_in_ruleParameter2422); 
 
                         	newLeafNode(otherlv_5, grammarAccess.getParameterAccess().getCommaKeyword_4_0());
                         
@@ -2754,11 +2760,11 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                         case 1 :
                             // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:1165:3: otherlv_6= 'value' otherlv_7= '='
                             {
-                            otherlv_6=(Token)match(input,37,FollowSets000.FOLLOW_37_in_ruleParameter2436); 
+                            otherlv_6=(Token)match(input,37,FollowSets000.FOLLOW_37_in_ruleParameter2435); 
 
                                 	newLeafNode(otherlv_6, grammarAccess.getParameterAccess().getValueKeyword_4_1_0());
                                 
-                            otherlv_7=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleParameter2448); 
+                            otherlv_7=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleParameter2447); 
 
                                 	newLeafNode(otherlv_7, grammarAccess.getParameterAccess().getEqualsSignKeyword_4_1_1());
                                 
@@ -2777,7 +2783,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                      
                     	        newCompositeNode(grammarAccess.getParameterAccess().getValueEStringParserRuleCall_4_2_0()); 
                     	    
-                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleParameter2471);
+                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleParameter2470);
                     lv_value_8_0=ruleEString();
 
                     state._fsp--;
@@ -2805,7 +2811,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_9=(Token)match(input,22,FollowSets000.FOLLOW_22_in_ruleParameter2485); 
+            otherlv_9=(Token)match(input,22,FollowSets000.FOLLOW_22_in_ruleParameter2484); 
 
                 	newLeafNode(otherlv_9, grammarAccess.getParameterAccess().getRightCurlyBracketKeyword_5());
                 
@@ -2842,13 +2848,13 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
             // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:1205:2: iv_ruleOverallGoal= ruleOverallGoal EOF
             {
              newCompositeNode(grammarAccess.getOverallGoalRule()); 
-            pushFollow(FollowSets000.FOLLOW_ruleOverallGoal_in_entryRuleOverallGoal2521);
+            pushFollow(FollowSets000.FOLLOW_ruleOverallGoal_in_entryRuleOverallGoal2520);
             iv_ruleOverallGoal=ruleOverallGoal();
 
             state._fsp--;
 
              current =iv_ruleOverallGoal; 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleOverallGoal2531); 
+            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleOverallGoal2530); 
 
             }
 
@@ -2892,7 +2898,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
             // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:1216:1: (otherlv_0= 'description' ( (lv_description_1_0= ruleEString ) ) otherlv_2= 'objectives' otherlv_3= '=' otherlv_4= '(' ( (lv_objectives_5_0= ruleObjective ) ) (otherlv_6= ',' ( (lv_objectives_7_0= ruleObjective ) ) )* otherlv_8= ')' )
             // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:1216:3: otherlv_0= 'description' ( (lv_description_1_0= ruleEString ) ) otherlv_2= 'objectives' otherlv_3= '=' otherlv_4= '(' ( (lv_objectives_5_0= ruleObjective ) ) (otherlv_6= ',' ( (lv_objectives_7_0= ruleObjective ) ) )* otherlv_8= ')'
             {
-            otherlv_0=(Token)match(input,38,FollowSets000.FOLLOW_38_in_ruleOverallGoal2568); 
+            otherlv_0=(Token)match(input,38,FollowSets000.FOLLOW_38_in_ruleOverallGoal2567); 
 
                 	newLeafNode(otherlv_0, grammarAccess.getOverallGoalAccess().getDescriptionKeyword_0());
                 
@@ -2905,7 +2911,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getOverallGoalAccess().getDescriptionEStringParserRuleCall_1_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleOverallGoal2589);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleOverallGoal2588);
             lv_description_1_0=ruleEString();
 
             state._fsp--;
@@ -2927,15 +2933,15 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_2=(Token)match(input,39,FollowSets000.FOLLOW_39_in_ruleOverallGoal2601); 
+            otherlv_2=(Token)match(input,39,FollowSets000.FOLLOW_39_in_ruleOverallGoal2600); 
 
                 	newLeafNode(otherlv_2, grammarAccess.getOverallGoalAccess().getObjectivesKeyword_2());
                 
-            otherlv_3=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleOverallGoal2613); 
+            otherlv_3=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleOverallGoal2612); 
 
                 	newLeafNode(otherlv_3, grammarAccess.getOverallGoalAccess().getEqualsSignKeyword_3());
                 
-            otherlv_4=(Token)match(input,27,FollowSets000.FOLLOW_27_in_ruleOverallGoal2625); 
+            otherlv_4=(Token)match(input,27,FollowSets000.FOLLOW_27_in_ruleOverallGoal2624); 
 
                 	newLeafNode(otherlv_4, grammarAccess.getOverallGoalAccess().getLeftParenthesisKeyword_4());
                 
@@ -2948,7 +2954,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getOverallGoalAccess().getObjectivesObjectiveParserRuleCall_5_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleObjective_in_ruleOverallGoal2646);
+            pushFollow(FollowSets000.FOLLOW_ruleObjective_in_ruleOverallGoal2645);
             lv_objectives_5_0=ruleObjective();
 
             state._fsp--;
@@ -2985,7 +2991,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
             	case 1 :
             	    // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:1268:4: otherlv_6= ',' ( (lv_objectives_7_0= ruleObjective ) )
             	    {
-            	    otherlv_6=(Token)match(input,17,FollowSets000.FOLLOW_17_in_ruleOverallGoal2659); 
+            	    otherlv_6=(Token)match(input,17,FollowSets000.FOLLOW_17_in_ruleOverallGoal2658); 
 
             	        	newLeafNode(otherlv_6, grammarAccess.getOverallGoalAccess().getCommaKeyword_6_0());
             	        
@@ -2998,7 +3004,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
             	     
             	    	        newCompositeNode(grammarAccess.getOverallGoalAccess().getObjectivesObjectiveParserRuleCall_6_1_0()); 
             	    	    
-            	    pushFollow(FollowSets000.FOLLOW_ruleObjective_in_ruleOverallGoal2680);
+            	    pushFollow(FollowSets000.FOLLOW_ruleObjective_in_ruleOverallGoal2679);
             	    lv_objectives_7_0=ruleObjective();
 
             	    state._fsp--;
@@ -3029,7 +3035,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                 }
             } while (true);
 
-            otherlv_8=(Token)match(input,28,FollowSets000.FOLLOW_28_in_ruleOverallGoal2694); 
+            otherlv_8=(Token)match(input,28,FollowSets000.FOLLOW_28_in_ruleOverallGoal2693); 
 
                 	newLeafNode(otherlv_8, grammarAccess.getOverallGoalAccess().getRightParenthesisKeyword_7());
                 
@@ -3066,13 +3072,13 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
             // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:1304:2: iv_ruleImportDeclaration= ruleImportDeclaration EOF
             {
              newCompositeNode(grammarAccess.getImportDeclarationRule()); 
-            pushFollow(FollowSets000.FOLLOW_ruleImportDeclaration_in_entryRuleImportDeclaration2730);
+            pushFollow(FollowSets000.FOLLOW_ruleImportDeclaration_in_entryRuleImportDeclaration2729);
             iv_ruleImportDeclaration=ruleImportDeclaration();
 
             state._fsp--;
 
              current =iv_ruleImportDeclaration; 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleImportDeclaration2740); 
+            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleImportDeclaration2739); 
 
             }
 
@@ -3107,7 +3113,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
             // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:1315:1: (otherlv_0= 'ImportDeclaration' ( (lv_importURI_1_0= ruleEString ) ) )
             // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:1315:3: otherlv_0= 'ImportDeclaration' ( (lv_importURI_1_0= ruleEString ) )
             {
-            otherlv_0=(Token)match(input,40,FollowSets000.FOLLOW_40_in_ruleImportDeclaration2777); 
+            otherlv_0=(Token)match(input,40,FollowSets000.FOLLOW_40_in_ruleImportDeclaration2776); 
 
                 	newLeafNode(otherlv_0, grammarAccess.getImportDeclarationAccess().getImportDeclarationKeyword_0());
                 
@@ -3120,7 +3126,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getImportDeclarationAccess().getImportURIEStringParserRuleCall_1_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleImportDeclaration2798);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleImportDeclaration2797);
             lv_importURI_1_0=ruleEString();
 
             state._fsp--;
@@ -3175,13 +3181,13 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
             // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:1347:2: iv_ruleAdaptationPlan= ruleAdaptationPlan EOF
             {
              newCompositeNode(grammarAccess.getAdaptationPlanRule()); 
-            pushFollow(FollowSets000.FOLLOW_ruleAdaptationPlan_in_entryRuleAdaptationPlan2834);
+            pushFollow(FollowSets000.FOLLOW_ruleAdaptationPlan_in_entryRuleAdaptationPlan2833);
             iv_ruleAdaptationPlan=ruleAdaptationPlan();
 
             state._fsp--;
 
              current =iv_ruleAdaptationPlan; 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleAdaptationPlan2844); 
+            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleAdaptationPlan2843); 
 
             }
 
@@ -3236,7 +3242,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getAdaptationPlanAccess().getNameEStringParserRuleCall_0_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleAdaptationPlan2890);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleAdaptationPlan2889);
             lv_name_0_0=ruleEString();
 
             state._fsp--;
@@ -3269,7 +3275,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                 case 1 :
                     // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:1376:4: otherlv_1= '[id:' ( (lv_id_2_0= ruleEString ) ) otherlv_3= ']'
                     {
-                    otherlv_1=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleAdaptationPlan2903); 
+                    otherlv_1=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleAdaptationPlan2902); 
 
                         	newLeafNode(otherlv_1, grammarAccess.getAdaptationPlanAccess().getIdKeyword_1_0());
                         
@@ -3282,7 +3288,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                      
                     	        newCompositeNode(grammarAccess.getAdaptationPlanAccess().getIdEStringParserRuleCall_1_1_0()); 
                     	    
-                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleAdaptationPlan2924);
+                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleAdaptationPlan2923);
                     lv_id_2_0=ruleEString();
 
                     state._fsp--;
@@ -3304,7 +3310,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
                     }
 
-                    otherlv_3=(Token)match(input,13,FollowSets000.FOLLOW_13_in_ruleAdaptationPlan2936); 
+                    otherlv_3=(Token)match(input,13,FollowSets000.FOLLOW_13_in_ruleAdaptationPlan2935); 
 
                         	newLeafNode(otherlv_3, grammarAccess.getAdaptationPlanAccess().getRightSquareBracketKeyword_1_2());
                         
@@ -3314,7 +3320,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_4=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleAdaptationPlan2950); 
+            otherlv_4=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleAdaptationPlan2949); 
 
                 	newLeafNode(otherlv_4, grammarAccess.getAdaptationPlanAccess().getEqualsSignKeyword_2());
                 
@@ -3329,7 +3335,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                 case 1 :
                     // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:1406:3: otherlv_5= '(' ( (lv_steps_6_0= ruleAbstractControlFlowElement ) ) (otherlv_7= ',' ( (lv_steps_8_0= ruleAbstractControlFlowElement ) ) )* otherlv_9= ')'
                     {
-                    otherlv_5=(Token)match(input,27,FollowSets000.FOLLOW_27_in_ruleAdaptationPlan2963); 
+                    otherlv_5=(Token)match(input,27,FollowSets000.FOLLOW_27_in_ruleAdaptationPlan2962); 
 
                         	newLeafNode(otherlv_5, grammarAccess.getAdaptationPlanAccess().getLeftParenthesisKeyword_3_0());
                         
@@ -3342,7 +3348,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                      
                     	        newCompositeNode(grammarAccess.getAdaptationPlanAccess().getStepsAbstractControlFlowElementParserRuleCall_3_1_0()); 
                     	    
-                    pushFollow(FollowSets000.FOLLOW_ruleAbstractControlFlowElement_in_ruleAdaptationPlan2984);
+                    pushFollow(FollowSets000.FOLLOW_ruleAbstractControlFlowElement_in_ruleAdaptationPlan2983);
                     lv_steps_6_0=ruleAbstractControlFlowElement();
 
                     state._fsp--;
@@ -3379,7 +3385,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                     	case 1 :
                     	    // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:1428:4: otherlv_7= ',' ( (lv_steps_8_0= ruleAbstractControlFlowElement ) )
                     	    {
-                    	    otherlv_7=(Token)match(input,17,FollowSets000.FOLLOW_17_in_ruleAdaptationPlan2997); 
+                    	    otherlv_7=(Token)match(input,17,FollowSets000.FOLLOW_17_in_ruleAdaptationPlan2996); 
 
                     	        	newLeafNode(otherlv_7, grammarAccess.getAdaptationPlanAccess().getCommaKeyword_3_2_0());
                     	        
@@ -3392,7 +3398,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                     	     
                     	    	        newCompositeNode(grammarAccess.getAdaptationPlanAccess().getStepsAbstractControlFlowElementParserRuleCall_3_2_1_0()); 
                     	    	    
-                    	    pushFollow(FollowSets000.FOLLOW_ruleAbstractControlFlowElement_in_ruleAdaptationPlan3018);
+                    	    pushFollow(FollowSets000.FOLLOW_ruleAbstractControlFlowElement_in_ruleAdaptationPlan3017);
                     	    lv_steps_8_0=ruleAbstractControlFlowElement();
 
                     	    state._fsp--;
@@ -3423,7 +3429,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                         }
                     } while (true);
 
-                    otherlv_9=(Token)match(input,28,FollowSets000.FOLLOW_28_in_ruleAdaptationPlan3032); 
+                    otherlv_9=(Token)match(input,28,FollowSets000.FOLLOW_28_in_ruleAdaptationPlan3031); 
 
                         	newLeafNode(otherlv_9, grammarAccess.getAdaptationPlanAccess().getRightParenthesisKeyword_3_3());
                         
@@ -3466,13 +3472,13 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
             // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:1464:2: iv_ruleStartAction= ruleStartAction EOF
             {
              newCompositeNode(grammarAccess.getStartActionRule()); 
-            pushFollow(FollowSets000.FOLLOW_ruleStartAction_in_entryRuleStartAction3070);
+            pushFollow(FollowSets000.FOLLOW_ruleStartAction_in_entryRuleStartAction3069);
             iv_ruleStartAction=ruleStartAction();
 
             state._fsp--;
 
              current =iv_ruleStartAction; 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleStartAction3080); 
+            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleStartAction3079); 
 
             }
 
@@ -3520,7 +3526,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_1=(Token)match(input,41,FollowSets000.FOLLOW_41_in_ruleStartAction3126); 
+            otherlv_1=(Token)match(input,41,FollowSets000.FOLLOW_41_in_ruleStartAction3125); 
 
                 	newLeafNode(otherlv_1, grammarAccess.getStartActionAccess().getStartActionKeyword_1());
                 
@@ -3535,7 +3541,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                 case 1 :
                     // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:1485:3: otherlv_2= '[id:' ( (lv_id_3_0= ruleEString ) ) otherlv_4= ']'
                     {
-                    otherlv_2=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleStartAction3139); 
+                    otherlv_2=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleStartAction3138); 
 
                         	newLeafNode(otherlv_2, grammarAccess.getStartActionAccess().getIdKeyword_2_0());
                         
@@ -3548,7 +3554,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                      
                     	        newCompositeNode(grammarAccess.getStartActionAccess().getIdEStringParserRuleCall_2_1_0()); 
                     	    
-                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleStartAction3160);
+                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleStartAction3159);
                     lv_id_3_0=ruleEString();
 
                     state._fsp--;
@@ -3570,7 +3576,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
                     }
 
-                    otherlv_4=(Token)match(input,13,FollowSets000.FOLLOW_13_in_ruleStartAction3172); 
+                    otherlv_4=(Token)match(input,13,FollowSets000.FOLLOW_13_in_ruleStartAction3171); 
 
                         	newLeafNode(otherlv_4, grammarAccess.getStartActionAccess().getRightSquareBracketKeyword_2_2());
                         
@@ -3613,13 +3619,13 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
             // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:1521:2: iv_ruleStopAction= ruleStopAction EOF
             {
              newCompositeNode(grammarAccess.getStopActionRule()); 
-            pushFollow(FollowSets000.FOLLOW_ruleStopAction_in_entryRuleStopAction3210);
+            pushFollow(FollowSets000.FOLLOW_ruleStopAction_in_entryRuleStopAction3209);
             iv_ruleStopAction=ruleStopAction();
 
             state._fsp--;
 
              current =iv_ruleStopAction; 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleStopAction3220); 
+            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleStopAction3219); 
 
             }
 
@@ -3667,7 +3673,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_1=(Token)match(input,42,FollowSets000.FOLLOW_42_in_ruleStopAction3266); 
+            otherlv_1=(Token)match(input,42,FollowSets000.FOLLOW_42_in_ruleStopAction3265); 
 
                 	newLeafNode(otherlv_1, grammarAccess.getStopActionAccess().getStopActionKeyword_1());
                 
@@ -3682,7 +3688,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                 case 1 :
                     // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:1542:3: otherlv_2= '[id:' ( (lv_id_3_0= ruleEString ) ) otherlv_4= ']'
                     {
-                    otherlv_2=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleStopAction3279); 
+                    otherlv_2=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleStopAction3278); 
 
                         	newLeafNode(otherlv_2, grammarAccess.getStopActionAccess().getIdKeyword_2_0());
                         
@@ -3695,7 +3701,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                      
                     	        newCompositeNode(grammarAccess.getStopActionAccess().getIdEStringParserRuleCall_2_1_0()); 
                     	    
-                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleStopAction3300);
+                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleStopAction3299);
                     lv_id_3_0=ruleEString();
 
                     state._fsp--;
@@ -3717,7 +3723,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
                     }
 
-                    otherlv_4=(Token)match(input,13,FollowSets000.FOLLOW_13_in_ruleStopAction3312); 
+                    otherlv_4=(Token)match(input,13,FollowSets000.FOLLOW_13_in_ruleStopAction3311); 
 
                         	newLeafNode(otherlv_4, grammarAccess.getStopActionAccess().getRightSquareBracketKeyword_2_2());
                         
@@ -3760,13 +3766,13 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
             // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:1578:2: iv_ruleLoopAction= ruleLoopAction EOF
             {
              newCompositeNode(grammarAccess.getLoopActionRule()); 
-            pushFollow(FollowSets000.FOLLOW_ruleLoopAction_in_entryRuleLoopAction3350);
+            pushFollow(FollowSets000.FOLLOW_ruleLoopAction_in_entryRuleLoopAction3349);
             iv_ruleLoopAction=ruleLoopAction();
 
             state._fsp--;
 
              current =iv_ruleLoopAction; 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleLoopAction3360); 
+            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleLoopAction3359); 
 
             }
 
@@ -3821,7 +3827,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                 case 1 :
                     // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:1589:4: otherlv_0= 'LoopAction'
                     {
-                    otherlv_0=(Token)match(input,43,FollowSets000.FOLLOW_43_in_ruleLoopAction3398); 
+                    otherlv_0=(Token)match(input,43,FollowSets000.FOLLOW_43_in_ruleLoopAction3397); 
 
                         	newLeafNode(otherlv_0, grammarAccess.getLoopActionAccess().getLoopActionKeyword_0());
                         
@@ -3842,7 +3848,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                 case 1 :
                     // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:1593:5: otherlv_1= '[id:' ( (lv_id_2_0= ruleEString ) ) otherlv_3= ']'
                     {
-                    otherlv_1=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleLoopAction3413); 
+                    otherlv_1=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleLoopAction3412); 
 
                         	newLeafNode(otherlv_1, grammarAccess.getLoopActionAccess().getIdKeyword_1_0());
                         
@@ -3855,7 +3861,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                      
                     	        newCompositeNode(grammarAccess.getLoopActionAccess().getIdEStringParserRuleCall_1_1_0()); 
                     	    
-                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleLoopAction3434);
+                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleLoopAction3433);
                     lv_id_2_0=ruleEString();
 
                     state._fsp--;
@@ -3877,7 +3883,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
                     }
 
-                    otherlv_3=(Token)match(input,13,FollowSets000.FOLLOW_13_in_ruleLoopAction3446); 
+                    otherlv_3=(Token)match(input,13,FollowSets000.FOLLOW_13_in_ruleLoopAction3445); 
 
                         	newLeafNode(otherlv_3, grammarAccess.getLoopActionAccess().getRightSquareBracketKeyword_1_2());
                         
@@ -3887,15 +3893,15 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_4=(Token)match(input,44,FollowSets000.FOLLOW_44_in_ruleLoopAction3460); 
+            otherlv_4=(Token)match(input,44,FollowSets000.FOLLOW_44_in_ruleLoopAction3459); 
 
                 	newLeafNode(otherlv_4, grammarAccess.getLoopActionAccess().getRepeatKeyword_2());
                 
-            otherlv_5=(Token)match(input,45,FollowSets000.FOLLOW_45_in_ruleLoopAction3472); 
+            otherlv_5=(Token)match(input,45,FollowSets000.FOLLOW_45_in_ruleLoopAction3471); 
 
                 	newLeafNode(otherlv_5, grammarAccess.getLoopActionAccess().getCounterKeyword_3());
                 
-            otherlv_6=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleLoopAction3484); 
+            otherlv_6=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleLoopAction3483); 
 
                 	newLeafNode(otherlv_6, grammarAccess.getLoopActionAccess().getEqualsSignKeyword_4());
                 
@@ -3913,7 +3919,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getLoopActionAccess().getCounterParameterCrossReference_5_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleLoopAction3507);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleLoopAction3506);
             ruleEString();
 
             state._fsp--;
@@ -3927,7 +3933,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_8=(Token)match(input,27,FollowSets000.FOLLOW_27_in_ruleLoopAction3519); 
+            otherlv_8=(Token)match(input,27,FollowSets000.FOLLOW_27_in_ruleLoopAction3518); 
 
                 	newLeafNode(otherlv_8, grammarAccess.getLoopActionAccess().getLeftParenthesisKeyword_6());
                 
@@ -3940,7 +3946,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getLoopActionAccess().getBodyAdaptationPlanParserRuleCall_7_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleAdaptationPlan_in_ruleLoopAction3540);
+            pushFollow(FollowSets000.FOLLOW_ruleAdaptationPlan_in_ruleLoopAction3539);
             lv_body_9_0=ruleAdaptationPlan();
 
             state._fsp--;
@@ -3962,7 +3968,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_10=(Token)match(input,28,FollowSets000.FOLLOW_28_in_ruleLoopAction3552); 
+            otherlv_10=(Token)match(input,28,FollowSets000.FOLLOW_28_in_ruleLoopAction3551); 
 
                 	newLeafNode(otherlv_10, grammarAccess.getLoopActionAccess().getRightParenthesisKeyword_8());
                 
@@ -3999,13 +4005,13 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
             // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:1682:2: iv_ruleBranchAction= ruleBranchAction EOF
             {
              newCompositeNode(grammarAccess.getBranchActionRule()); 
-            pushFollow(FollowSets000.FOLLOW_ruleBranchAction_in_entryRuleBranchAction3588);
+            pushFollow(FollowSets000.FOLLOW_ruleBranchAction_in_entryRuleBranchAction3587);
             iv_ruleBranchAction=ruleBranchAction();
 
             state._fsp--;
 
              current =iv_ruleBranchAction; 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleBranchAction3598); 
+            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleBranchAction3597); 
 
             }
 
@@ -4073,7 +4079,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                 case 1 :
                     // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:1693:4: otherlv_0= 'BranchAction'
                     {
-                    otherlv_0=(Token)match(input,46,FollowSets000.FOLLOW_46_in_ruleBranchAction3636); 
+                    otherlv_0=(Token)match(input,46,FollowSets000.FOLLOW_46_in_ruleBranchAction3635); 
 
                         	newLeafNode(otherlv_0, grammarAccess.getBranchActionAccess().getBranchActionKeyword_0());
                         
@@ -4094,7 +4100,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                 case 1 :
                     // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:1697:5: otherlv_1= '[id:' ( (lv_id_2_0= ruleEString ) ) otherlv_3= ']'
                     {
-                    otherlv_1=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleBranchAction3651); 
+                    otherlv_1=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleBranchAction3650); 
 
                         	newLeafNode(otherlv_1, grammarAccess.getBranchActionAccess().getIdKeyword_1_0());
                         
@@ -4107,7 +4113,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                      
                     	        newCompositeNode(grammarAccess.getBranchActionAccess().getIdEStringParserRuleCall_1_1_0()); 
                     	    
-                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleBranchAction3672);
+                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleBranchAction3671);
                     lv_id_2_0=ruleEString();
 
                     state._fsp--;
@@ -4129,7 +4135,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
                     }
 
-                    otherlv_3=(Token)match(input,13,FollowSets000.FOLLOW_13_in_ruleBranchAction3684); 
+                    otherlv_3=(Token)match(input,13,FollowSets000.FOLLOW_13_in_ruleBranchAction3683); 
 
                         	newLeafNode(otherlv_3, grammarAccess.getBranchActionAccess().getRightSquareBracketKeyword_1_2());
                         
@@ -4139,19 +4145,19 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_4=(Token)match(input,47,FollowSets000.FOLLOW_47_in_ruleBranchAction3698); 
+            otherlv_4=(Token)match(input,47,FollowSets000.FOLLOW_47_in_ruleBranchAction3697); 
 
                 	newLeafNode(otherlv_4, grammarAccess.getBranchActionAccess().getIfKeyword_2());
                 
-            otherlv_5=(Token)match(input,27,FollowSets000.FOLLOW_27_in_ruleBranchAction3710); 
+            otherlv_5=(Token)match(input,27,FollowSets000.FOLLOW_27_in_ruleBranchAction3709); 
 
                 	newLeafNode(otherlv_5, grammarAccess.getBranchActionAccess().getLeftParenthesisKeyword_3());
                 
-            otherlv_6=(Token)match(input,48,FollowSets000.FOLLOW_48_in_ruleBranchAction3722); 
+            otherlv_6=(Token)match(input,48,FollowSets000.FOLLOW_48_in_ruleBranchAction3721); 
 
                 	newLeafNode(otherlv_6, grammarAccess.getBranchActionAccess().getContextKeyword_4());
                 
-            otherlv_7=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleBranchAction3734); 
+            otherlv_7=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleBranchAction3733); 
 
                 	newLeafNode(otherlv_7, grammarAccess.getBranchActionAccess().getEqualsSignKeyword_5());
                 
@@ -4169,7 +4175,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getBranchActionAccess().getContextEntityCrossReference_6_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleBranchAction3757);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleBranchAction3756);
             ruleEString();
 
             state._fsp--;
@@ -4183,15 +4189,15 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_9=(Token)match(input,17,FollowSets000.FOLLOW_17_in_ruleBranchAction3769); 
+            otherlv_9=(Token)match(input,17,FollowSets000.FOLLOW_17_in_ruleBranchAction3768); 
 
                 	newLeafNode(otherlv_9, grammarAccess.getBranchActionAccess().getCommaKeyword_7());
                 
-            otherlv_10=(Token)match(input,49,FollowSets000.FOLLOW_49_in_ruleBranchAction3781); 
+            otherlv_10=(Token)match(input,49,FollowSets000.FOLLOW_49_in_ruleBranchAction3780); 
 
                 	newLeafNode(otherlv_10, grammarAccess.getBranchActionAccess().getConditionKeyword_8());
                 
-            otherlv_11=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleBranchAction3793); 
+            otherlv_11=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleBranchAction3792); 
 
                 	newLeafNode(otherlv_11, grammarAccess.getBranchActionAccess().getEqualsSignKeyword_9());
                 
@@ -4204,7 +4210,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getBranchActionAccess().getConditionEStringParserRuleCall_10_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleBranchAction3814);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleBranchAction3813);
             lv_condition_12_0=ruleEString();
 
             state._fsp--;
@@ -4226,15 +4232,15 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_13=(Token)match(input,28,FollowSets000.FOLLOW_28_in_ruleBranchAction3826); 
+            otherlv_13=(Token)match(input,28,FollowSets000.FOLLOW_28_in_ruleBranchAction3825); 
 
                 	newLeafNode(otherlv_13, grammarAccess.getBranchActionAccess().getRightParenthesisKeyword_11());
                 
-            otherlv_14=(Token)match(input,50,FollowSets000.FOLLOW_50_in_ruleBranchAction3838); 
+            otherlv_14=(Token)match(input,50,FollowSets000.FOLLOW_50_in_ruleBranchAction3837); 
 
                 	newLeafNode(otherlv_14, grammarAccess.getBranchActionAccess().getThenKeyword_12());
                 
-            otherlv_15=(Token)match(input,27,FollowSets000.FOLLOW_27_in_ruleBranchAction3850); 
+            otherlv_15=(Token)match(input,27,FollowSets000.FOLLOW_27_in_ruleBranchAction3849); 
 
                 	newLeafNode(otherlv_15, grammarAccess.getBranchActionAccess().getLeftParenthesisKeyword_13());
                 
@@ -4247,7 +4253,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getBranchActionAccess().getConditionTrueBranchAdaptationPlanParserRuleCall_14_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleAdaptationPlan_in_ruleBranchAction3871);
+            pushFollow(FollowSets000.FOLLOW_ruleAdaptationPlan_in_ruleBranchAction3870);
             lv_conditionTrueBranch_16_0=ruleAdaptationPlan();
 
             state._fsp--;
@@ -4269,15 +4275,15 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_17=(Token)match(input,28,FollowSets000.FOLLOW_28_in_ruleBranchAction3883); 
+            otherlv_17=(Token)match(input,28,FollowSets000.FOLLOW_28_in_ruleBranchAction3882); 
 
                 	newLeafNode(otherlv_17, grammarAccess.getBranchActionAccess().getRightParenthesisKeyword_15());
                 
-            otherlv_18=(Token)match(input,51,FollowSets000.FOLLOW_51_in_ruleBranchAction3895); 
+            otherlv_18=(Token)match(input,51,FollowSets000.FOLLOW_51_in_ruleBranchAction3894); 
 
                 	newLeafNode(otherlv_18, grammarAccess.getBranchActionAccess().getElseKeyword_16());
                 
-            otherlv_19=(Token)match(input,27,FollowSets000.FOLLOW_27_in_ruleBranchAction3907); 
+            otherlv_19=(Token)match(input,27,FollowSets000.FOLLOW_27_in_ruleBranchAction3906); 
 
                 	newLeafNode(otherlv_19, grammarAccess.getBranchActionAccess().getLeftParenthesisKeyword_17());
                 
@@ -4290,7 +4296,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getBranchActionAccess().getConditionFalseBranchAdaptationPlanParserRuleCall_18_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleAdaptationPlan_in_ruleBranchAction3928);
+            pushFollow(FollowSets000.FOLLOW_ruleAdaptationPlan_in_ruleBranchAction3927);
             lv_conditionFalseBranch_20_0=ruleAdaptationPlan();
 
             state._fsp--;
@@ -4312,7 +4318,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_21=(Token)match(input,28,FollowSets000.FOLLOW_28_in_ruleBranchAction3940); 
+            otherlv_21=(Token)match(input,28,FollowSets000.FOLLOW_28_in_ruleBranchAction3939); 
 
                 	newLeafNode(otherlv_21, grammarAccess.getBranchActionAccess().getRightParenthesisKeyword_19());
                 
@@ -4349,13 +4355,13 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
             // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:1858:2: iv_ruleActionReference= ruleActionReference EOF
             {
              newCompositeNode(grammarAccess.getActionReferenceRule()); 
-            pushFollow(FollowSets000.FOLLOW_ruleActionReference_in_entryRuleActionReference3976);
+            pushFollow(FollowSets000.FOLLOW_ruleActionReference_in_entryRuleActionReference3975);
             iv_ruleActionReference=ruleActionReference();
 
             state._fsp--;
 
              current =iv_ruleActionReference; 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleActionReference3986); 
+            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleActionReference3985); 
 
             }
 
@@ -4395,7 +4401,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
             // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:1869:1: (otherlv_0= 'ActionReference' (otherlv_1= '[id:' ( (lv_id_2_0= ruleEString ) ) otherlv_3= ']' )? otherlv_4= '(' otherlv_5= 'refersTo' ( ( ruleEString ) ) otherlv_7= ')' )
             // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:1869:3: otherlv_0= 'ActionReference' (otherlv_1= '[id:' ( (lv_id_2_0= ruleEString ) ) otherlv_3= ']' )? otherlv_4= '(' otherlv_5= 'refersTo' ( ( ruleEString ) ) otherlv_7= ')'
             {
-            otherlv_0=(Token)match(input,52,FollowSets000.FOLLOW_52_in_ruleActionReference4023); 
+            otherlv_0=(Token)match(input,52,FollowSets000.FOLLOW_52_in_ruleActionReference4022); 
 
                 	newLeafNode(otherlv_0, grammarAccess.getActionReferenceAccess().getActionReferenceKeyword_0());
                 
@@ -4410,7 +4416,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                 case 1 :
                     // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:1873:3: otherlv_1= '[id:' ( (lv_id_2_0= ruleEString ) ) otherlv_3= ']'
                     {
-                    otherlv_1=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleActionReference4036); 
+                    otherlv_1=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleActionReference4035); 
 
                         	newLeafNode(otherlv_1, grammarAccess.getActionReferenceAccess().getIdKeyword_1_0());
                         
@@ -4423,7 +4429,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                      
                     	        newCompositeNode(grammarAccess.getActionReferenceAccess().getIdEStringParserRuleCall_1_1_0()); 
                     	    
-                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleActionReference4057);
+                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleActionReference4056);
                     lv_id_2_0=ruleEString();
 
                     state._fsp--;
@@ -4445,7 +4451,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
                     }
 
-                    otherlv_3=(Token)match(input,13,FollowSets000.FOLLOW_13_in_ruleActionReference4069); 
+                    otherlv_3=(Token)match(input,13,FollowSets000.FOLLOW_13_in_ruleActionReference4068); 
 
                         	newLeafNode(otherlv_3, grammarAccess.getActionReferenceAccess().getRightSquareBracketKeyword_1_2());
                         
@@ -4455,11 +4461,11 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_4=(Token)match(input,27,FollowSets000.FOLLOW_27_in_ruleActionReference4083); 
+            otherlv_4=(Token)match(input,27,FollowSets000.FOLLOW_27_in_ruleActionReference4082); 
 
                 	newLeafNode(otherlv_4, grammarAccess.getActionReferenceAccess().getLeftParenthesisKeyword_2());
                 
-            otherlv_5=(Token)match(input,53,FollowSets000.FOLLOW_53_in_ruleActionReference4095); 
+            otherlv_5=(Token)match(input,53,FollowSets000.FOLLOW_53_in_ruleActionReference4094); 
 
                 	newLeafNode(otherlv_5, grammarAccess.getActionReferenceAccess().getRefersToKeyword_3());
                 
@@ -4477,7 +4483,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getActionReferenceAccess().getRefersToActionCrossReference_4_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleActionReference4118);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleActionReference4117);
             ruleEString();
 
             state._fsp--;
@@ -4491,7 +4497,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_7=(Token)match(input,28,FollowSets000.FOLLOW_28_in_ruleActionReference4130); 
+            otherlv_7=(Token)match(input,28,FollowSets000.FOLLOW_28_in_ruleActionReference4129); 
 
                 	newLeafNode(otherlv_7, grammarAccess.getActionReferenceAccess().getRightParenthesisKeyword_5());
                 
@@ -4528,13 +4534,13 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
             // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:1936:2: iv_ruleAdaptationActionOperation= ruleAdaptationActionOperation EOF
             {
              newCompositeNode(grammarAccess.getAdaptationActionOperationRule()); 
-            pushFollow(FollowSets000.FOLLOW_ruleAdaptationActionOperation_in_entryRuleAdaptationActionOperation4166);
+            pushFollow(FollowSets000.FOLLOW_ruleAdaptationActionOperation_in_entryRuleAdaptationActionOperation4165);
             iv_ruleAdaptationActionOperation=ruleAdaptationActionOperation();
 
             state._fsp--;
 
              current =iv_ruleAdaptationActionOperation; 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleAdaptationActionOperation4176); 
+            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleAdaptationActionOperation4175); 
 
             }
 
@@ -4573,7 +4579,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
             // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:1947:1: (otherlv_0= '(' ( (lv_adaptationOperationDirection_1_0= ruleAdaptationDirection ) ) otherlv_2= ',' ( (lv_adaptationOperationScope_3_0= ruleAdaptationScope ) ) otherlv_4= ')' )
             // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:1947:3: otherlv_0= '(' ( (lv_adaptationOperationDirection_1_0= ruleAdaptationDirection ) ) otherlv_2= ',' ( (lv_adaptationOperationScope_3_0= ruleAdaptationScope ) ) otherlv_4= ')'
             {
-            otherlv_0=(Token)match(input,27,FollowSets000.FOLLOW_27_in_ruleAdaptationActionOperation4213); 
+            otherlv_0=(Token)match(input,27,FollowSets000.FOLLOW_27_in_ruleAdaptationActionOperation4212); 
 
                 	newLeafNode(otherlv_0, grammarAccess.getAdaptationActionOperationAccess().getLeftParenthesisKeyword_0());
                 
@@ -4586,7 +4592,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getAdaptationActionOperationAccess().getAdaptationOperationDirectionAdaptationDirectionEnumRuleCall_1_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleAdaptationDirection_in_ruleAdaptationActionOperation4234);
+            pushFollow(FollowSets000.FOLLOW_ruleAdaptationDirection_in_ruleAdaptationActionOperation4233);
             lv_adaptationOperationDirection_1_0=ruleAdaptationDirection();
 
             state._fsp--;
@@ -4608,7 +4614,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_2=(Token)match(input,17,FollowSets000.FOLLOW_17_in_ruleAdaptationActionOperation4246); 
+            otherlv_2=(Token)match(input,17,FollowSets000.FOLLOW_17_in_ruleAdaptationActionOperation4245); 
 
                 	newLeafNode(otherlv_2, grammarAccess.getAdaptationActionOperationAccess().getCommaKeyword_2());
                 
@@ -4621,7 +4627,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getAdaptationActionOperationAccess().getAdaptationOperationScopeAdaptationScopeEnumRuleCall_3_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleAdaptationScope_in_ruleAdaptationActionOperation4267);
+            pushFollow(FollowSets000.FOLLOW_ruleAdaptationScope_in_ruleAdaptationActionOperation4266);
             lv_adaptationOperationScope_3_0=ruleAdaptationScope();
 
             state._fsp--;
@@ -4643,7 +4649,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_4=(Token)match(input,28,FollowSets000.FOLLOW_28_in_ruleAdaptationActionOperation4279); 
+            otherlv_4=(Token)match(input,28,FollowSets000.FOLLOW_28_in_ruleAdaptationActionOperation4278); 
 
                 	newLeafNode(otherlv_4, grammarAccess.getAdaptationActionOperationAccess().getRightParenthesisKeyword_4());
                 
@@ -4680,13 +4686,13 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
             // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:2005:2: iv_ruleModelVariableConfigurationRange= ruleModelVariableConfigurationRange EOF
             {
              newCompositeNode(grammarAccess.getModelVariableConfigurationRangeRule()); 
-            pushFollow(FollowSets000.FOLLOW_ruleModelVariableConfigurationRange_in_entryRuleModelVariableConfigurationRange4315);
+            pushFollow(FollowSets000.FOLLOW_ruleModelVariableConfigurationRange_in_entryRuleModelVariableConfigurationRange4314);
             iv_ruleModelVariableConfigurationRange=ruleModelVariableConfigurationRange();
 
             state._fsp--;
 
              current =iv_ruleModelVariableConfigurationRange; 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleModelVariableConfigurationRange4325); 
+            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleModelVariableConfigurationRange4324); 
 
             }
 
@@ -4735,7 +4741,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
             // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:2016:1: (otherlv_0= 'ModelVariableConfigurationRange' (otherlv_1= '[id:' ( (lv_id_2_0= ruleEString ) ) otherlv_3= ']' )? otherlv_4= '{' otherlv_5= 'name' ( (lv_name_6_0= ruleEString ) ) otherlv_7= 'minValue' ( (lv_minValue_8_0= ruleEDouble ) ) otherlv_9= 'maxValue' ( (lv_maxValue_10_0= ruleEDouble ) ) otherlv_11= 'adaptableEntity' ( ( ruleEString ) ) otherlv_13= '}' )
             // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:2016:3: otherlv_0= 'ModelVariableConfigurationRange' (otherlv_1= '[id:' ( (lv_id_2_0= ruleEString ) ) otherlv_3= ']' )? otherlv_4= '{' otherlv_5= 'name' ( (lv_name_6_0= ruleEString ) ) otherlv_7= 'minValue' ( (lv_minValue_8_0= ruleEDouble ) ) otherlv_9= 'maxValue' ( (lv_maxValue_10_0= ruleEDouble ) ) otherlv_11= 'adaptableEntity' ( ( ruleEString ) ) otherlv_13= '}'
             {
-            otherlv_0=(Token)match(input,54,FollowSets000.FOLLOW_54_in_ruleModelVariableConfigurationRange4362); 
+            otherlv_0=(Token)match(input,54,FollowSets000.FOLLOW_54_in_ruleModelVariableConfigurationRange4361); 
 
                 	newLeafNode(otherlv_0, grammarAccess.getModelVariableConfigurationRangeAccess().getModelVariableConfigurationRangeKeyword_0());
                 
@@ -4750,7 +4756,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                 case 1 :
                     // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:2020:3: otherlv_1= '[id:' ( (lv_id_2_0= ruleEString ) ) otherlv_3= ']'
                     {
-                    otherlv_1=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleModelVariableConfigurationRange4375); 
+                    otherlv_1=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleModelVariableConfigurationRange4374); 
 
                         	newLeafNode(otherlv_1, grammarAccess.getModelVariableConfigurationRangeAccess().getIdKeyword_1_0());
                         
@@ -4763,7 +4769,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                      
                     	        newCompositeNode(grammarAccess.getModelVariableConfigurationRangeAccess().getIdEStringParserRuleCall_1_1_0()); 
                     	    
-                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleModelVariableConfigurationRange4396);
+                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleModelVariableConfigurationRange4395);
                     lv_id_2_0=ruleEString();
 
                     state._fsp--;
@@ -4785,7 +4791,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
                     }
 
-                    otherlv_3=(Token)match(input,13,FollowSets000.FOLLOW_13_in_ruleModelVariableConfigurationRange4408); 
+                    otherlv_3=(Token)match(input,13,FollowSets000.FOLLOW_13_in_ruleModelVariableConfigurationRange4407); 
 
                         	newLeafNode(otherlv_3, grammarAccess.getModelVariableConfigurationRangeAccess().getRightSquareBracketKeyword_1_2());
                         
@@ -4795,11 +4801,11 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_4=(Token)match(input,14,FollowSets000.FOLLOW_14_in_ruleModelVariableConfigurationRange4422); 
+            otherlv_4=(Token)match(input,14,FollowSets000.FOLLOW_14_in_ruleModelVariableConfigurationRange4421); 
 
                 	newLeafNode(otherlv_4, grammarAccess.getModelVariableConfigurationRangeAccess().getLeftCurlyBracketKeyword_2());
                 
-            otherlv_5=(Token)match(input,55,FollowSets000.FOLLOW_55_in_ruleModelVariableConfigurationRange4434); 
+            otherlv_5=(Token)match(input,55,FollowSets000.FOLLOW_55_in_ruleModelVariableConfigurationRange4433); 
 
                 	newLeafNode(otherlv_5, grammarAccess.getModelVariableConfigurationRangeAccess().getNameKeyword_3());
                 
@@ -4812,7 +4818,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getModelVariableConfigurationRangeAccess().getNameEStringParserRuleCall_4_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleModelVariableConfigurationRange4455);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleModelVariableConfigurationRange4454);
             lv_name_6_0=ruleEString();
 
             state._fsp--;
@@ -4834,7 +4840,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_7=(Token)match(input,56,FollowSets000.FOLLOW_56_in_ruleModelVariableConfigurationRange4467); 
+            otherlv_7=(Token)match(input,56,FollowSets000.FOLLOW_56_in_ruleModelVariableConfigurationRange4466); 
 
                 	newLeafNode(otherlv_7, grammarAccess.getModelVariableConfigurationRangeAccess().getMinValueKeyword_5());
                 
@@ -4847,7 +4853,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getModelVariableConfigurationRangeAccess().getMinValueEDoubleParserRuleCall_6_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleEDouble_in_ruleModelVariableConfigurationRange4488);
+            pushFollow(FollowSets000.FOLLOW_ruleEDouble_in_ruleModelVariableConfigurationRange4487);
             lv_minValue_8_0=ruleEDouble();
 
             state._fsp--;
@@ -4869,7 +4875,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_9=(Token)match(input,57,FollowSets000.FOLLOW_57_in_ruleModelVariableConfigurationRange4500); 
+            otherlv_9=(Token)match(input,57,FollowSets000.FOLLOW_57_in_ruleModelVariableConfigurationRange4499); 
 
                 	newLeafNode(otherlv_9, grammarAccess.getModelVariableConfigurationRangeAccess().getMaxValueKeyword_7());
                 
@@ -4882,7 +4888,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getModelVariableConfigurationRangeAccess().getMaxValueEDoubleParserRuleCall_8_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleEDouble_in_ruleModelVariableConfigurationRange4521);
+            pushFollow(FollowSets000.FOLLOW_ruleEDouble_in_ruleModelVariableConfigurationRange4520);
             lv_maxValue_10_0=ruleEDouble();
 
             state._fsp--;
@@ -4904,7 +4910,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_11=(Token)match(input,58,FollowSets000.FOLLOW_58_in_ruleModelVariableConfigurationRange4533); 
+            otherlv_11=(Token)match(input,58,FollowSets000.FOLLOW_58_in_ruleModelVariableConfigurationRange4532); 
 
                 	newLeafNode(otherlv_11, grammarAccess.getModelVariableConfigurationRangeAccess().getAdaptableEntityKeyword_9());
                 
@@ -4922,7 +4928,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getModelVariableConfigurationRangeAccess().getAdaptableEntityAdaptableEntityCrossReference_10_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleModelVariableConfigurationRange4556);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleModelVariableConfigurationRange4555);
             ruleEString();
 
             state._fsp--;
@@ -4936,7 +4942,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_13=(Token)match(input,22,FollowSets000.FOLLOW_22_in_ruleModelVariableConfigurationRange4568); 
+            otherlv_13=(Token)match(input,22,FollowSets000.FOLLOW_22_in_ruleModelVariableConfigurationRange4567); 
 
                 	newLeafNode(otherlv_13, grammarAccess.getModelVariableConfigurationRangeAccess().getRightCurlyBracketKeyword_11());
                 
@@ -4973,13 +4979,13 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
             // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:2149:2: iv_ruleModelEntityConfigurationRange= ruleModelEntityConfigurationRange EOF
             {
              newCompositeNode(grammarAccess.getModelEntityConfigurationRangeRule()); 
-            pushFollow(FollowSets000.FOLLOW_ruleModelEntityConfigurationRange_in_entryRuleModelEntityConfigurationRange4604);
+            pushFollow(FollowSets000.FOLLOW_ruleModelEntityConfigurationRange_in_entryRuleModelEntityConfigurationRange4603);
             iv_ruleModelEntityConfigurationRange=ruleModelEntityConfigurationRange();
 
             state._fsp--;
 
              current =iv_ruleModelEntityConfigurationRange; 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleModelEntityConfigurationRange4614); 
+            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleModelEntityConfigurationRange4613); 
 
             }
 
@@ -5025,7 +5031,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
             // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:2160:1: (otherlv_0= 'ModelEntityConfigurationRange' (otherlv_1= '[id:' ( (lv_id_2_0= ruleEString ) ) otherlv_3= ']' )? otherlv_4= '{' otherlv_5= 'name' ( (lv_name_6_0= ruleEString ) ) otherlv_7= 'adaptableEntity' ( ( ruleEString ) ) otherlv_9= 'variationPossibility' ( (lv_variationPossibility_10_0= ruleVariationType ) ) otherlv_11= '}' )
             // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:2160:3: otherlv_0= 'ModelEntityConfigurationRange' (otherlv_1= '[id:' ( (lv_id_2_0= ruleEString ) ) otherlv_3= ']' )? otherlv_4= '{' otherlv_5= 'name' ( (lv_name_6_0= ruleEString ) ) otherlv_7= 'adaptableEntity' ( ( ruleEString ) ) otherlv_9= 'variationPossibility' ( (lv_variationPossibility_10_0= ruleVariationType ) ) otherlv_11= '}'
             {
-            otherlv_0=(Token)match(input,59,FollowSets000.FOLLOW_59_in_ruleModelEntityConfigurationRange4651); 
+            otherlv_0=(Token)match(input,59,FollowSets000.FOLLOW_59_in_ruleModelEntityConfigurationRange4650); 
 
                 	newLeafNode(otherlv_0, grammarAccess.getModelEntityConfigurationRangeAccess().getModelEntityConfigurationRangeKeyword_0());
                 
@@ -5040,7 +5046,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                 case 1 :
                     // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:2164:3: otherlv_1= '[id:' ( (lv_id_2_0= ruleEString ) ) otherlv_3= ']'
                     {
-                    otherlv_1=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleModelEntityConfigurationRange4664); 
+                    otherlv_1=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleModelEntityConfigurationRange4663); 
 
                         	newLeafNode(otherlv_1, grammarAccess.getModelEntityConfigurationRangeAccess().getIdKeyword_1_0());
                         
@@ -5053,7 +5059,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                      
                     	        newCompositeNode(grammarAccess.getModelEntityConfigurationRangeAccess().getIdEStringParserRuleCall_1_1_0()); 
                     	    
-                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleModelEntityConfigurationRange4685);
+                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleModelEntityConfigurationRange4684);
                     lv_id_2_0=ruleEString();
 
                     state._fsp--;
@@ -5075,7 +5081,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
                     }
 
-                    otherlv_3=(Token)match(input,13,FollowSets000.FOLLOW_13_in_ruleModelEntityConfigurationRange4697); 
+                    otherlv_3=(Token)match(input,13,FollowSets000.FOLLOW_13_in_ruleModelEntityConfigurationRange4696); 
 
                         	newLeafNode(otherlv_3, grammarAccess.getModelEntityConfigurationRangeAccess().getRightSquareBracketKeyword_1_2());
                         
@@ -5085,11 +5091,11 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_4=(Token)match(input,14,FollowSets000.FOLLOW_14_in_ruleModelEntityConfigurationRange4711); 
+            otherlv_4=(Token)match(input,14,FollowSets000.FOLLOW_14_in_ruleModelEntityConfigurationRange4710); 
 
                 	newLeafNode(otherlv_4, grammarAccess.getModelEntityConfigurationRangeAccess().getLeftCurlyBracketKeyword_2());
                 
-            otherlv_5=(Token)match(input,55,FollowSets000.FOLLOW_55_in_ruleModelEntityConfigurationRange4723); 
+            otherlv_5=(Token)match(input,55,FollowSets000.FOLLOW_55_in_ruleModelEntityConfigurationRange4722); 
 
                 	newLeafNode(otherlv_5, grammarAccess.getModelEntityConfigurationRangeAccess().getNameKeyword_3());
                 
@@ -5102,7 +5108,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getModelEntityConfigurationRangeAccess().getNameEStringParserRuleCall_4_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleModelEntityConfigurationRange4744);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleModelEntityConfigurationRange4743);
             lv_name_6_0=ruleEString();
 
             state._fsp--;
@@ -5124,7 +5130,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_7=(Token)match(input,58,FollowSets000.FOLLOW_58_in_ruleModelEntityConfigurationRange4756); 
+            otherlv_7=(Token)match(input,58,FollowSets000.FOLLOW_58_in_ruleModelEntityConfigurationRange4755); 
 
                 	newLeafNode(otherlv_7, grammarAccess.getModelEntityConfigurationRangeAccess().getAdaptableEntityKeyword_5());
                 
@@ -5142,7 +5148,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getModelEntityConfigurationRangeAccess().getAdaptableEntityEntityCrossReference_6_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleModelEntityConfigurationRange4779);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleModelEntityConfigurationRange4778);
             ruleEString();
 
             state._fsp--;
@@ -5156,7 +5162,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_9=(Token)match(input,60,FollowSets000.FOLLOW_60_in_ruleModelEntityConfigurationRange4791); 
+            otherlv_9=(Token)match(input,60,FollowSets000.FOLLOW_60_in_ruleModelEntityConfigurationRange4790); 
 
                 	newLeafNode(otherlv_9, grammarAccess.getModelEntityConfigurationRangeAccess().getVariationPossibilityKeyword_7());
                 
@@ -5169,7 +5175,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getModelEntityConfigurationRangeAccess().getVariationPossibilityVariationTypeParserRuleCall_8_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleVariationType_in_ruleModelEntityConfigurationRange4812);
+            pushFollow(FollowSets000.FOLLOW_ruleVariationType_in_ruleModelEntityConfigurationRange4811);
             lv_variationPossibility_10_0=ruleVariationType();
 
             state._fsp--;
@@ -5191,7 +5197,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_11=(Token)match(input,22,FollowSets000.FOLLOW_22_in_ruleModelEntityConfigurationRange4824); 
+            otherlv_11=(Token)match(input,22,FollowSets000.FOLLOW_22_in_ruleModelEntityConfigurationRange4823); 
 
                 	newLeafNode(otherlv_11, grammarAccess.getModelEntityConfigurationRangeAccess().getRightCurlyBracketKeyword_9());
                 
@@ -5228,13 +5234,13 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
             // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:2271:2: iv_ruleEDouble= ruleEDouble EOF
             {
              newCompositeNode(grammarAccess.getEDoubleRule()); 
-            pushFollow(FollowSets000.FOLLOW_ruleEDouble_in_entryRuleEDouble4861);
+            pushFollow(FollowSets000.FOLLOW_ruleEDouble_in_entryRuleEDouble4860);
             iv_ruleEDouble=ruleEDouble();
 
             state._fsp--;
 
              current =iv_ruleEDouble.getText(); 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleEDouble4872); 
+            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleEDouble4871); 
 
             }
 
@@ -5281,7 +5287,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                 case 1 :
                     // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:2283:2: kw= '-'
                     {
-                    kw=(Token)match(input,61,FollowSets000.FOLLOW_61_in_ruleEDouble4911); 
+                    kw=(Token)match(input,61,FollowSets000.FOLLOW_61_in_ruleEDouble4910); 
 
                             current.merge(kw);
                             newLeafNode(kw, grammarAccess.getEDoubleAccess().getHyphenMinusKeyword_0()); 
@@ -5303,7 +5309,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                 case 1 :
                     // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:2288:8: this_INT_1= RULE_INT
                     {
-                    this_INT_1=(Token)match(input,RULE_INT,FollowSets000.FOLLOW_RULE_INT_in_ruleEDouble4929); 
+                    this_INT_1=(Token)match(input,RULE_INT,FollowSets000.FOLLOW_RULE_INT_in_ruleEDouble4928); 
 
                     		current.merge(this_INT_1);
                         
@@ -5316,12 +5322,12 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            kw=(Token)match(input,62,FollowSets000.FOLLOW_62_in_ruleEDouble4949); 
+            kw=(Token)match(input,62,FollowSets000.FOLLOW_62_in_ruleEDouble4948); 
 
                     current.merge(kw);
                     newLeafNode(kw, grammarAccess.getEDoubleAccess().getFullStopKeyword_2()); 
                 
-            this_INT_3=(Token)match(input,RULE_INT,FollowSets000.FOLLOW_RULE_INT_in_ruleEDouble4964); 
+            this_INT_3=(Token)match(input,RULE_INT,FollowSets000.FOLLOW_RULE_INT_in_ruleEDouble4963); 
 
             		current.merge(this_INT_3);
                 
@@ -5359,7 +5365,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                         case 1 :
                             // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:2309:2: kw= 'E'
                             {
-                            kw=(Token)match(input,63,FollowSets000.FOLLOW_63_in_ruleEDouble4984); 
+                            kw=(Token)match(input,63,FollowSets000.FOLLOW_63_in_ruleEDouble4983); 
 
                                     current.merge(kw);
                                     newLeafNode(kw, grammarAccess.getEDoubleAccess().getEKeyword_4_0_0()); 
@@ -5370,7 +5376,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                         case 2 :
                             // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:2316:2: kw= 'e'
                             {
-                            kw=(Token)match(input,64,FollowSets000.FOLLOW_64_in_ruleEDouble5003); 
+                            kw=(Token)match(input,64,FollowSets000.FOLLOW_64_in_ruleEDouble5002); 
 
                                     current.merge(kw);
                                     newLeafNode(kw, grammarAccess.getEDoubleAccess().getEKeyword_4_0_1()); 
@@ -5392,7 +5398,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                         case 1 :
                             // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:2322:2: kw= '-'
                             {
-                            kw=(Token)match(input,61,FollowSets000.FOLLOW_61_in_ruleEDouble5018); 
+                            kw=(Token)match(input,61,FollowSets000.FOLLOW_61_in_ruleEDouble5017); 
 
                                     current.merge(kw);
                                     newLeafNode(kw, grammarAccess.getEDoubleAccess().getHyphenMinusKeyword_4_1()); 
@@ -5403,7 +5409,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
                     }
 
-                    this_INT_7=(Token)match(input,RULE_INT,FollowSets000.FOLLOW_RULE_INT_in_ruleEDouble5035); 
+                    this_INT_7=(Token)match(input,RULE_INT,FollowSets000.FOLLOW_RULE_INT_in_ruleEDouble5034); 
 
                     		current.merge(this_INT_7);
                         
@@ -5449,13 +5455,13 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
             // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:2344:2: iv_rulePropertyRange= rulePropertyRange EOF
             {
              newCompositeNode(grammarAccess.getPropertyRangeRule()); 
-            pushFollow(FollowSets000.FOLLOW_rulePropertyRange_in_entryRulePropertyRange5082);
+            pushFollow(FollowSets000.FOLLOW_rulePropertyRange_in_entryRulePropertyRange5081);
             iv_rulePropertyRange=rulePropertyRange();
 
             state._fsp--;
 
              current =iv_rulePropertyRange; 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRulePropertyRange5092); 
+            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRulePropertyRange5091); 
 
             }
 
@@ -5496,15 +5502,15 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
             // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:2355:1: (otherlv_0= 'PropertyRange' otherlv_1= '{' otherlv_2= 'minValueConstraint' ( (lv_minValueConstraint_3_0= ruleOclConstraint ) ) otherlv_4= 'maxValueConstraint' ( (lv_maxValueConstraint_5_0= ruleOclConstraint ) ) otherlv_6= '}' )
             // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:2355:3: otherlv_0= 'PropertyRange' otherlv_1= '{' otherlv_2= 'minValueConstraint' ( (lv_minValueConstraint_3_0= ruleOclConstraint ) ) otherlv_4= 'maxValueConstraint' ( (lv_maxValueConstraint_5_0= ruleOclConstraint ) ) otherlv_6= '}'
             {
-            otherlv_0=(Token)match(input,65,FollowSets000.FOLLOW_65_in_rulePropertyRange5129); 
+            otherlv_0=(Token)match(input,65,FollowSets000.FOLLOW_65_in_rulePropertyRange5128); 
 
                 	newLeafNode(otherlv_0, grammarAccess.getPropertyRangeAccess().getPropertyRangeKeyword_0());
                 
-            otherlv_1=(Token)match(input,14,FollowSets000.FOLLOW_14_in_rulePropertyRange5141); 
+            otherlv_1=(Token)match(input,14,FollowSets000.FOLLOW_14_in_rulePropertyRange5140); 
 
                 	newLeafNode(otherlv_1, grammarAccess.getPropertyRangeAccess().getLeftCurlyBracketKeyword_1());
                 
-            otherlv_2=(Token)match(input,66,FollowSets000.FOLLOW_66_in_rulePropertyRange5153); 
+            otherlv_2=(Token)match(input,66,FollowSets000.FOLLOW_66_in_rulePropertyRange5152); 
 
                 	newLeafNode(otherlv_2, grammarAccess.getPropertyRangeAccess().getMinValueConstraintKeyword_2());
                 
@@ -5517,7 +5523,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getPropertyRangeAccess().getMinValueConstraintOclConstraintParserRuleCall_3_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleOclConstraint_in_rulePropertyRange5174);
+            pushFollow(FollowSets000.FOLLOW_ruleOclConstraint_in_rulePropertyRange5173);
             lv_minValueConstraint_3_0=ruleOclConstraint();
 
             state._fsp--;
@@ -5539,7 +5545,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_4=(Token)match(input,67,FollowSets000.FOLLOW_67_in_rulePropertyRange5186); 
+            otherlv_4=(Token)match(input,67,FollowSets000.FOLLOW_67_in_rulePropertyRange5185); 
 
                 	newLeafNode(otherlv_4, grammarAccess.getPropertyRangeAccess().getMaxValueConstraintKeyword_4());
                 
@@ -5552,7 +5558,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getPropertyRangeAccess().getMaxValueConstraintOclConstraintParserRuleCall_5_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleOclConstraint_in_rulePropertyRange5207);
+            pushFollow(FollowSets000.FOLLOW_ruleOclConstraint_in_rulePropertyRange5206);
             lv_maxValueConstraint_5_0=ruleOclConstraint();
 
             state._fsp--;
@@ -5574,7 +5580,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_6=(Token)match(input,22,FollowSets000.FOLLOW_22_in_rulePropertyRange5219); 
+            otherlv_6=(Token)match(input,22,FollowSets000.FOLLOW_22_in_rulePropertyRange5218); 
 
                 	newLeafNode(otherlv_6, grammarAccess.getPropertyRangeAccess().getRightCurlyBracketKeyword_6());
                 
@@ -5611,13 +5617,13 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
             // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:2421:2: iv_ruleSetOfConfigurations= ruleSetOfConfigurations EOF
             {
              newCompositeNode(grammarAccess.getSetOfConfigurationsRule()); 
-            pushFollow(FollowSets000.FOLLOW_ruleSetOfConfigurations_in_entryRuleSetOfConfigurations5255);
+            pushFollow(FollowSets000.FOLLOW_ruleSetOfConfigurations_in_entryRuleSetOfConfigurations5254);
             iv_ruleSetOfConfigurations=ruleSetOfConfigurations();
 
             state._fsp--;
 
              current =iv_ruleSetOfConfigurations; 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleSetOfConfigurations5265); 
+            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleSetOfConfigurations5264); 
 
             }
 
@@ -5659,11 +5665,11 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
             // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:2432:1: (otherlv_0= 'SetOfConfigurations' otherlv_1= '{' (otherlv_2= 'variants' otherlv_3= '(' ( ( ruleEString ) ) (otherlv_5= ',' ( ( ruleEString ) ) )* otherlv_7= ')' )? otherlv_8= 'valueConstraint' ( (lv_valueConstraint_9_0= ruleOclConstraint ) ) otherlv_10= '}' )
             // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:2432:3: otherlv_0= 'SetOfConfigurations' otherlv_1= '{' (otherlv_2= 'variants' otherlv_3= '(' ( ( ruleEString ) ) (otherlv_5= ',' ( ( ruleEString ) ) )* otherlv_7= ')' )? otherlv_8= 'valueConstraint' ( (lv_valueConstraint_9_0= ruleOclConstraint ) ) otherlv_10= '}'
             {
-            otherlv_0=(Token)match(input,68,FollowSets000.FOLLOW_68_in_ruleSetOfConfigurations5302); 
+            otherlv_0=(Token)match(input,68,FollowSets000.FOLLOW_68_in_ruleSetOfConfigurations5301); 
 
                 	newLeafNode(otherlv_0, grammarAccess.getSetOfConfigurationsAccess().getSetOfConfigurationsKeyword_0());
                 
-            otherlv_1=(Token)match(input,14,FollowSets000.FOLLOW_14_in_ruleSetOfConfigurations5314); 
+            otherlv_1=(Token)match(input,14,FollowSets000.FOLLOW_14_in_ruleSetOfConfigurations5313); 
 
                 	newLeafNode(otherlv_1, grammarAccess.getSetOfConfigurationsAccess().getLeftCurlyBracketKeyword_1());
                 
@@ -5678,11 +5684,11 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                 case 1 :
                     // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:2440:3: otherlv_2= 'variants' otherlv_3= '(' ( ( ruleEString ) ) (otherlv_5= ',' ( ( ruleEString ) ) )* otherlv_7= ')'
                     {
-                    otherlv_2=(Token)match(input,69,FollowSets000.FOLLOW_69_in_ruleSetOfConfigurations5327); 
+                    otherlv_2=(Token)match(input,69,FollowSets000.FOLLOW_69_in_ruleSetOfConfigurations5326); 
 
                         	newLeafNode(otherlv_2, grammarAccess.getSetOfConfigurationsAccess().getVariantsKeyword_2_0());
                         
-                    otherlv_3=(Token)match(input,27,FollowSets000.FOLLOW_27_in_ruleSetOfConfigurations5339); 
+                    otherlv_3=(Token)match(input,27,FollowSets000.FOLLOW_27_in_ruleSetOfConfigurations5338); 
 
                         	newLeafNode(otherlv_3, grammarAccess.getSetOfConfigurationsAccess().getLeftParenthesisKeyword_2_1());
                         
@@ -5700,7 +5706,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                      
                     	        newCompositeNode(grammarAccess.getSetOfConfigurationsAccess().getVariantsEntityCrossReference_2_2_0()); 
                     	    
-                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleSetOfConfigurations5362);
+                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleSetOfConfigurations5361);
                     ruleEString();
 
                     state._fsp--;
@@ -5729,7 +5735,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                     	case 1 :
                     	    // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:2463:4: otherlv_5= ',' ( ( ruleEString ) )
                     	    {
-                    	    otherlv_5=(Token)match(input,17,FollowSets000.FOLLOW_17_in_ruleSetOfConfigurations5375); 
+                    	    otherlv_5=(Token)match(input,17,FollowSets000.FOLLOW_17_in_ruleSetOfConfigurations5374); 
 
                     	        	newLeafNode(otherlv_5, grammarAccess.getSetOfConfigurationsAccess().getCommaKeyword_2_3_0());
                     	        
@@ -5747,7 +5753,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                     	     
                     	    	        newCompositeNode(grammarAccess.getSetOfConfigurationsAccess().getVariantsEntityCrossReference_2_3_1_0()); 
                     	    	    
-                    	    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleSetOfConfigurations5398);
+                    	    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleSetOfConfigurations5397);
                     	    ruleEString();
 
                     	    state._fsp--;
@@ -5770,7 +5776,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                         }
                     } while (true);
 
-                    otherlv_7=(Token)match(input,28,FollowSets000.FOLLOW_28_in_ruleSetOfConfigurations5412); 
+                    otherlv_7=(Token)match(input,28,FollowSets000.FOLLOW_28_in_ruleSetOfConfigurations5411); 
 
                         	newLeafNode(otherlv_7, grammarAccess.getSetOfConfigurationsAccess().getRightParenthesisKeyword_2_4());
                         
@@ -5780,7 +5786,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_8=(Token)match(input,70,FollowSets000.FOLLOW_70_in_ruleSetOfConfigurations5426); 
+            otherlv_8=(Token)match(input,70,FollowSets000.FOLLOW_70_in_ruleSetOfConfigurations5425); 
 
                 	newLeafNode(otherlv_8, grammarAccess.getSetOfConfigurationsAccess().getValueConstraintKeyword_3());
                 
@@ -5793,7 +5799,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getSetOfConfigurationsAccess().getValueConstraintOclConstraintParserRuleCall_4_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleOclConstraint_in_ruleSetOfConfigurations5447);
+            pushFollow(FollowSets000.FOLLOW_ruleOclConstraint_in_ruleSetOfConfigurations5446);
             lv_valueConstraint_9_0=ruleOclConstraint();
 
             state._fsp--;
@@ -5815,7 +5821,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_10=(Token)match(input,22,FollowSets000.FOLLOW_22_in_ruleSetOfConfigurations5459); 
+            otherlv_10=(Token)match(input,22,FollowSets000.FOLLOW_22_in_ruleSetOfConfigurations5458); 
 
                 	newLeafNode(otherlv_10, grammarAccess.getSetOfConfigurationsAccess().getRightCurlyBracketKeyword_5());
                 
@@ -5852,13 +5858,13 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
             // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:2522:2: iv_ruleOclConstraint= ruleOclConstraint EOF
             {
              newCompositeNode(grammarAccess.getOclConstraintRule()); 
-            pushFollow(FollowSets000.FOLLOW_ruleOclConstraint_in_entryRuleOclConstraint5495);
+            pushFollow(FollowSets000.FOLLOW_ruleOclConstraint_in_entryRuleOclConstraint5494);
             iv_ruleOclConstraint=ruleOclConstraint();
 
             state._fsp--;
 
              current =iv_ruleOclConstraint; 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleOclConstraint5505); 
+            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleOclConstraint5504); 
 
             }
 
@@ -5898,7 +5904,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
             // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:2533:1: (otherlv_0= 'OclConstraint' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' otherlv_3= 'oclString' ( (lv_oclString_4_0= ruleEString ) ) otherlv_5= '}' )
             // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:2533:3: otherlv_0= 'OclConstraint' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' otherlv_3= 'oclString' ( (lv_oclString_4_0= ruleEString ) ) otherlv_5= '}'
             {
-            otherlv_0=(Token)match(input,71,FollowSets000.FOLLOW_71_in_ruleOclConstraint5542); 
+            otherlv_0=(Token)match(input,71,FollowSets000.FOLLOW_71_in_ruleOclConstraint5541); 
 
                 	newLeafNode(otherlv_0, grammarAccess.getOclConstraintAccess().getOclConstraintKeyword_0());
                 
@@ -5911,7 +5917,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getOclConstraintAccess().getNameEStringParserRuleCall_1_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleOclConstraint5563);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleOclConstraint5562);
             lv_name_1_0=ruleEString();
 
             state._fsp--;
@@ -5933,11 +5939,11 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_2=(Token)match(input,14,FollowSets000.FOLLOW_14_in_ruleOclConstraint5575); 
+            otherlv_2=(Token)match(input,14,FollowSets000.FOLLOW_14_in_ruleOclConstraint5574); 
 
                 	newLeafNode(otherlv_2, grammarAccess.getOclConstraintAccess().getLeftCurlyBracketKeyword_2());
                 
-            otherlv_3=(Token)match(input,72,FollowSets000.FOLLOW_72_in_ruleOclConstraint5587); 
+            otherlv_3=(Token)match(input,72,FollowSets000.FOLLOW_72_in_ruleOclConstraint5586); 
 
                 	newLeafNode(otherlv_3, grammarAccess.getOclConstraintAccess().getOclStringKeyword_3());
                 
@@ -5950,7 +5956,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getOclConstraintAccess().getOclStringEStringParserRuleCall_4_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleOclConstraint5608);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleOclConstraint5607);
             lv_oclString_4_0=ruleEString();
 
             state._fsp--;
@@ -5972,7 +5978,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_5=(Token)match(input,22,FollowSets000.FOLLOW_22_in_ruleOclConstraint5620); 
+            otherlv_5=(Token)match(input,22,FollowSets000.FOLLOW_22_in_ruleOclConstraint5619); 
 
                 	newLeafNode(otherlv_5, grammarAccess.getOclConstraintAccess().getRightCurlyBracketKeyword_5());
                 
@@ -6009,13 +6015,13 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
             // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:2595:2: iv_ruleObjective= ruleObjective EOF
             {
              newCompositeNode(grammarAccess.getObjectiveRule()); 
-            pushFollow(FollowSets000.FOLLOW_ruleObjective_in_entryRuleObjective5656);
+            pushFollow(FollowSets000.FOLLOW_ruleObjective_in_entryRuleObjective5655);
             iv_ruleObjective=ruleObjective();
 
             state._fsp--;
 
              current =iv_ruleObjective; 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleObjective5666); 
+            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleObjective5665); 
 
             }
 
@@ -6075,7 +6081,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getObjectiveAccess().getNameEStringParserRuleCall_0_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleObjective5712);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleObjective5711);
             lv_name_0_0=ruleEString();
 
             state._fsp--;
@@ -6108,7 +6114,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                 case 1 :
                     // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:2624:4: otherlv_1= '[id:' ( (lv_id_2_0= ruleEString ) ) otherlv_3= ']'
                     {
-                    otherlv_1=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleObjective5725); 
+                    otherlv_1=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleObjective5724); 
 
                         	newLeafNode(otherlv_1, grammarAccess.getObjectiveAccess().getIdKeyword_1_0());
                         
@@ -6121,7 +6127,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                      
                     	        newCompositeNode(grammarAccess.getObjectiveAccess().getIdEStringParserRuleCall_1_1_0()); 
                     	    
-                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleObjective5746);
+                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleObjective5745);
                     lv_id_2_0=ruleEString();
 
                     state._fsp--;
@@ -6143,7 +6149,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
                     }
 
-                    otherlv_3=(Token)match(input,13,FollowSets000.FOLLOW_13_in_ruleObjective5758); 
+                    otherlv_3=(Token)match(input,13,FollowSets000.FOLLOW_13_in_ruleObjective5757); 
 
                         	newLeafNode(otherlv_3, grammarAccess.getObjectiveAccess().getRightSquareBracketKeyword_1_2());
                         
@@ -6153,15 +6159,15 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_4=(Token)match(input,14,FollowSets000.FOLLOW_14_in_ruleObjective5772); 
+            otherlv_4=(Token)match(input,14,FollowSets000.FOLLOW_14_in_ruleObjective5771); 
 
                 	newLeafNode(otherlv_4, grammarAccess.getObjectiveAccess().getLeftCurlyBracketKeyword_2());
                 
-            otherlv_5=(Token)match(input,73,FollowSets000.FOLLOW_73_in_ruleObjective5784); 
+            otherlv_5=(Token)match(input,73,FollowSets000.FOLLOW_73_in_ruleObjective5783); 
 
                 	newLeafNode(otherlv_5, grammarAccess.getObjectiveAccess().getSpecificationKeyword_3());
                 
-            otherlv_6=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleObjective5796); 
+            otherlv_6=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleObjective5795); 
 
                 	newLeafNode(otherlv_6, grammarAccess.getObjectiveAccess().getEqualsSignKeyword_4());
                 
@@ -6178,7 +6184,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                 if ( (LA49_2==27||LA49_2==80) ) {
                     alt49=2;
                 }
-                else if ( ((LA49_2>=RULE_ID && LA49_2<=RULE_STRING)||LA49_2==81) ) {
+                else if ( ((LA49_2>=RULE_STRING && LA49_2<=RULE_ID)||LA49_2==81) ) {
                     alt49=1;
                 }
                 else {
@@ -6207,7 +6213,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                      
                     	        newCompositeNode(grammarAccess.getObjectiveAccess().getSpecificationsSpecificationParserRuleCall_5_0_0()); 
                     	    
-                    pushFollow(FollowSets000.FOLLOW_ruleSpecification_in_ruleObjective5818);
+                    pushFollow(FollowSets000.FOLLOW_ruleSpecification_in_ruleObjective5817);
                     lv_specifications_7_0=ruleSpecification();
 
                     state._fsp--;
@@ -6238,7 +6244,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                     // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:2681:6: (otherlv_8= '(' ( (lv_specifications_9_0= ruleSpecification ) ) (otherlv_10= ',' ( (lv_specifications_11_0= ruleSpecification ) ) )* otherlv_12= ')' )
                     // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:2681:8: otherlv_8= '(' ( (lv_specifications_9_0= ruleSpecification ) ) (otherlv_10= ',' ( (lv_specifications_11_0= ruleSpecification ) ) )* otherlv_12= ')'
                     {
-                    otherlv_8=(Token)match(input,27,FollowSets000.FOLLOW_27_in_ruleObjective5837); 
+                    otherlv_8=(Token)match(input,27,FollowSets000.FOLLOW_27_in_ruleObjective5836); 
 
                         	newLeafNode(otherlv_8, grammarAccess.getObjectiveAccess().getLeftParenthesisKeyword_5_1_0());
                         
@@ -6251,7 +6257,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                      
                     	        newCompositeNode(grammarAccess.getObjectiveAccess().getSpecificationsSpecificationParserRuleCall_5_1_1_0()); 
                     	    
-                    pushFollow(FollowSets000.FOLLOW_ruleSpecification_in_ruleObjective5858);
+                    pushFollow(FollowSets000.FOLLOW_ruleSpecification_in_ruleObjective5857);
                     lv_specifications_9_0=ruleSpecification();
 
                     state._fsp--;
@@ -6288,7 +6294,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                     	case 1 :
                     	    // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:2703:4: otherlv_10= ',' ( (lv_specifications_11_0= ruleSpecification ) )
                     	    {
-                    	    otherlv_10=(Token)match(input,17,FollowSets000.FOLLOW_17_in_ruleObjective5871); 
+                    	    otherlv_10=(Token)match(input,17,FollowSets000.FOLLOW_17_in_ruleObjective5870); 
 
                     	        	newLeafNode(otherlv_10, grammarAccess.getObjectiveAccess().getCommaKeyword_5_1_2_0());
                     	        
@@ -6301,7 +6307,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                     	     
                     	    	        newCompositeNode(grammarAccess.getObjectiveAccess().getSpecificationsSpecificationParserRuleCall_5_1_2_1_0()); 
                     	    	    
-                    	    pushFollow(FollowSets000.FOLLOW_ruleSpecification_in_ruleObjective5892);
+                    	    pushFollow(FollowSets000.FOLLOW_ruleSpecification_in_ruleObjective5891);
                     	    lv_specifications_11_0=ruleSpecification();
 
                     	    state._fsp--;
@@ -6332,7 +6338,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                         }
                     } while (true);
 
-                    otherlv_12=(Token)match(input,28,FollowSets000.FOLLOW_28_in_ruleObjective5906); 
+                    otherlv_12=(Token)match(input,28,FollowSets000.FOLLOW_28_in_ruleObjective5905); 
 
                         	newLeafNode(otherlv_12, grammarAccess.getObjectiveAccess().getRightParenthesisKeyword_5_1_3());
                         
@@ -6345,7 +6351,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_13=(Token)match(input,22,FollowSets000.FOLLOW_22_in_ruleObjective5920); 
+            otherlv_13=(Token)match(input,22,FollowSets000.FOLLOW_22_in_ruleObjective5919); 
 
                 	newLeafNode(otherlv_13, grammarAccess.getObjectiveAccess().getRightCurlyBracketKeyword_6());
                 
@@ -6382,13 +6388,13 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
             // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:2743:2: iv_ruleEvent= ruleEvent EOF
             {
              newCompositeNode(grammarAccess.getEventRule()); 
-            pushFollow(FollowSets000.FOLLOW_ruleEvent_in_entryRuleEvent5956);
+            pushFollow(FollowSets000.FOLLOW_ruleEvent_in_entryRuleEvent5955);
             iv_ruleEvent=ruleEvent();
 
             state._fsp--;
 
              current =iv_ruleEvent; 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleEvent5966); 
+            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleEvent5965); 
 
             }
 
@@ -6435,7 +6441,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getEventAccess().getNameEStringParserRuleCall_0_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleEvent6012);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleEvent6011);
             lv_name_0_0=ruleEString();
 
             state._fsp--;
@@ -6468,7 +6474,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                 case 1 :
                     // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:2772:4: otherlv_1= '[id:' ( (lv_id_2_0= ruleEString ) ) otherlv_3= ']'
                     {
-                    otherlv_1=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleEvent6025); 
+                    otherlv_1=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleEvent6024); 
 
                         	newLeafNode(otherlv_1, grammarAccess.getEventAccess().getIdKeyword_1_0());
                         
@@ -6481,7 +6487,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                      
                     	        newCompositeNode(grammarAccess.getEventAccess().getIdEStringParserRuleCall_1_1_0()); 
                     	    
-                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleEvent6046);
+                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleEvent6045);
                     lv_id_2_0=ruleEString();
 
                     state._fsp--;
@@ -6503,7 +6509,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
                     }
 
-                    otherlv_3=(Token)match(input,13,FollowSets000.FOLLOW_13_in_ruleEvent6058); 
+                    otherlv_3=(Token)match(input,13,FollowSets000.FOLLOW_13_in_ruleEvent6057); 
 
                         	newLeafNode(otherlv_3, grammarAccess.getEventAccess().getRightSquareBracketKeyword_1_2());
                         
@@ -6546,13 +6552,13 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
             // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:2808:2: iv_ruleWeightedTactic= ruleWeightedTactic EOF
             {
              newCompositeNode(grammarAccess.getWeightedTacticRule()); 
-            pushFollow(FollowSets000.FOLLOW_ruleWeightedTactic_in_entryRuleWeightedTactic6096);
+            pushFollow(FollowSets000.FOLLOW_ruleWeightedTactic_in_entryRuleWeightedTactic6095);
             iv_ruleWeightedTactic=ruleWeightedTactic();
 
             state._fsp--;
 
              current =iv_ruleWeightedTactic; 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleWeightedTactic6106); 
+            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleWeightedTactic6105); 
 
             }
 
@@ -6617,7 +6623,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getWeightedTacticAccess().getNameEStringParserRuleCall_0_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleWeightedTactic6152);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleWeightedTactic6151);
             lv_name_0_0=ruleEString();
 
             state._fsp--;
@@ -6650,7 +6656,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                 case 1 :
                     // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:2837:4: otherlv_1= '[id:' ( (lv_id_2_0= ruleEString ) ) otherlv_3= ']'
                     {
-                    otherlv_1=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleWeightedTactic6165); 
+                    otherlv_1=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleWeightedTactic6164); 
 
                         	newLeafNode(otherlv_1, grammarAccess.getWeightedTacticAccess().getIdKeyword_1_0());
                         
@@ -6663,7 +6669,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                      
                     	        newCompositeNode(grammarAccess.getWeightedTacticAccess().getIdEStringParserRuleCall_1_1_0()); 
                     	    
-                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleWeightedTactic6186);
+                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleWeightedTactic6185);
                     lv_id_2_0=ruleEString();
 
                     state._fsp--;
@@ -6685,7 +6691,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
                     }
 
-                    otherlv_3=(Token)match(input,13,FollowSets000.FOLLOW_13_in_ruleWeightedTactic6198); 
+                    otherlv_3=(Token)match(input,13,FollowSets000.FOLLOW_13_in_ruleWeightedTactic6197); 
 
                         	newLeafNode(otherlv_3, grammarAccess.getWeightedTacticAccess().getRightSquareBracketKeyword_1_2());
                         
@@ -6695,11 +6701,11 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_4=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleWeightedTactic6212); 
+            otherlv_4=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleWeightedTactic6211); 
 
                 	newLeafNode(otherlv_4, grammarAccess.getWeightedTacticAccess().getEqualsSignKeyword_2());
                 
-            otherlv_5=(Token)match(input,27,FollowSets000.FOLLOW_27_in_ruleWeightedTactic6224); 
+            otherlv_5=(Token)match(input,27,FollowSets000.FOLLOW_27_in_ruleWeightedTactic6223); 
 
                 	newLeafNode(otherlv_5, grammarAccess.getWeightedTacticAccess().getLeftParenthesisKeyword_3());
                 
@@ -6714,11 +6720,11 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                 case 1 :
                     // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:2871:3: otherlv_6= 'tactic' otherlv_7= '='
                     {
-                    otherlv_6=(Token)match(input,74,FollowSets000.FOLLOW_74_in_ruleWeightedTactic6237); 
+                    otherlv_6=(Token)match(input,74,FollowSets000.FOLLOW_74_in_ruleWeightedTactic6236); 
 
                         	newLeafNode(otherlv_6, grammarAccess.getWeightedTacticAccess().getTacticKeyword_4_0());
                         
-                    otherlv_7=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleWeightedTactic6249); 
+                    otherlv_7=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleWeightedTactic6248); 
 
                         	newLeafNode(otherlv_7, grammarAccess.getWeightedTacticAccess().getEqualsSignKeyword_4_1());
                         
@@ -6742,7 +6748,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getWeightedTacticAccess().getUsedTacticTacticCrossReference_5_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleWeightedTactic6274);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleWeightedTactic6273);
             ruleEString();
 
             state._fsp--;
@@ -6756,7 +6762,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_9=(Token)match(input,17,FollowSets000.FOLLOW_17_in_ruleWeightedTactic6286); 
+            otherlv_9=(Token)match(input,17,FollowSets000.FOLLOW_17_in_ruleWeightedTactic6285); 
 
                 	newLeafNode(otherlv_9, grammarAccess.getWeightedTacticAccess().getCommaKeyword_6());
                 
@@ -6771,11 +6777,11 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                 case 1 :
                     // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:2898:3: otherlv_10= 'default' otherlv_11= '='
                     {
-                    otherlv_10=(Token)match(input,75,FollowSets000.FOLLOW_75_in_ruleWeightedTactic6299); 
+                    otherlv_10=(Token)match(input,75,FollowSets000.FOLLOW_75_in_ruleWeightedTactic6298); 
 
                         	newLeafNode(otherlv_10, grammarAccess.getWeightedTacticAccess().getDefaultKeyword_7_0());
                         
-                    otherlv_11=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleWeightedTactic6311); 
+                    otherlv_11=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleWeightedTactic6310); 
 
                         	newLeafNode(otherlv_11, grammarAccess.getWeightedTacticAccess().getEqualsSignKeyword_7_1());
                         
@@ -6794,7 +6800,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getWeightedTacticAccess().getDefaultWeightEDoubleParserRuleCall_8_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleEDouble_in_ruleWeightedTactic6334);
+            pushFollow(FollowSets000.FOLLOW_ruleEDouble_in_ruleWeightedTactic6333);
             lv_defaultWeight_12_0=ruleEDouble();
 
             state._fsp--;
@@ -6816,7 +6822,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_13=(Token)match(input,17,FollowSets000.FOLLOW_17_in_ruleWeightedTactic6346); 
+            otherlv_13=(Token)match(input,17,FollowSets000.FOLLOW_17_in_ruleWeightedTactic6345); 
 
                 	newLeafNode(otherlv_13, grammarAccess.getWeightedTacticAccess().getCommaKeyword_9());
                 
@@ -6831,11 +6837,11 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                 case 1 :
                     // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:2928:3: otherlv_14= 'current' otherlv_15= '='
                     {
-                    otherlv_14=(Token)match(input,76,FollowSets000.FOLLOW_76_in_ruleWeightedTactic6359); 
+                    otherlv_14=(Token)match(input,76,FollowSets000.FOLLOW_76_in_ruleWeightedTactic6358); 
 
                         	newLeafNode(otherlv_14, grammarAccess.getWeightedTacticAccess().getCurrentKeyword_10_0());
                         
-                    otherlv_15=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleWeightedTactic6371); 
+                    otherlv_15=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleWeightedTactic6370); 
 
                         	newLeafNode(otherlv_15, grammarAccess.getWeightedTacticAccess().getEqualsSignKeyword_10_1());
                         
@@ -6854,7 +6860,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getWeightedTacticAccess().getCurrentWeightEDoubleParserRuleCall_11_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleEDouble_in_ruleWeightedTactic6394);
+            pushFollow(FollowSets000.FOLLOW_ruleEDouble_in_ruleWeightedTactic6393);
             lv_currentWeight_16_0=ruleEDouble();
 
             state._fsp--;
@@ -6887,7 +6893,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                 case 1 :
                     // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:2954:4: otherlv_17= ',' (otherlv_18= 'lastImpact' otherlv_19= '=' )? ( ( ruleEString ) )
                     {
-                    otherlv_17=(Token)match(input,17,FollowSets000.FOLLOW_17_in_ruleWeightedTactic6407); 
+                    otherlv_17=(Token)match(input,17,FollowSets000.FOLLOW_17_in_ruleWeightedTactic6406); 
 
                         	newLeafNode(otherlv_17, grammarAccess.getWeightedTacticAccess().getCommaKeyword_12_0());
                         
@@ -6902,11 +6908,11 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                         case 1 :
                             // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:2958:3: otherlv_18= 'lastImpact' otherlv_19= '='
                             {
-                            otherlv_18=(Token)match(input,77,FollowSets000.FOLLOW_77_in_ruleWeightedTactic6420); 
+                            otherlv_18=(Token)match(input,77,FollowSets000.FOLLOW_77_in_ruleWeightedTactic6419); 
 
                                 	newLeafNode(otherlv_18, grammarAccess.getWeightedTacticAccess().getLastImpactKeyword_12_1_0());
                                 
-                            otherlv_19=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleWeightedTactic6432); 
+                            otherlv_19=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleWeightedTactic6431); 
 
                                 	newLeafNode(otherlv_19, grammarAccess.getWeightedTacticAccess().getEqualsSignKeyword_12_1_1());
                                 
@@ -6930,7 +6936,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                      
                     	        newCompositeNode(grammarAccess.getWeightedTacticAccess().getLastImpactImpactCrossReference_12_2_0()); 
                     	    
-                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleWeightedTactic6457);
+                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleWeightedTactic6456);
                     ruleEString();
 
                     state._fsp--;
@@ -6950,7 +6956,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_21=(Token)match(input,28,FollowSets000.FOLLOW_28_in_ruleWeightedTactic6471); 
+            otherlv_21=(Token)match(input,28,FollowSets000.FOLLOW_28_in_ruleWeightedTactic6470); 
 
                 	newLeafNode(otherlv_21, grammarAccess.getWeightedTacticAccess().getRightParenthesisKeyword_13());
                 
@@ -6987,13 +6993,13 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
             // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:2995:2: iv_ruleWeightingFunction= ruleWeightingFunction EOF
             {
              newCompositeNode(grammarAccess.getWeightingFunctionRule()); 
-            pushFollow(FollowSets000.FOLLOW_ruleWeightingFunction_in_entryRuleWeightingFunction6507);
+            pushFollow(FollowSets000.FOLLOW_ruleWeightingFunction_in_entryRuleWeightingFunction6506);
             iv_ruleWeightingFunction=ruleWeightingFunction();
 
             state._fsp--;
 
              current =iv_ruleWeightingFunction; 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleWeightingFunction6517); 
+            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleWeightingFunction6516); 
 
             }
 
@@ -7056,7 +7062,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getWeightingFunctionAccess().getNameEStringParserRuleCall_0_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleWeightingFunction6563);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleWeightingFunction6562);
             lv_name_0_0=ruleEString();
 
             state._fsp--;
@@ -7089,7 +7095,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                 case 1 :
                     // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:3024:4: otherlv_1= '[id:' ( (lv_id_2_0= ruleEString ) ) otherlv_3= ']'
                     {
-                    otherlv_1=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleWeightingFunction6576); 
+                    otherlv_1=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleWeightingFunction6575); 
 
                         	newLeafNode(otherlv_1, grammarAccess.getWeightingFunctionAccess().getIdKeyword_1_0());
                         
@@ -7102,7 +7108,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                      
                     	        newCompositeNode(grammarAccess.getWeightingFunctionAccess().getIdEStringParserRuleCall_1_1_0()); 
                     	    
-                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleWeightingFunction6597);
+                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleWeightingFunction6596);
                     lv_id_2_0=ruleEString();
 
                     state._fsp--;
@@ -7124,7 +7130,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
                     }
 
-                    otherlv_3=(Token)match(input,13,FollowSets000.FOLLOW_13_in_ruleWeightingFunction6609); 
+                    otherlv_3=(Token)match(input,13,FollowSets000.FOLLOW_13_in_ruleWeightingFunction6608); 
 
                         	newLeafNode(otherlv_3, grammarAccess.getWeightingFunctionAccess().getRightSquareBracketKeyword_1_2());
                         
@@ -7134,19 +7140,19 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_4=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleWeightingFunction6623); 
+            otherlv_4=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleWeightingFunction6622); 
 
                 	newLeafNode(otherlv_4, grammarAccess.getWeightingFunctionAccess().getEqualsSignKeyword_2());
                 
-            otherlv_5=(Token)match(input,27,FollowSets000.FOLLOW_27_in_ruleWeightingFunction6635); 
+            otherlv_5=(Token)match(input,27,FollowSets000.FOLLOW_27_in_ruleWeightingFunction6634); 
 
                 	newLeafNode(otherlv_5, grammarAccess.getWeightingFunctionAccess().getLeftParenthesisKeyword_3());
                 
-            otherlv_6=(Token)match(input,78,FollowSets000.FOLLOW_78_in_ruleWeightingFunction6647); 
+            otherlv_6=(Token)match(input,78,FollowSets000.FOLLOW_78_in_ruleWeightingFunction6646); 
 
                 	newLeafNode(otherlv_6, grammarAccess.getWeightingFunctionAccess().getWeightingFunctionImplementationKeyword_4());
                 
-            otherlv_7=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleWeightingFunction6659); 
+            otherlv_7=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleWeightingFunction6658); 
 
                 	newLeafNode(otherlv_7, grammarAccess.getWeightingFunctionAccess().getEqualsSignKeyword_5());
                 
@@ -7159,7 +7165,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getWeightingFunctionAccess().getWeightingFunctionImplementationEStringParserRuleCall_6_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleWeightingFunction6680);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleWeightingFunction6679);
             lv_weightingFunctionImplementation_8_0=ruleEString();
 
             state._fsp--;
@@ -7181,15 +7187,15 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_9=(Token)match(input,79,FollowSets000.FOLLOW_79_in_ruleWeightingFunction6692); 
+            otherlv_9=(Token)match(input,79,FollowSets000.FOLLOW_79_in_ruleWeightingFunction6691); 
 
                 	newLeafNode(otherlv_9, grammarAccess.getWeightingFunctionAccess().getWeightedMetricsKeyword_7());
                 
-            otherlv_10=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleWeightingFunction6704); 
+            otherlv_10=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleWeightingFunction6703); 
 
                 	newLeafNode(otherlv_10, grammarAccess.getWeightingFunctionAccess().getEqualsSignKeyword_8());
                 
-            otherlv_11=(Token)match(input,27,FollowSets000.FOLLOW_27_in_ruleWeightingFunction6716); 
+            otherlv_11=(Token)match(input,27,FollowSets000.FOLLOW_27_in_ruleWeightingFunction6715); 
 
                 	newLeafNode(otherlv_11, grammarAccess.getWeightingFunctionAccess().getLeftParenthesisKeyword_9());
                 
@@ -7202,7 +7208,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getWeightingFunctionAccess().getWeightedMetricsWeightedMetricParserRuleCall_10_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleWeightedMetric_in_ruleWeightingFunction6737);
+            pushFollow(FollowSets000.FOLLOW_ruleWeightedMetric_in_ruleWeightingFunction6736);
             lv_weightedMetrics_12_0=ruleWeightedMetric();
 
             state._fsp--;
@@ -7239,7 +7245,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
             	case 1 :
             	    // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:3114:4: otherlv_13= ',' ( (lv_weightedMetrics_14_0= ruleWeightedMetric ) )
             	    {
-            	    otherlv_13=(Token)match(input,17,FollowSets000.FOLLOW_17_in_ruleWeightingFunction6750); 
+            	    otherlv_13=(Token)match(input,17,FollowSets000.FOLLOW_17_in_ruleWeightingFunction6749); 
 
             	        	newLeafNode(otherlv_13, grammarAccess.getWeightingFunctionAccess().getCommaKeyword_11_0());
             	        
@@ -7252,7 +7258,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
             	     
             	    	        newCompositeNode(grammarAccess.getWeightingFunctionAccess().getWeightedMetricsWeightedMetricParserRuleCall_11_1_0()); 
             	    	    
-            	    pushFollow(FollowSets000.FOLLOW_ruleWeightedMetric_in_ruleWeightingFunction6771);
+            	    pushFollow(FollowSets000.FOLLOW_ruleWeightedMetric_in_ruleWeightingFunction6770);
             	    lv_weightedMetrics_14_0=ruleWeightedMetric();
 
             	    state._fsp--;
@@ -7283,11 +7289,11 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                 }
             } while (true);
 
-            otherlv_15=(Token)match(input,28,FollowSets000.FOLLOW_28_in_ruleWeightingFunction6785); 
+            otherlv_15=(Token)match(input,28,FollowSets000.FOLLOW_28_in_ruleWeightingFunction6784); 
 
                 	newLeafNode(otherlv_15, grammarAccess.getWeightingFunctionAccess().getRightParenthesisKeyword_12());
                 
-            otherlv_16=(Token)match(input,28,FollowSets000.FOLLOW_28_in_ruleWeightingFunction6797); 
+            otherlv_16=(Token)match(input,28,FollowSets000.FOLLOW_28_in_ruleWeightingFunction6796); 
 
                 	newLeafNode(otherlv_16, grammarAccess.getWeightingFunctionAccess().getRightParenthesisKeyword_13());
                 
@@ -7324,13 +7330,13 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
             // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:3154:2: iv_ruleSpecification= ruleSpecification EOF
             {
              newCompositeNode(grammarAccess.getSpecificationRule()); 
-            pushFollow(FollowSets000.FOLLOW_ruleSpecification_in_entryRuleSpecification6833);
+            pushFollow(FollowSets000.FOLLOW_ruleSpecification_in_entryRuleSpecification6832);
             iv_ruleSpecification=ruleSpecification();
 
             state._fsp--;
 
              current =iv_ruleSpecification; 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleSpecification6843); 
+            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleSpecification6842); 
 
             }
 
@@ -7385,7 +7391,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                 case 1 :
                     // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:3165:4: otherlv_0= 'Specification'
                     {
-                    otherlv_0=(Token)match(input,80,FollowSets000.FOLLOW_80_in_ruleSpecification6881); 
+                    otherlv_0=(Token)match(input,80,FollowSets000.FOLLOW_80_in_ruleSpecification6880); 
 
                         	newLeafNode(otherlv_0, grammarAccess.getSpecificationAccess().getSpecificationKeyword_0());
                         
@@ -7395,7 +7401,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_1=(Token)match(input,27,FollowSets000.FOLLOW_27_in_ruleSpecification6895); 
+            otherlv_1=(Token)match(input,27,FollowSets000.FOLLOW_27_in_ruleSpecification6894); 
 
                 	newLeafNode(otherlv_1, grammarAccess.getSpecificationAccess().getLeftParenthesisKeyword_1());
                 
@@ -7410,7 +7416,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                 case 1 :
                     // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:3173:3: otherlv_2= 'metricType'
                     {
-                    otherlv_2=(Token)match(input,81,FollowSets000.FOLLOW_81_in_ruleSpecification6908); 
+                    otherlv_2=(Token)match(input,81,FollowSets000.FOLLOW_81_in_ruleSpecification6907); 
 
                         	newLeafNode(otherlv_2, grammarAccess.getSpecificationAccess().getMetricTypeKeyword_2());
                         
@@ -7434,7 +7440,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getSpecificationAccess().getMetricTypeMetricTypeCrossReference_3_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleSpecification6933);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleSpecification6932);
             ruleEString();
 
             state._fsp--;
@@ -7448,7 +7454,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_4=(Token)match(input,17,FollowSets000.FOLLOW_17_in_ruleSpecification6945); 
+            otherlv_4=(Token)match(input,17,FollowSets000.FOLLOW_17_in_ruleSpecification6944); 
 
                 	newLeafNode(otherlv_4, grammarAccess.getSpecificationAccess().getCommaKeyword_4());
                 
@@ -7463,7 +7469,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                 case 1 :
                     // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:3196:3: otherlv_5= 'relationalOperator'
                     {
-                    otherlv_5=(Token)match(input,82,FollowSets000.FOLLOW_82_in_ruleSpecification6958); 
+                    otherlv_5=(Token)match(input,82,FollowSets000.FOLLOW_82_in_ruleSpecification6957); 
 
                         	newLeafNode(otherlv_5, grammarAccess.getSpecificationAccess().getRelationalOperatorKeyword_5());
                         
@@ -7482,7 +7488,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getSpecificationAccess().getRelationalOperatorRelationalOperatorEnumRuleCall_6_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleRelationalOperator_in_ruleSpecification6981);
+            pushFollow(FollowSets000.FOLLOW_ruleRelationalOperator_in_ruleSpecification6980);
             lv_relationalOperator_6_0=ruleRelationalOperator();
 
             state._fsp--;
@@ -7504,7 +7510,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_7=(Token)match(input,17,FollowSets000.FOLLOW_17_in_ruleSpecification6993); 
+            otherlv_7=(Token)match(input,17,FollowSets000.FOLLOW_17_in_ruleSpecification6992); 
 
                 	newLeafNode(otherlv_7, grammarAccess.getSpecificationAccess().getCommaKeyword_7());
                 
@@ -7519,7 +7525,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                 case 1 :
                     // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:3222:3: otherlv_8= 'value'
                     {
-                    otherlv_8=(Token)match(input,37,FollowSets000.FOLLOW_37_in_ruleSpecification7006); 
+                    otherlv_8=(Token)match(input,37,FollowSets000.FOLLOW_37_in_ruleSpecification7005); 
 
                         	newLeafNode(otherlv_8, grammarAccess.getSpecificationAccess().getValueKeyword_8());
                         
@@ -7538,7 +7544,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getSpecificationAccess().getValueEDoubleParserRuleCall_9_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleEDouble_in_ruleSpecification7029);
+            pushFollow(FollowSets000.FOLLOW_ruleEDouble_in_ruleSpecification7028);
             lv_value_9_0=ruleEDouble();
 
             state._fsp--;
@@ -7560,7 +7566,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_10=(Token)match(input,28,FollowSets000.FOLLOW_28_in_ruleSpecification7041); 
+            otherlv_10=(Token)match(input,28,FollowSets000.FOLLOW_28_in_ruleSpecification7040); 
 
                 	newLeafNode(otherlv_10, grammarAccess.getSpecificationAccess().getRightParenthesisKeyword_10());
                 
@@ -7597,13 +7603,13 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
             // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:3264:2: iv_ruleEDate= ruleEDate EOF
             {
              newCompositeNode(grammarAccess.getEDateRule()); 
-            pushFollow(FollowSets000.FOLLOW_ruleEDate_in_entryRuleEDate7084);
+            pushFollow(FollowSets000.FOLLOW_ruleEDate_in_entryRuleEDate7083);
             iv_ruleEDate=ruleEDate();
 
             state._fsp--;
 
              current =iv_ruleEDate.getText(); 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleEDate7095); 
+            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleEDate7094); 
 
             }
 
@@ -7633,7 +7639,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
             // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:3274:28: (kw= 'EDate' )
             // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:3276:2: kw= 'EDate'
             {
-            kw=(Token)match(input,83,FollowSets000.FOLLOW_83_in_ruleEDate7132); 
+            kw=(Token)match(input,83,FollowSets000.FOLLOW_83_in_ruleEDate7131); 
 
                     current.merge(kw);
                     newLeafNode(kw, grammarAccess.getEDateAccess().getEDateKeyword()); 
@@ -7668,13 +7674,13 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
             // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:3291:2: iv_ruleMetricValue= ruleMetricValue EOF
             {
              newCompositeNode(grammarAccess.getMetricValueRule()); 
-            pushFollow(FollowSets000.FOLLOW_ruleMetricValue_in_entryRuleMetricValue7171);
+            pushFollow(FollowSets000.FOLLOW_ruleMetricValue_in_entryRuleMetricValue7170);
             iv_ruleMetricValue=ruleMetricValue();
 
             state._fsp--;
 
              current =iv_ruleMetricValue; 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleMetricValue7181); 
+            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleMetricValue7180); 
 
             }
 
@@ -7720,7 +7726,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
             // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:3302:1: (otherlv_0= 'MetricValue' ( (lv_name_1_0= ruleEString ) ) (otherlv_2= '[id:' ( (lv_id_3_0= ruleEString ) ) otherlv_4= ']' )? otherlv_5= '{' otherlv_6= 'value' ( (lv_value_7_0= ruleEDouble ) ) otherlv_8= 'measuredEntity' ( ( ruleEString ) ) otherlv_10= 'metricType' ( ( ruleEString ) ) otherlv_12= '}' )
             // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:3302:3: otherlv_0= 'MetricValue' ( (lv_name_1_0= ruleEString ) ) (otherlv_2= '[id:' ( (lv_id_3_0= ruleEString ) ) otherlv_4= ']' )? otherlv_5= '{' otherlv_6= 'value' ( (lv_value_7_0= ruleEDouble ) ) otherlv_8= 'measuredEntity' ( ( ruleEString ) ) otherlv_10= 'metricType' ( ( ruleEString ) ) otherlv_12= '}'
             {
-            otherlv_0=(Token)match(input,84,FollowSets000.FOLLOW_84_in_ruleMetricValue7218); 
+            otherlv_0=(Token)match(input,84,FollowSets000.FOLLOW_84_in_ruleMetricValue7217); 
 
                 	newLeafNode(otherlv_0, grammarAccess.getMetricValueAccess().getMetricValueKeyword_0());
                 
@@ -7733,7 +7739,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getMetricValueAccess().getNameEStringParserRuleCall_1_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleMetricValue7239);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleMetricValue7238);
             lv_name_1_0=ruleEString();
 
             state._fsp--;
@@ -7766,7 +7772,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                 case 1 :
                     // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:3324:4: otherlv_2= '[id:' ( (lv_id_3_0= ruleEString ) ) otherlv_4= ']'
                     {
-                    otherlv_2=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleMetricValue7252); 
+                    otherlv_2=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleMetricValue7251); 
 
                         	newLeafNode(otherlv_2, grammarAccess.getMetricValueAccess().getIdKeyword_2_0());
                         
@@ -7779,7 +7785,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                      
                     	        newCompositeNode(grammarAccess.getMetricValueAccess().getIdEStringParserRuleCall_2_1_0()); 
                     	    
-                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleMetricValue7273);
+                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleMetricValue7272);
                     lv_id_3_0=ruleEString();
 
                     state._fsp--;
@@ -7801,7 +7807,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
                     }
 
-                    otherlv_4=(Token)match(input,13,FollowSets000.FOLLOW_13_in_ruleMetricValue7285); 
+                    otherlv_4=(Token)match(input,13,FollowSets000.FOLLOW_13_in_ruleMetricValue7284); 
 
                         	newLeafNode(otherlv_4, grammarAccess.getMetricValueAccess().getRightSquareBracketKeyword_2_2());
                         
@@ -7811,11 +7817,11 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_5=(Token)match(input,14,FollowSets000.FOLLOW_14_in_ruleMetricValue7299); 
+            otherlv_5=(Token)match(input,14,FollowSets000.FOLLOW_14_in_ruleMetricValue7298); 
 
                 	newLeafNode(otherlv_5, grammarAccess.getMetricValueAccess().getLeftCurlyBracketKeyword_3());
                 
-            otherlv_6=(Token)match(input,37,FollowSets000.FOLLOW_37_in_ruleMetricValue7311); 
+            otherlv_6=(Token)match(input,37,FollowSets000.FOLLOW_37_in_ruleMetricValue7310); 
 
                 	newLeafNode(otherlv_6, grammarAccess.getMetricValueAccess().getValueKeyword_4());
                 
@@ -7828,7 +7834,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getMetricValueAccess().getValueEDoubleParserRuleCall_5_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleEDouble_in_ruleMetricValue7332);
+            pushFollow(FollowSets000.FOLLOW_ruleEDouble_in_ruleMetricValue7331);
             lv_value_7_0=ruleEDouble();
 
             state._fsp--;
@@ -7850,7 +7856,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_8=(Token)match(input,85,FollowSets000.FOLLOW_85_in_ruleMetricValue7344); 
+            otherlv_8=(Token)match(input,85,FollowSets000.FOLLOW_85_in_ruleMetricValue7343); 
 
                 	newLeafNode(otherlv_8, grammarAccess.getMetricValueAccess().getMeasuredEntityKeyword_6());
                 
@@ -7868,7 +7874,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getMetricValueAccess().getMeasuredEntityMeasuredEntityCrossReference_7_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleMetricValue7367);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleMetricValue7366);
             ruleEString();
 
             state._fsp--;
@@ -7882,7 +7888,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_10=(Token)match(input,81,FollowSets000.FOLLOW_81_in_ruleMetricValue7379); 
+            otherlv_10=(Token)match(input,81,FollowSets000.FOLLOW_81_in_ruleMetricValue7378); 
 
                 	newLeafNode(otherlv_10, grammarAccess.getMetricValueAccess().getMetricTypeKeyword_8());
                 
@@ -7900,7 +7906,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getMetricValueAccess().getMetricTypeMetricTypeCrossReference_9_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleMetricValue7402);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleMetricValue7401);
             ruleEString();
 
             state._fsp--;
@@ -7914,7 +7920,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_12=(Token)match(input,22,FollowSets000.FOLLOW_22_in_ruleMetricValue7414); 
+            otherlv_12=(Token)match(input,22,FollowSets000.FOLLOW_22_in_ruleMetricValue7413); 
 
                 	newLeafNode(otherlv_12, grammarAccess.getMetricValueAccess().getRightCurlyBracketKeyword_10());
                 
@@ -7951,13 +7957,13 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
             // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:3430:2: iv_ruleWeightedMetric= ruleWeightedMetric EOF
             {
              newCompositeNode(grammarAccess.getWeightedMetricRule()); 
-            pushFollow(FollowSets000.FOLLOW_ruleWeightedMetric_in_entryRuleWeightedMetric7452);
+            pushFollow(FollowSets000.FOLLOW_ruleWeightedMetric_in_entryRuleWeightedMetric7451);
             iv_ruleWeightedMetric=ruleWeightedMetric();
 
             state._fsp--;
 
              current =iv_ruleWeightedMetric; 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleWeightedMetric7462); 
+            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleWeightedMetric7461); 
 
             }
 
@@ -8017,7 +8023,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                 case 1 :
                     // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:3441:4: otherlv_0= 'WeightedMetric'
                     {
-                    otherlv_0=(Token)match(input,86,FollowSets000.FOLLOW_86_in_ruleWeightedMetric7500); 
+                    otherlv_0=(Token)match(input,86,FollowSets000.FOLLOW_86_in_ruleWeightedMetric7499); 
 
                         	newLeafNode(otherlv_0, grammarAccess.getWeightedMetricAccess().getWeightedMetricKeyword_0());
                         
@@ -8036,7 +8042,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getWeightedMetricAccess().getNameEStringParserRuleCall_1_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleWeightedMetric7523);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleWeightedMetric7522);
             lv_name_1_0=ruleEString();
 
             state._fsp--;
@@ -8069,7 +8075,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                 case 1 :
                     // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:3463:4: otherlv_2= '[id:' ( (lv_id_3_0= ruleEString ) ) otherlv_4= ']'
                     {
-                    otherlv_2=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleWeightedMetric7536); 
+                    otherlv_2=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleWeightedMetric7535); 
 
                         	newLeafNode(otherlv_2, grammarAccess.getWeightedMetricAccess().getIdKeyword_2_0());
                         
@@ -8082,7 +8088,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                      
                     	        newCompositeNode(grammarAccess.getWeightedMetricAccess().getIdEStringParserRuleCall_2_1_0()); 
                     	    
-                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleWeightedMetric7557);
+                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleWeightedMetric7556);
                     lv_id_3_0=ruleEString();
 
                     state._fsp--;
@@ -8104,7 +8110,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
                     }
 
-                    otherlv_4=(Token)match(input,13,FollowSets000.FOLLOW_13_in_ruleWeightedMetric7569); 
+                    otherlv_4=(Token)match(input,13,FollowSets000.FOLLOW_13_in_ruleWeightedMetric7568); 
 
                         	newLeafNode(otherlv_4, grammarAccess.getWeightedMetricAccess().getRightSquareBracketKeyword_2_2());
                         
@@ -8114,11 +8120,11 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_5=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleWeightedMetric7583); 
+            otherlv_5=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleWeightedMetric7582); 
 
                 	newLeafNode(otherlv_5, grammarAccess.getWeightedMetricAccess().getEqualsSignKeyword_3());
                 
-            otherlv_6=(Token)match(input,27,FollowSets000.FOLLOW_27_in_ruleWeightedMetric7595); 
+            otherlv_6=(Token)match(input,27,FollowSets000.FOLLOW_27_in_ruleWeightedMetric7594); 
 
                 	newLeafNode(otherlv_6, grammarAccess.getWeightedMetricAccess().getLeftParenthesisKeyword_4());
                 
@@ -8133,11 +8139,11 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                 case 1 :
                     // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:3497:3: otherlv_7= 'metricType' otherlv_8= '='
                     {
-                    otherlv_7=(Token)match(input,81,FollowSets000.FOLLOW_81_in_ruleWeightedMetric7608); 
+                    otherlv_7=(Token)match(input,81,FollowSets000.FOLLOW_81_in_ruleWeightedMetric7607); 
 
                         	newLeafNode(otherlv_7, grammarAccess.getWeightedMetricAccess().getMetricTypeKeyword_5_0());
                         
-                    otherlv_8=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleWeightedMetric7620); 
+                    otherlv_8=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleWeightedMetric7619); 
 
                         	newLeafNode(otherlv_8, grammarAccess.getWeightedMetricAccess().getEqualsSignKeyword_5_1());
                         
@@ -8161,7 +8167,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getWeightedMetricAccess().getMetricTypeMetricTypeCrossReference_6_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleWeightedMetric7645);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleWeightedMetric7644);
             ruleEString();
 
             state._fsp--;
@@ -8175,7 +8181,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_10=(Token)match(input,17,FollowSets000.FOLLOW_17_in_ruleWeightedMetric7657); 
+            otherlv_10=(Token)match(input,17,FollowSets000.FOLLOW_17_in_ruleWeightedMetric7656); 
 
                 	newLeafNode(otherlv_10, grammarAccess.getWeightedMetricAccess().getCommaKeyword_7());
                 
@@ -8190,11 +8196,11 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                 case 1 :
                     // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:3524:3: otherlv_11= 'weight' otherlv_12= '='
                     {
-                    otherlv_11=(Token)match(input,87,FollowSets000.FOLLOW_87_in_ruleWeightedMetric7670); 
+                    otherlv_11=(Token)match(input,87,FollowSets000.FOLLOW_87_in_ruleWeightedMetric7669); 
 
                         	newLeafNode(otherlv_11, grammarAccess.getWeightedMetricAccess().getWeightKeyword_8_0());
                         
-                    otherlv_12=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleWeightedMetric7682); 
+                    otherlv_12=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleWeightedMetric7681); 
 
                         	newLeafNode(otherlv_12, grammarAccess.getWeightedMetricAccess().getEqualsSignKeyword_8_1());
                         
@@ -8213,7 +8219,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getWeightedMetricAccess().getWeightEDoubleParserRuleCall_9_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleEDouble_in_ruleWeightedMetric7705);
+            pushFollow(FollowSets000.FOLLOW_ruleEDouble_in_ruleWeightedMetric7704);
             lv_weight_13_0=ruleEDouble();
 
             state._fsp--;
@@ -8235,7 +8241,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_14=(Token)match(input,28,FollowSets000.FOLLOW_28_in_ruleWeightedMetric7717); 
+            otherlv_14=(Token)match(input,28,FollowSets000.FOLLOW_28_in_ruleWeightedMetric7716); 
 
                 	newLeafNode(otherlv_14, grammarAccess.getWeightedMetricAccess().getRightParenthesisKeyword_10());
                 
@@ -8323,7 +8329,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                     // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:3565:2: (enumLiteral_0= 'NOT_SET' )
                     // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:3565:4: enumLiteral_0= 'NOT_SET'
                     {
-                    enumLiteral_0=(Token)match(input,88,FollowSets000.FOLLOW_88_in_ruleAdaptationScope7767); 
+                    enumLiteral_0=(Token)match(input,88,FollowSets000.FOLLOW_88_in_ruleAdaptationScope7766); 
 
                             current = grammarAccess.getAdaptationScopeAccess().getNOT_SETEnumLiteralDeclaration_0().getEnumLiteral().getInstance();
                             newLeafNode(enumLiteral_0, grammarAccess.getAdaptationScopeAccess().getNOT_SETEnumLiteralDeclaration_0()); 
@@ -8340,7 +8346,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                     // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:3571:6: (enumLiteral_1= 'THIS' )
                     // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:3571:8: enumLiteral_1= 'THIS'
                     {
-                    enumLiteral_1=(Token)match(input,89,FollowSets000.FOLLOW_89_in_ruleAdaptationScope7784); 
+                    enumLiteral_1=(Token)match(input,89,FollowSets000.FOLLOW_89_in_ruleAdaptationScope7783); 
 
                             current = grammarAccess.getAdaptationScopeAccess().getTHISEnumLiteralDeclaration_1().getEnumLiteral().getInstance();
                             newLeafNode(enumLiteral_1, grammarAccess.getAdaptationScopeAccess().getTHISEnumLiteralDeclaration_1()); 
@@ -8357,7 +8363,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                     // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:3577:6: (enumLiteral_2= 'LEAST_UTILIZED_FIRST' )
                     // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:3577:8: enumLiteral_2= 'LEAST_UTILIZED_FIRST'
                     {
-                    enumLiteral_2=(Token)match(input,90,FollowSets000.FOLLOW_90_in_ruleAdaptationScope7801); 
+                    enumLiteral_2=(Token)match(input,90,FollowSets000.FOLLOW_90_in_ruleAdaptationScope7800); 
 
                             current = grammarAccess.getAdaptationScopeAccess().getLEAST_UTILIZED_FIRSTEnumLiteralDeclaration_2().getEnumLiteral().getInstance();
                             newLeafNode(enumLiteral_2, grammarAccess.getAdaptationScopeAccess().getLEAST_UTILIZED_FIRSTEnumLiteralDeclaration_2()); 
@@ -8374,7 +8380,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                     // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:3583:6: (enumLiteral_3= 'MOST_UTILIZED_FIRST' )
                     // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:3583:8: enumLiteral_3= 'MOST_UTILIZED_FIRST'
                     {
-                    enumLiteral_3=(Token)match(input,91,FollowSets000.FOLLOW_91_in_ruleAdaptationScope7818); 
+                    enumLiteral_3=(Token)match(input,91,FollowSets000.FOLLOW_91_in_ruleAdaptationScope7817); 
 
                             current = grammarAccess.getAdaptationScopeAccess().getMOST_UTILIZED_FIRSTEnumLiteralDeclaration_3().getEnumLiteral().getInstance();
                             newLeafNode(enumLiteral_3, grammarAccess.getAdaptationScopeAccess().getMOST_UTILIZED_FIRSTEnumLiteralDeclaration_3()); 
@@ -8391,7 +8397,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                     // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:3589:6: (enumLiteral_4= 'RANDOM' )
                     // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:3589:8: enumLiteral_4= 'RANDOM'
                     {
-                    enumLiteral_4=(Token)match(input,92,FollowSets000.FOLLOW_92_in_ruleAdaptationScope7835); 
+                    enumLiteral_4=(Token)match(input,92,FollowSets000.FOLLOW_92_in_ruleAdaptationScope7834); 
 
                             current = grammarAccess.getAdaptationScopeAccess().getRANDOMEnumLiteralDeclaration_4().getEnumLiteral().getInstance();
                             newLeafNode(enumLiteral_4, grammarAccess.getAdaptationScopeAccess().getRANDOMEnumLiteralDeclaration_4()); 
@@ -8408,7 +8414,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                     // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:3595:6: (enumLiteral_5= 'ALL' )
                     // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:3595:8: enumLiteral_5= 'ALL'
                     {
-                    enumLiteral_5=(Token)match(input,93,FollowSets000.FOLLOW_93_in_ruleAdaptationScope7852); 
+                    enumLiteral_5=(Token)match(input,93,FollowSets000.FOLLOW_93_in_ruleAdaptationScope7851); 
 
                             current = grammarAccess.getAdaptationScopeAccess().getALLEnumLiteralDeclaration_5().getEnumLiteral().getInstance();
                             newLeafNode(enumLiteral_5, grammarAccess.getAdaptationScopeAccess().getALLEnumLiteralDeclaration_5()); 
@@ -8491,7 +8497,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                     // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:3608:2: (enumLiteral_0= 'NOT_SET' )
                     // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:3608:4: enumLiteral_0= 'NOT_SET'
                     {
-                    enumLiteral_0=(Token)match(input,88,FollowSets000.FOLLOW_88_in_ruleAdaptationDirection7897); 
+                    enumLiteral_0=(Token)match(input,88,FollowSets000.FOLLOW_88_in_ruleAdaptationDirection7896); 
 
                             current = grammarAccess.getAdaptationDirectionAccess().getNOT_SETEnumLiteralDeclaration_0().getEnumLiteral().getInstance();
                             newLeafNode(enumLiteral_0, grammarAccess.getAdaptationDirectionAccess().getNOT_SETEnumLiteralDeclaration_0()); 
@@ -8508,7 +8514,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                     // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:3614:6: (enumLiteral_1= 'INCREASE' )
                     // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:3614:8: enumLiteral_1= 'INCREASE'
                     {
-                    enumLiteral_1=(Token)match(input,94,FollowSets000.FOLLOW_94_in_ruleAdaptationDirection7914); 
+                    enumLiteral_1=(Token)match(input,94,FollowSets000.FOLLOW_94_in_ruleAdaptationDirection7913); 
 
                             current = grammarAccess.getAdaptationDirectionAccess().getINCREASEEnumLiteralDeclaration_1().getEnumLiteral().getInstance();
                             newLeafNode(enumLiteral_1, grammarAccess.getAdaptationDirectionAccess().getINCREASEEnumLiteralDeclaration_1()); 
@@ -8525,7 +8531,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                     // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:3620:6: (enumLiteral_2= 'DECREASE' )
                     // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:3620:8: enumLiteral_2= 'DECREASE'
                     {
-                    enumLiteral_2=(Token)match(input,95,FollowSets000.FOLLOW_95_in_ruleAdaptationDirection7931); 
+                    enumLiteral_2=(Token)match(input,95,FollowSets000.FOLLOW_95_in_ruleAdaptationDirection7930); 
 
                             current = grammarAccess.getAdaptationDirectionAccess().getDECREASEEnumLiteralDeclaration_2().getEnumLiteral().getInstance();
                             newLeafNode(enumLiteral_2, grammarAccess.getAdaptationDirectionAccess().getDECREASEEnumLiteralDeclaration_2()); 
@@ -8542,7 +8548,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                     // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:3626:6: (enumLiteral_3= 'MIGRATE' )
                     // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:3626:8: enumLiteral_3= 'MIGRATE'
                     {
-                    enumLiteral_3=(Token)match(input,96,FollowSets000.FOLLOW_96_in_ruleAdaptationDirection7948); 
+                    enumLiteral_3=(Token)match(input,96,FollowSets000.FOLLOW_96_in_ruleAdaptationDirection7947); 
 
                             current = grammarAccess.getAdaptationDirectionAccess().getMIGRATEEnumLiteralDeclaration_3().getEnumLiteral().getInstance();
                             newLeafNode(enumLiteral_3, grammarAccess.getAdaptationDirectionAccess().getMIGRATEEnumLiteralDeclaration_3()); 
@@ -8673,7 +8679,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                     // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:3639:2: (enumLiteral_0= '==' )
                     // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:3639:4: enumLiteral_0= '=='
                     {
-                    enumLiteral_0=(Token)match(input,97,FollowSets000.FOLLOW_97_in_ruleRelationalOperator7993); 
+                    enumLiteral_0=(Token)match(input,97,FollowSets000.FOLLOW_97_in_ruleRelationalOperator7992); 
 
                             current = grammarAccess.getRelationalOperatorAccess().getEQUALEnumLiteralDeclaration_0().getEnumLiteral().getInstance();
                             newLeafNode(enumLiteral_0, grammarAccess.getRelationalOperatorAccess().getEQUALEnumLiteralDeclaration_0()); 
@@ -8690,7 +8696,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                     // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:3645:6: (enumLiteral_1= '!=' )
                     // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:3645:8: enumLiteral_1= '!='
                     {
-                    enumLiteral_1=(Token)match(input,98,FollowSets000.FOLLOW_98_in_ruleRelationalOperator8010); 
+                    enumLiteral_1=(Token)match(input,98,FollowSets000.FOLLOW_98_in_ruleRelationalOperator8009); 
 
                             current = grammarAccess.getRelationalOperatorAccess().getNOT_EQUALEnumLiteralDeclaration_1().getEnumLiteral().getInstance();
                             newLeafNode(enumLiteral_1, grammarAccess.getRelationalOperatorAccess().getNOT_EQUALEnumLiteralDeclaration_1()); 
@@ -8707,7 +8713,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                     // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:3651:6: (enumLiteral_2= '>' )
                     // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:3651:8: enumLiteral_2= '>'
                     {
-                    enumLiteral_2=(Token)match(input,99,FollowSets000.FOLLOW_99_in_ruleRelationalOperator8027); 
+                    enumLiteral_2=(Token)match(input,99,FollowSets000.FOLLOW_99_in_ruleRelationalOperator8026); 
 
                             current = grammarAccess.getRelationalOperatorAccess().getGREATEREnumLiteralDeclaration_2().getEnumLiteral().getInstance();
                             newLeafNode(enumLiteral_2, grammarAccess.getRelationalOperatorAccess().getGREATEREnumLiteralDeclaration_2()); 
@@ -8724,7 +8730,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                     // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:3657:6: (enumLiteral_3= '>=' )
                     // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:3657:8: enumLiteral_3= '>='
                     {
-                    enumLiteral_3=(Token)match(input,100,FollowSets000.FOLLOW_100_in_ruleRelationalOperator8044); 
+                    enumLiteral_3=(Token)match(input,100,FollowSets000.FOLLOW_100_in_ruleRelationalOperator8043); 
 
                             current = grammarAccess.getRelationalOperatorAccess().getGREATER_EQUALEnumLiteralDeclaration_3().getEnumLiteral().getInstance();
                             newLeafNode(enumLiteral_3, grammarAccess.getRelationalOperatorAccess().getGREATER_EQUALEnumLiteralDeclaration_3()); 
@@ -8741,7 +8747,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                     // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:3663:6: (enumLiteral_4= '<' )
                     // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:3663:8: enumLiteral_4= '<'
                     {
-                    enumLiteral_4=(Token)match(input,101,FollowSets000.FOLLOW_101_in_ruleRelationalOperator8061); 
+                    enumLiteral_4=(Token)match(input,101,FollowSets000.FOLLOW_101_in_ruleRelationalOperator8060); 
 
                             current = grammarAccess.getRelationalOperatorAccess().getLESSEnumLiteralDeclaration_4().getEnumLiteral().getInstance();
                             newLeafNode(enumLiteral_4, grammarAccess.getRelationalOperatorAccess().getLESSEnumLiteralDeclaration_4()); 
@@ -8758,7 +8764,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                     // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:3669:6: (enumLiteral_5= '<=' )
                     // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:3669:8: enumLiteral_5= '<='
                     {
-                    enumLiteral_5=(Token)match(input,102,FollowSets000.FOLLOW_102_in_ruleRelationalOperator8078); 
+                    enumLiteral_5=(Token)match(input,102,FollowSets000.FOLLOW_102_in_ruleRelationalOperator8077); 
 
                             current = grammarAccess.getRelationalOperatorAccess().getLESS_EQUALEnumLiteralDeclaration_5().getEnumLiteral().getInstance();
                             newLeafNode(enumLiteral_5, grammarAccess.getRelationalOperatorAccess().getLESS_EQUALEnumLiteralDeclaration_5()); 
@@ -8775,7 +8781,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                     // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:3675:6: (enumLiteral_6= 'EQUAL' )
                     // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:3675:8: enumLiteral_6= 'EQUAL'
                     {
-                    enumLiteral_6=(Token)match(input,103,FollowSets000.FOLLOW_103_in_ruleRelationalOperator8095); 
+                    enumLiteral_6=(Token)match(input,103,FollowSets000.FOLLOW_103_in_ruleRelationalOperator8094); 
 
                             current = grammarAccess.getRelationalOperatorAccess().getEQUALEnumLiteralDeclaration_6().getEnumLiteral().getInstance();
                             newLeafNode(enumLiteral_6, grammarAccess.getRelationalOperatorAccess().getEQUALEnumLiteralDeclaration_6()); 
@@ -8792,7 +8798,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                     // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:3681:6: (enumLiteral_7= 'NOT_EQUAL' )
                     // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:3681:8: enumLiteral_7= 'NOT_EQUAL'
                     {
-                    enumLiteral_7=(Token)match(input,104,FollowSets000.FOLLOW_104_in_ruleRelationalOperator8112); 
+                    enumLiteral_7=(Token)match(input,104,FollowSets000.FOLLOW_104_in_ruleRelationalOperator8111); 
 
                             current = grammarAccess.getRelationalOperatorAccess().getNOT_EQUALEnumLiteralDeclaration_7().getEnumLiteral().getInstance();
                             newLeafNode(enumLiteral_7, grammarAccess.getRelationalOperatorAccess().getNOT_EQUALEnumLiteralDeclaration_7()); 
@@ -8809,7 +8815,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                     // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:3687:6: (enumLiteral_8= 'GREATER' )
                     // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:3687:8: enumLiteral_8= 'GREATER'
                     {
-                    enumLiteral_8=(Token)match(input,105,FollowSets000.FOLLOW_105_in_ruleRelationalOperator8129); 
+                    enumLiteral_8=(Token)match(input,105,FollowSets000.FOLLOW_105_in_ruleRelationalOperator8128); 
 
                             current = grammarAccess.getRelationalOperatorAccess().getGREATEREnumLiteralDeclaration_8().getEnumLiteral().getInstance();
                             newLeafNode(enumLiteral_8, grammarAccess.getRelationalOperatorAccess().getGREATEREnumLiteralDeclaration_8()); 
@@ -8826,7 +8832,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                     // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:3693:6: (enumLiteral_9= 'GREATER_EQUAL' )
                     // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:3693:8: enumLiteral_9= 'GREATER_EQUAL'
                     {
-                    enumLiteral_9=(Token)match(input,106,FollowSets000.FOLLOW_106_in_ruleRelationalOperator8146); 
+                    enumLiteral_9=(Token)match(input,106,FollowSets000.FOLLOW_106_in_ruleRelationalOperator8145); 
 
                             current = grammarAccess.getRelationalOperatorAccess().getGREATER_EQUALEnumLiteralDeclaration_9().getEnumLiteral().getInstance();
                             newLeafNode(enumLiteral_9, grammarAccess.getRelationalOperatorAccess().getGREATER_EQUALEnumLiteralDeclaration_9()); 
@@ -8843,7 +8849,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                     // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:3699:6: (enumLiteral_10= 'LESS' )
                     // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:3699:8: enumLiteral_10= 'LESS'
                     {
-                    enumLiteral_10=(Token)match(input,107,FollowSets000.FOLLOW_107_in_ruleRelationalOperator8163); 
+                    enumLiteral_10=(Token)match(input,107,FollowSets000.FOLLOW_107_in_ruleRelationalOperator8162); 
 
                             current = grammarAccess.getRelationalOperatorAccess().getLESSEnumLiteralDeclaration_10().getEnumLiteral().getInstance();
                             newLeafNode(enumLiteral_10, grammarAccess.getRelationalOperatorAccess().getLESSEnumLiteralDeclaration_10()); 
@@ -8860,7 +8866,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                     // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:3705:6: (enumLiteral_11= 'LESS_EQUAL' )
                     // ../edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/parser/antlr/internal/InternalStaLang.g:3705:8: enumLiteral_11= 'LESS_EQUAL'
                     {
-                    enumLiteral_11=(Token)match(input,108,FollowSets000.FOLLOW_108_in_ruleRelationalOperator8180); 
+                    enumLiteral_11=(Token)match(input,108,FollowSets000.FOLLOW_108_in_ruleRelationalOperator8179); 
 
                             current = grammarAccess.getRelationalOperatorAccess().getLESS_EQUALEnumLiteralDeclaration_11().getEnumLiteral().getInstance();
                             newLeafNode(enumLiteral_11, grammarAccess.getRelationalOperatorAccess().getLESS_EQUALEnumLiteralDeclaration_11()); 
@@ -8911,7 +8917,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
             "",
             "",
             "",
-            "\1\10\1\7",
+            "\1\7\1\10",
             "",
             "",
             "\1\11",
@@ -8959,430 +8965,430 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
         public static final BitSet FOLLOW_ruleAdaptationProcess_in_entryRuleAdaptationProcess75 = new BitSet(new long[]{0x0000000000000000L});
         public static final BitSet FOLLOW_EOF_in_entryRuleAdaptationProcess85 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_ruleImportDeclaration_in_ruleAdaptationProcess131 = new BitSet(new long[]{0x0000010000000800L});
-        public static final BitSet FOLLOW_11_in_ruleAdaptationProcess144 = new BitSet(new long[]{0x0000000000000010L});
-        public static final BitSet FOLLOW_RULE_ID_in_ruleAdaptationProcess161 = new BitSet(new long[]{0x0000000000005000L});
-        public static final BitSet FOLLOW_12_in_ruleAdaptationProcess179 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleAdaptationProcess200 = new BitSet(new long[]{0x0000000000002000L});
-        public static final BitSet FOLLOW_13_in_ruleAdaptationProcess212 = new BitSet(new long[]{0x0000000000004000L});
-        public static final BitSet FOLLOW_14_in_ruleAdaptationProcess226 = new BitSet(new long[]{0x0000000000048000L});
-        public static final BitSet FOLLOW_15_in_ruleAdaptationProcess239 = new BitSet(new long[]{0x0000000000010000L});
-        public static final BitSet FOLLOW_16_in_ruleAdaptationProcess251 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleParameter_in_ruleAdaptationProcess272 = new BitSet(new long[]{0x0000000000060000L});
-        public static final BitSet FOLLOW_17_in_ruleAdaptationProcess285 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleParameter_in_ruleAdaptationProcess306 = new BitSet(new long[]{0x0000000000060000L});
-        public static final BitSet FOLLOW_18_in_ruleAdaptationProcess322 = new BitSet(new long[]{0x0000000000010000L});
-        public static final BitSet FOLLOW_16_in_ruleAdaptationProcess334 = new BitSet(new long[]{0x0000004000000000L});
-        public static final BitSet FOLLOW_ruleOverallGoal_in_ruleAdaptationProcess355 = new BitSet(new long[]{0x0000000000080000L});
-        public static final BitSet FOLLOW_19_in_ruleAdaptationProcess367 = new BitSet(new long[]{0x0000000000010000L});
-        public static final BitSet FOLLOW_16_in_ruleAdaptationProcess379 = new BitSet(new long[]{0x0000000040000030L});
-        public static final BitSet FOLLOW_ruleAction_in_ruleAdaptationProcess400 = new BitSet(new long[]{0x0000000000120000L});
-        public static final BitSet FOLLOW_17_in_ruleAdaptationProcess413 = new BitSet(new long[]{0x0000000040000030L});
-        public static final BitSet FOLLOW_ruleAction_in_ruleAdaptationProcess434 = new BitSet(new long[]{0x0000000000120000L});
-        public static final BitSet FOLLOW_20_in_ruleAdaptationProcess448 = new BitSet(new long[]{0x0000000000010000L});
-        public static final BitSet FOLLOW_16_in_ruleAdaptationProcess460 = new BitSet(new long[]{0x0000000000800030L});
-        public static final BitSet FOLLOW_ruleTactic_in_ruleAdaptationProcess481 = new BitSet(new long[]{0x0000000000220000L});
-        public static final BitSet FOLLOW_17_in_ruleAdaptationProcess494 = new BitSet(new long[]{0x0000000000800030L});
-        public static final BitSet FOLLOW_ruleTactic_in_ruleAdaptationProcess515 = new BitSet(new long[]{0x0000000000220000L});
-        public static final BitSet FOLLOW_21_in_ruleAdaptationProcess529 = new BitSet(new long[]{0x0000000000010000L});
-        public static final BitSet FOLLOW_16_in_ruleAdaptationProcess541 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleStrategy_in_ruleAdaptationProcess562 = new BitSet(new long[]{0x0000000000420000L});
-        public static final BitSet FOLLOW_17_in_ruleAdaptationProcess575 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleStrategy_in_ruleAdaptationProcess596 = new BitSet(new long[]{0x0000000000420000L});
-        public static final BitSet FOLLOW_22_in_ruleAdaptationProcess610 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleAbstractControlFlowElement_in_entryRuleAbstractControlFlowElement648 = new BitSet(new long[]{0x0000000000000000L});
-        public static final BitSet FOLLOW_EOF_in_entryRuleAbstractControlFlowElement658 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleStartAction_in_ruleAbstractControlFlowElement705 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleStopAction_in_ruleAbstractControlFlowElement732 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleLoopAction_in_ruleAbstractControlFlowElement759 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleBranchAction_in_ruleAbstractControlFlowElement786 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleActionReference_in_ruleAbstractControlFlowElement813 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleVariationType_in_entryRuleVariationType848 = new BitSet(new long[]{0x0000000000000000L});
-        public static final BitSet FOLLOW_EOF_in_entryRuleVariationType858 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rulePropertyRange_in_ruleVariationType905 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleSetOfConfigurations_in_ruleVariationType932 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleEString_in_entryRuleEString968 = new BitSet(new long[]{0x0000000000000000L});
-        public static final BitSet FOLLOW_EOF_in_entryRuleEString979 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_RULE_STRING_in_ruleEString1019 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_RULE_ID_in_ruleEString1045 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleTactic_in_entryRuleTactic1090 = new BitSet(new long[]{0x0000000000000000L});
-        public static final BitSet FOLLOW_EOF_in_entryRuleTactic1100 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_23_in_ruleTactic1138 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleTactic1161 = new BitSet(new long[]{0x0000000000005000L});
-        public static final BitSet FOLLOW_12_in_ruleTactic1174 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleTactic1195 = new BitSet(new long[]{0x0000000000002000L});
-        public static final BitSet FOLLOW_13_in_ruleTactic1207 = new BitSet(new long[]{0x0000000000004000L});
-        public static final BitSet FOLLOW_14_in_ruleTactic1221 = new BitSet(new long[]{0x0000000001000000L});
-        public static final BitSet FOLLOW_24_in_ruleTactic1233 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleAdaptationPlan_in_ruleTactic1254 = new BitSet(new long[]{0x0000000022400000L});
-        public static final BitSet FOLLOW_25_in_ruleTactic1267 = new BitSet(new long[]{0x0000000004000000L});
-        public static final BitSet FOLLOW_26_in_ruleTactic1279 = new BitSet(new long[]{0x0000000008000000L});
-        public static final BitSet FOLLOW_27_in_ruleTactic1291 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleTactic1314 = new BitSet(new long[]{0x0000000010020000L});
-        public static final BitSet FOLLOW_17_in_ruleTactic1327 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleTactic1350 = new BitSet(new long[]{0x0000000010020000L});
-        public static final BitSet FOLLOW_28_in_ruleTactic1364 = new BitSet(new long[]{0x0000000020400000L});
-        public static final BitSet FOLLOW_29_in_ruleTactic1379 = new BitSet(new long[]{0x0000000004000000L});
-        public static final BitSet FOLLOW_26_in_ruleTactic1391 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleTactic1414 = new BitSet(new long[]{0x0000000000400000L});
-        public static final BitSet FOLLOW_22_in_ruleTactic1428 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleAction_in_entryRuleAction1464 = new BitSet(new long[]{0x0000000000000000L});
-        public static final BitSet FOLLOW_EOF_in_entryRuleAction1474 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_30_in_ruleAction1512 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleAction1535 = new BitSet(new long[]{0x0000000000005000L});
-        public static final BitSet FOLLOW_12_in_ruleAction1548 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleAction1569 = new BitSet(new long[]{0x0000000000002000L});
-        public static final BitSet FOLLOW_13_in_ruleAction1581 = new BitSet(new long[]{0x0000000000004000L});
-        public static final BitSet FOLLOW_14_in_ruleAction1595 = new BitSet(new long[]{0x0000000080000000L});
-        public static final BitSet FOLLOW_31_in_ruleAction1607 = new BitSet(new long[]{0x0000000004000000L});
-        public static final BitSet FOLLOW_26_in_ruleAction1619 = new BitSet(new long[]{0x0000000008000000L});
-        public static final BitSet FOLLOW_ruleAdaptationActionOperation_in_ruleAction1640 = new BitSet(new long[]{0x0000000100000000L});
-        public static final BitSet FOLLOW_32_in_ruleAction1652 = new BitSet(new long[]{0x0000000004000000L});
-        public static final BitSet FOLLOW_26_in_ruleAction1664 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleAction1687 = new BitSet(new long[]{0x0000000022400000L});
-        public static final BitSet FOLLOW_25_in_ruleAction1700 = new BitSet(new long[]{0x0000000004000000L});
-        public static final BitSet FOLLOW_26_in_ruleAction1712 = new BitSet(new long[]{0x0000000008000000L});
-        public static final BitSet FOLLOW_27_in_ruleAction1724 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleAction1747 = new BitSet(new long[]{0x0000000010020000L});
-        public static final BitSet FOLLOW_17_in_ruleAction1760 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleAction1783 = new BitSet(new long[]{0x0000000010020000L});
-        public static final BitSet FOLLOW_28_in_ruleAction1797 = new BitSet(new long[]{0x0000000020400000L});
-        public static final BitSet FOLLOW_29_in_ruleAction1812 = new BitSet(new long[]{0x0000000004000000L});
-        public static final BitSet FOLLOW_26_in_ruleAction1824 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleAction1847 = new BitSet(new long[]{0x0000000000400000L});
-        public static final BitSet FOLLOW_22_in_ruleAction1861 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleStrategy_in_entryRuleStrategy1897 = new BitSet(new long[]{0x0000000000000000L});
-        public static final BitSet FOLLOW_EOF_in_entryRuleStrategy1907 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleStrategy1953 = new BitSet(new long[]{0x0000000000005000L});
-        public static final BitSet FOLLOW_12_in_ruleStrategy1966 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleStrategy1987 = new BitSet(new long[]{0x0000000000002000L});
-        public static final BitSet FOLLOW_13_in_ruleStrategy1999 = new BitSet(new long[]{0x0000000000004000L});
-        public static final BitSet FOLLOW_14_in_ruleStrategy2013 = new BitSet(new long[]{0x0000000200000000L});
-        public static final BitSet FOLLOW_33_in_ruleStrategy2025 = new BitSet(new long[]{0x0000000004000000L});
-        public static final BitSet FOLLOW_26_in_ruleStrategy2037 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleStrategy2060 = new BitSet(new long[]{0x0000000400000000L});
-        public static final BitSet FOLLOW_34_in_ruleStrategy2072 = new BitSet(new long[]{0x0000000004000000L});
-        public static final BitSet FOLLOW_26_in_ruleStrategy2084 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEvent_in_ruleStrategy2105 = new BitSet(new long[]{0x0000000000100000L});
-        public static final BitSet FOLLOW_20_in_ruleStrategy2117 = new BitSet(new long[]{0x0000000004000000L});
-        public static final BitSet FOLLOW_26_in_ruleStrategy2129 = new BitSet(new long[]{0x0000000008000000L});
-        public static final BitSet FOLLOW_27_in_ruleStrategy2141 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleWeightedTactic_in_ruleStrategy2162 = new BitSet(new long[]{0x0000000010020000L});
-        public static final BitSet FOLLOW_17_in_ruleStrategy2175 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleWeightedTactic_in_ruleStrategy2196 = new BitSet(new long[]{0x0000000010020000L});
-        public static final BitSet FOLLOW_28_in_ruleStrategy2210 = new BitSet(new long[]{0x0000000800000030L});
-        public static final BitSet FOLLOW_35_in_ruleStrategy2223 = new BitSet(new long[]{0x0000000800000030L});
-        public static final BitSet FOLLOW_ruleWeightingFunction_in_ruleStrategy2246 = new BitSet(new long[]{0x0000000000400000L});
-        public static final BitSet FOLLOW_22_in_ruleStrategy2258 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleParameter_in_entryRuleParameter2294 = new BitSet(new long[]{0x0000000000000000L});
-        public static final BitSet FOLLOW_EOF_in_entryRuleParameter2304 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleParameter2350 = new BitSet(new long[]{0x0000000000004000L});
-        public static final BitSet FOLLOW_14_in_ruleParameter2362 = new BitSet(new long[]{0x0000001000000030L});
-        public static final BitSet FOLLOW_36_in_ruleParameter2375 = new BitSet(new long[]{0x0000000004000000L});
-        public static final BitSet FOLLOW_26_in_ruleParameter2387 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleParameter2410 = new BitSet(new long[]{0x0000000000420000L});
-        public static final BitSet FOLLOW_17_in_ruleParameter2423 = new BitSet(new long[]{0x0000002000000030L});
-        public static final BitSet FOLLOW_37_in_ruleParameter2436 = new BitSet(new long[]{0x0000000004000000L});
-        public static final BitSet FOLLOW_26_in_ruleParameter2448 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleParameter2471 = new BitSet(new long[]{0x0000000000400000L});
-        public static final BitSet FOLLOW_22_in_ruleParameter2485 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleOverallGoal_in_entryRuleOverallGoal2521 = new BitSet(new long[]{0x0000000000000000L});
-        public static final BitSet FOLLOW_EOF_in_entryRuleOverallGoal2531 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_38_in_ruleOverallGoal2568 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleOverallGoal2589 = new BitSet(new long[]{0x0000008000000000L});
-        public static final BitSet FOLLOW_39_in_ruleOverallGoal2601 = new BitSet(new long[]{0x0000000004000000L});
-        public static final BitSet FOLLOW_26_in_ruleOverallGoal2613 = new BitSet(new long[]{0x0000000008000000L});
-        public static final BitSet FOLLOW_27_in_ruleOverallGoal2625 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleObjective_in_ruleOverallGoal2646 = new BitSet(new long[]{0x0000000010020000L});
-        public static final BitSet FOLLOW_17_in_ruleOverallGoal2659 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleObjective_in_ruleOverallGoal2680 = new BitSet(new long[]{0x0000000010020000L});
-        public static final BitSet FOLLOW_28_in_ruleOverallGoal2694 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleImportDeclaration_in_entryRuleImportDeclaration2730 = new BitSet(new long[]{0x0000000000000000L});
-        public static final BitSet FOLLOW_EOF_in_entryRuleImportDeclaration2740 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_40_in_ruleImportDeclaration2777 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleImportDeclaration2798 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleAdaptationPlan_in_entryRuleAdaptationPlan2834 = new BitSet(new long[]{0x0000000000000000L});
-        public static final BitSet FOLLOW_EOF_in_entryRuleAdaptationPlan2844 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleAdaptationPlan2890 = new BitSet(new long[]{0x0000000004001000L});
-        public static final BitSet FOLLOW_12_in_ruleAdaptationPlan2903 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleAdaptationPlan2924 = new BitSet(new long[]{0x0000000000002000L});
-        public static final BitSet FOLLOW_13_in_ruleAdaptationPlan2936 = new BitSet(new long[]{0x0000000004000000L});
-        public static final BitSet FOLLOW_26_in_ruleAdaptationPlan2950 = new BitSet(new long[]{0x0000000008000002L});
-        public static final BitSet FOLLOW_27_in_ruleAdaptationPlan2963 = new BitSet(new long[]{0x0010DE0000001000L});
-        public static final BitSet FOLLOW_ruleAbstractControlFlowElement_in_ruleAdaptationPlan2984 = new BitSet(new long[]{0x0000000010020000L});
-        public static final BitSet FOLLOW_17_in_ruleAdaptationPlan2997 = new BitSet(new long[]{0x0010DE0000001000L});
-        public static final BitSet FOLLOW_ruleAbstractControlFlowElement_in_ruleAdaptationPlan3018 = new BitSet(new long[]{0x0000000010020000L});
-        public static final BitSet FOLLOW_28_in_ruleAdaptationPlan3032 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleStartAction_in_entryRuleStartAction3070 = new BitSet(new long[]{0x0000000000000000L});
-        public static final BitSet FOLLOW_EOF_in_entryRuleStartAction3080 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_41_in_ruleStartAction3126 = new BitSet(new long[]{0x0000000000001002L});
-        public static final BitSet FOLLOW_12_in_ruleStartAction3139 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleStartAction3160 = new BitSet(new long[]{0x0000000000002000L});
-        public static final BitSet FOLLOW_13_in_ruleStartAction3172 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleStopAction_in_entryRuleStopAction3210 = new BitSet(new long[]{0x0000000000000000L});
-        public static final BitSet FOLLOW_EOF_in_entryRuleStopAction3220 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_42_in_ruleStopAction3266 = new BitSet(new long[]{0x0000000000001002L});
-        public static final BitSet FOLLOW_12_in_ruleStopAction3279 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleStopAction3300 = new BitSet(new long[]{0x0000000000002000L});
-        public static final BitSet FOLLOW_13_in_ruleStopAction3312 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleLoopAction_in_entryRuleLoopAction3350 = new BitSet(new long[]{0x0000000000000000L});
-        public static final BitSet FOLLOW_EOF_in_entryRuleLoopAction3360 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_43_in_ruleLoopAction3398 = new BitSet(new long[]{0x0000100000001000L});
-        public static final BitSet FOLLOW_12_in_ruleLoopAction3413 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleLoopAction3434 = new BitSet(new long[]{0x0000000000002000L});
-        public static final BitSet FOLLOW_13_in_ruleLoopAction3446 = new BitSet(new long[]{0x0000100000000000L});
-        public static final BitSet FOLLOW_44_in_ruleLoopAction3460 = new BitSet(new long[]{0x0000200000000000L});
-        public static final BitSet FOLLOW_45_in_ruleLoopAction3472 = new BitSet(new long[]{0x0000000004000000L});
-        public static final BitSet FOLLOW_26_in_ruleLoopAction3484 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleLoopAction3507 = new BitSet(new long[]{0x0000000008000000L});
-        public static final BitSet FOLLOW_27_in_ruleLoopAction3519 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleAdaptationPlan_in_ruleLoopAction3540 = new BitSet(new long[]{0x0000000010000000L});
-        public static final BitSet FOLLOW_28_in_ruleLoopAction3552 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleBranchAction_in_entryRuleBranchAction3588 = new BitSet(new long[]{0x0000000000000000L});
-        public static final BitSet FOLLOW_EOF_in_entryRuleBranchAction3598 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_46_in_ruleBranchAction3636 = new BitSet(new long[]{0x0000800000001000L});
-        public static final BitSet FOLLOW_12_in_ruleBranchAction3651 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleBranchAction3672 = new BitSet(new long[]{0x0000000000002000L});
-        public static final BitSet FOLLOW_13_in_ruleBranchAction3684 = new BitSet(new long[]{0x0000800000000000L});
-        public static final BitSet FOLLOW_47_in_ruleBranchAction3698 = new BitSet(new long[]{0x0000000008000000L});
-        public static final BitSet FOLLOW_27_in_ruleBranchAction3710 = new BitSet(new long[]{0x0001000000000000L});
-        public static final BitSet FOLLOW_48_in_ruleBranchAction3722 = new BitSet(new long[]{0x0000000004000000L});
-        public static final BitSet FOLLOW_26_in_ruleBranchAction3734 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleBranchAction3757 = new BitSet(new long[]{0x0000000000020000L});
-        public static final BitSet FOLLOW_17_in_ruleBranchAction3769 = new BitSet(new long[]{0x0002000000000000L});
-        public static final BitSet FOLLOW_49_in_ruleBranchAction3781 = new BitSet(new long[]{0x0000000004000000L});
-        public static final BitSet FOLLOW_26_in_ruleBranchAction3793 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleBranchAction3814 = new BitSet(new long[]{0x0000000010000000L});
-        public static final BitSet FOLLOW_28_in_ruleBranchAction3826 = new BitSet(new long[]{0x0004000000000000L});
-        public static final BitSet FOLLOW_50_in_ruleBranchAction3838 = new BitSet(new long[]{0x0000000008000000L});
-        public static final BitSet FOLLOW_27_in_ruleBranchAction3850 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleAdaptationPlan_in_ruleBranchAction3871 = new BitSet(new long[]{0x0000000010000000L});
-        public static final BitSet FOLLOW_28_in_ruleBranchAction3883 = new BitSet(new long[]{0x0008000000000000L});
-        public static final BitSet FOLLOW_51_in_ruleBranchAction3895 = new BitSet(new long[]{0x0000000008000000L});
-        public static final BitSet FOLLOW_27_in_ruleBranchAction3907 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleAdaptationPlan_in_ruleBranchAction3928 = new BitSet(new long[]{0x0000000010000000L});
-        public static final BitSet FOLLOW_28_in_ruleBranchAction3940 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleActionReference_in_entryRuleActionReference3976 = new BitSet(new long[]{0x0000000000000000L});
-        public static final BitSet FOLLOW_EOF_in_entryRuleActionReference3986 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_52_in_ruleActionReference4023 = new BitSet(new long[]{0x0000000008001000L});
-        public static final BitSet FOLLOW_12_in_ruleActionReference4036 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleActionReference4057 = new BitSet(new long[]{0x0000000000002000L});
-        public static final BitSet FOLLOW_13_in_ruleActionReference4069 = new BitSet(new long[]{0x0000000008000000L});
-        public static final BitSet FOLLOW_27_in_ruleActionReference4083 = new BitSet(new long[]{0x0020000000000000L});
-        public static final BitSet FOLLOW_53_in_ruleActionReference4095 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleActionReference4118 = new BitSet(new long[]{0x0000000010000000L});
-        public static final BitSet FOLLOW_28_in_ruleActionReference4130 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleAdaptationActionOperation_in_entryRuleAdaptationActionOperation4166 = new BitSet(new long[]{0x0000000000000000L});
-        public static final BitSet FOLLOW_EOF_in_entryRuleAdaptationActionOperation4176 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_27_in_ruleAdaptationActionOperation4213 = new BitSet(new long[]{0x0000000000000000L,0x00000001C1000000L});
-        public static final BitSet FOLLOW_ruleAdaptationDirection_in_ruleAdaptationActionOperation4234 = new BitSet(new long[]{0x0000000000020000L});
-        public static final BitSet FOLLOW_17_in_ruleAdaptationActionOperation4246 = new BitSet(new long[]{0x0000000000000000L,0x000000003F000000L});
-        public static final BitSet FOLLOW_ruleAdaptationScope_in_ruleAdaptationActionOperation4267 = new BitSet(new long[]{0x0000000010000000L});
-        public static final BitSet FOLLOW_28_in_ruleAdaptationActionOperation4279 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleModelVariableConfigurationRange_in_entryRuleModelVariableConfigurationRange4315 = new BitSet(new long[]{0x0000000000000000L});
-        public static final BitSet FOLLOW_EOF_in_entryRuleModelVariableConfigurationRange4325 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_54_in_ruleModelVariableConfigurationRange4362 = new BitSet(new long[]{0x0000000000005000L});
-        public static final BitSet FOLLOW_12_in_ruleModelVariableConfigurationRange4375 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleModelVariableConfigurationRange4396 = new BitSet(new long[]{0x0000000000002000L});
-        public static final BitSet FOLLOW_13_in_ruleModelVariableConfigurationRange4408 = new BitSet(new long[]{0x0000000000004000L});
-        public static final BitSet FOLLOW_14_in_ruleModelVariableConfigurationRange4422 = new BitSet(new long[]{0x0080000000000000L});
-        public static final BitSet FOLLOW_55_in_ruleModelVariableConfigurationRange4434 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleModelVariableConfigurationRange4455 = new BitSet(new long[]{0x0100000000000000L});
-        public static final BitSet FOLLOW_56_in_ruleModelVariableConfigurationRange4467 = new BitSet(new long[]{0x6000000000000040L});
-        public static final BitSet FOLLOW_ruleEDouble_in_ruleModelVariableConfigurationRange4488 = new BitSet(new long[]{0x0200000000000000L});
-        public static final BitSet FOLLOW_57_in_ruleModelVariableConfigurationRange4500 = new BitSet(new long[]{0x6000000000000040L});
-        public static final BitSet FOLLOW_ruleEDouble_in_ruleModelVariableConfigurationRange4521 = new BitSet(new long[]{0x0400000000000000L});
-        public static final BitSet FOLLOW_58_in_ruleModelVariableConfigurationRange4533 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleModelVariableConfigurationRange4556 = new BitSet(new long[]{0x0000000000400000L});
-        public static final BitSet FOLLOW_22_in_ruleModelVariableConfigurationRange4568 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleModelEntityConfigurationRange_in_entryRuleModelEntityConfigurationRange4604 = new BitSet(new long[]{0x0000000000000000L});
-        public static final BitSet FOLLOW_EOF_in_entryRuleModelEntityConfigurationRange4614 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_59_in_ruleModelEntityConfigurationRange4651 = new BitSet(new long[]{0x0000000000005000L});
-        public static final BitSet FOLLOW_12_in_ruleModelEntityConfigurationRange4664 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleModelEntityConfigurationRange4685 = new BitSet(new long[]{0x0000000000002000L});
-        public static final BitSet FOLLOW_13_in_ruleModelEntityConfigurationRange4697 = new BitSet(new long[]{0x0000000000004000L});
-        public static final BitSet FOLLOW_14_in_ruleModelEntityConfigurationRange4711 = new BitSet(new long[]{0x0080000000000000L});
-        public static final BitSet FOLLOW_55_in_ruleModelEntityConfigurationRange4723 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleModelEntityConfigurationRange4744 = new BitSet(new long[]{0x0400000000000000L});
-        public static final BitSet FOLLOW_58_in_ruleModelEntityConfigurationRange4756 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleModelEntityConfigurationRange4779 = new BitSet(new long[]{0x1000000000000000L});
-        public static final BitSet FOLLOW_60_in_ruleModelEntityConfigurationRange4791 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000012L});
-        public static final BitSet FOLLOW_ruleVariationType_in_ruleModelEntityConfigurationRange4812 = new BitSet(new long[]{0x0000000000400000L});
-        public static final BitSet FOLLOW_22_in_ruleModelEntityConfigurationRange4824 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleEDouble_in_entryRuleEDouble4861 = new BitSet(new long[]{0x0000000000000000L});
-        public static final BitSet FOLLOW_EOF_in_entryRuleEDouble4872 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_61_in_ruleEDouble4911 = new BitSet(new long[]{0x4000000000000040L});
-        public static final BitSet FOLLOW_RULE_INT_in_ruleEDouble4929 = new BitSet(new long[]{0x4000000000000000L});
-        public static final BitSet FOLLOW_62_in_ruleEDouble4949 = new BitSet(new long[]{0x0000000000000040L});
-        public static final BitSet FOLLOW_RULE_INT_in_ruleEDouble4964 = new BitSet(new long[]{0x8000000000000002L,0x0000000000000001L});
-        public static final BitSet FOLLOW_63_in_ruleEDouble4984 = new BitSet(new long[]{0x2000000000000040L});
-        public static final BitSet FOLLOW_64_in_ruleEDouble5003 = new BitSet(new long[]{0x2000000000000040L});
-        public static final BitSet FOLLOW_61_in_ruleEDouble5018 = new BitSet(new long[]{0x0000000000000040L});
-        public static final BitSet FOLLOW_RULE_INT_in_ruleEDouble5035 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rulePropertyRange_in_entryRulePropertyRange5082 = new BitSet(new long[]{0x0000000000000000L});
-        public static final BitSet FOLLOW_EOF_in_entryRulePropertyRange5092 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_65_in_rulePropertyRange5129 = new BitSet(new long[]{0x0000000000004000L});
-        public static final BitSet FOLLOW_14_in_rulePropertyRange5141 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000004L});
-        public static final BitSet FOLLOW_66_in_rulePropertyRange5153 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000080L});
-        public static final BitSet FOLLOW_ruleOclConstraint_in_rulePropertyRange5174 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000008L});
-        public static final BitSet FOLLOW_67_in_rulePropertyRange5186 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000080L});
-        public static final BitSet FOLLOW_ruleOclConstraint_in_rulePropertyRange5207 = new BitSet(new long[]{0x0000000000400000L});
-        public static final BitSet FOLLOW_22_in_rulePropertyRange5219 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleSetOfConfigurations_in_entryRuleSetOfConfigurations5255 = new BitSet(new long[]{0x0000000000000000L});
-        public static final BitSet FOLLOW_EOF_in_entryRuleSetOfConfigurations5265 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_68_in_ruleSetOfConfigurations5302 = new BitSet(new long[]{0x0000000000004000L});
-        public static final BitSet FOLLOW_14_in_ruleSetOfConfigurations5314 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000060L});
-        public static final BitSet FOLLOW_69_in_ruleSetOfConfigurations5327 = new BitSet(new long[]{0x0000000008000000L});
-        public static final BitSet FOLLOW_27_in_ruleSetOfConfigurations5339 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleSetOfConfigurations5362 = new BitSet(new long[]{0x0000000010020000L});
-        public static final BitSet FOLLOW_17_in_ruleSetOfConfigurations5375 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleSetOfConfigurations5398 = new BitSet(new long[]{0x0000000010020000L});
-        public static final BitSet FOLLOW_28_in_ruleSetOfConfigurations5412 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000040L});
-        public static final BitSet FOLLOW_70_in_ruleSetOfConfigurations5426 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000080L});
-        public static final BitSet FOLLOW_ruleOclConstraint_in_ruleSetOfConfigurations5447 = new BitSet(new long[]{0x0000000000400000L});
-        public static final BitSet FOLLOW_22_in_ruleSetOfConfigurations5459 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleOclConstraint_in_entryRuleOclConstraint5495 = new BitSet(new long[]{0x0000000000000000L});
-        public static final BitSet FOLLOW_EOF_in_entryRuleOclConstraint5505 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_71_in_ruleOclConstraint5542 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleOclConstraint5563 = new BitSet(new long[]{0x0000000000004000L});
-        public static final BitSet FOLLOW_14_in_ruleOclConstraint5575 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000100L});
-        public static final BitSet FOLLOW_72_in_ruleOclConstraint5587 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleOclConstraint5608 = new BitSet(new long[]{0x0000000000400000L});
-        public static final BitSet FOLLOW_22_in_ruleOclConstraint5620 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleObjective_in_entryRuleObjective5656 = new BitSet(new long[]{0x0000000000000000L});
-        public static final BitSet FOLLOW_EOF_in_entryRuleObjective5666 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleObjective5712 = new BitSet(new long[]{0x0000000000005000L});
-        public static final BitSet FOLLOW_12_in_ruleObjective5725 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleObjective5746 = new BitSet(new long[]{0x0000000000002000L});
-        public static final BitSet FOLLOW_13_in_ruleObjective5758 = new BitSet(new long[]{0x0000000000004000L});
-        public static final BitSet FOLLOW_14_in_ruleObjective5772 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000200L});
-        public static final BitSet FOLLOW_73_in_ruleObjective5784 = new BitSet(new long[]{0x0000000004000000L});
-        public static final BitSet FOLLOW_26_in_ruleObjective5796 = new BitSet(new long[]{0x0000000008000000L,0x0000000000010000L});
-        public static final BitSet FOLLOW_ruleSpecification_in_ruleObjective5818 = new BitSet(new long[]{0x0000000000400000L});
-        public static final BitSet FOLLOW_27_in_ruleObjective5837 = new BitSet(new long[]{0x0000000008000000L,0x0000000000010000L});
-        public static final BitSet FOLLOW_ruleSpecification_in_ruleObjective5858 = new BitSet(new long[]{0x0000000010020000L});
-        public static final BitSet FOLLOW_17_in_ruleObjective5871 = new BitSet(new long[]{0x0000000008000000L,0x0000000000010000L});
-        public static final BitSet FOLLOW_ruleSpecification_in_ruleObjective5892 = new BitSet(new long[]{0x0000000010020000L});
-        public static final BitSet FOLLOW_28_in_ruleObjective5906 = new BitSet(new long[]{0x0000000000400000L});
-        public static final BitSet FOLLOW_22_in_ruleObjective5920 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleEvent_in_entryRuleEvent5956 = new BitSet(new long[]{0x0000000000000000L});
-        public static final BitSet FOLLOW_EOF_in_entryRuleEvent5966 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleEvent6012 = new BitSet(new long[]{0x0000000000001002L});
-        public static final BitSet FOLLOW_12_in_ruleEvent6025 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleEvent6046 = new BitSet(new long[]{0x0000000000002000L});
-        public static final BitSet FOLLOW_13_in_ruleEvent6058 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleWeightedTactic_in_entryRuleWeightedTactic6096 = new BitSet(new long[]{0x0000000000000000L});
-        public static final BitSet FOLLOW_EOF_in_entryRuleWeightedTactic6106 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleWeightedTactic6152 = new BitSet(new long[]{0x0000000004001000L});
-        public static final BitSet FOLLOW_12_in_ruleWeightedTactic6165 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleWeightedTactic6186 = new BitSet(new long[]{0x0000000000002000L});
-        public static final BitSet FOLLOW_13_in_ruleWeightedTactic6198 = new BitSet(new long[]{0x0000000004000000L});
-        public static final BitSet FOLLOW_26_in_ruleWeightedTactic6212 = new BitSet(new long[]{0x0000000008000000L});
-        public static final BitSet FOLLOW_27_in_ruleWeightedTactic6224 = new BitSet(new long[]{0x0000000000000030L,0x0000000000000400L});
-        public static final BitSet FOLLOW_74_in_ruleWeightedTactic6237 = new BitSet(new long[]{0x0000000004000000L});
-        public static final BitSet FOLLOW_26_in_ruleWeightedTactic6249 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleWeightedTactic6274 = new BitSet(new long[]{0x0000000000020000L});
-        public static final BitSet FOLLOW_17_in_ruleWeightedTactic6286 = new BitSet(new long[]{0x6000000000000040L,0x0000000000000800L});
-        public static final BitSet FOLLOW_75_in_ruleWeightedTactic6299 = new BitSet(new long[]{0x0000000004000000L});
-        public static final BitSet FOLLOW_26_in_ruleWeightedTactic6311 = new BitSet(new long[]{0x6000000000000040L});
-        public static final BitSet FOLLOW_ruleEDouble_in_ruleWeightedTactic6334 = new BitSet(new long[]{0x0000000000020000L});
-        public static final BitSet FOLLOW_17_in_ruleWeightedTactic6346 = new BitSet(new long[]{0x6000000000000040L,0x0000000000001000L});
-        public static final BitSet FOLLOW_76_in_ruleWeightedTactic6359 = new BitSet(new long[]{0x0000000004000000L});
-        public static final BitSet FOLLOW_26_in_ruleWeightedTactic6371 = new BitSet(new long[]{0x6000000000000040L});
-        public static final BitSet FOLLOW_ruleEDouble_in_ruleWeightedTactic6394 = new BitSet(new long[]{0x0000000010020000L});
-        public static final BitSet FOLLOW_17_in_ruleWeightedTactic6407 = new BitSet(new long[]{0x0000000000000030L,0x0000000000002000L});
-        public static final BitSet FOLLOW_77_in_ruleWeightedTactic6420 = new BitSet(new long[]{0x0000000004000000L});
-        public static final BitSet FOLLOW_26_in_ruleWeightedTactic6432 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleWeightedTactic6457 = new BitSet(new long[]{0x0000000010000000L});
-        public static final BitSet FOLLOW_28_in_ruleWeightedTactic6471 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleWeightingFunction_in_entryRuleWeightingFunction6507 = new BitSet(new long[]{0x0000000000000000L});
-        public static final BitSet FOLLOW_EOF_in_entryRuleWeightingFunction6517 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleWeightingFunction6563 = new BitSet(new long[]{0x0000000004001000L});
-        public static final BitSet FOLLOW_12_in_ruleWeightingFunction6576 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleWeightingFunction6597 = new BitSet(new long[]{0x0000000000002000L});
-        public static final BitSet FOLLOW_13_in_ruleWeightingFunction6609 = new BitSet(new long[]{0x0000000004000000L});
-        public static final BitSet FOLLOW_26_in_ruleWeightingFunction6623 = new BitSet(new long[]{0x0000000008000000L});
-        public static final BitSet FOLLOW_27_in_ruleWeightingFunction6635 = new BitSet(new long[]{0x0000000000000000L,0x0000000000004000L});
-        public static final BitSet FOLLOW_78_in_ruleWeightingFunction6647 = new BitSet(new long[]{0x0000000004000000L});
-        public static final BitSet FOLLOW_26_in_ruleWeightingFunction6659 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleWeightingFunction6680 = new BitSet(new long[]{0x0000000000000000L,0x0000000000008000L});
-        public static final BitSet FOLLOW_79_in_ruleWeightingFunction6692 = new BitSet(new long[]{0x0000000004000000L});
-        public static final BitSet FOLLOW_26_in_ruleWeightingFunction6704 = new BitSet(new long[]{0x0000000008000000L});
-        public static final BitSet FOLLOW_27_in_ruleWeightingFunction6716 = new BitSet(new long[]{0x0000000000000030L,0x0000000000400000L});
-        public static final BitSet FOLLOW_ruleWeightedMetric_in_ruleWeightingFunction6737 = new BitSet(new long[]{0x0000000010020000L});
-        public static final BitSet FOLLOW_17_in_ruleWeightingFunction6750 = new BitSet(new long[]{0x0000000000000030L,0x0000000000400000L});
-        public static final BitSet FOLLOW_ruleWeightedMetric_in_ruleWeightingFunction6771 = new BitSet(new long[]{0x0000000010020000L});
-        public static final BitSet FOLLOW_28_in_ruleWeightingFunction6785 = new BitSet(new long[]{0x0000000010000000L});
-        public static final BitSet FOLLOW_28_in_ruleWeightingFunction6797 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleSpecification_in_entryRuleSpecification6833 = new BitSet(new long[]{0x0000000000000000L});
-        public static final BitSet FOLLOW_EOF_in_entryRuleSpecification6843 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_80_in_ruleSpecification6881 = new BitSet(new long[]{0x0000000008000000L});
-        public static final BitSet FOLLOW_27_in_ruleSpecification6895 = new BitSet(new long[]{0x0000000000000030L,0x0000000000020000L});
-        public static final BitSet FOLLOW_81_in_ruleSpecification6908 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleSpecification6933 = new BitSet(new long[]{0x0000000000020000L});
-        public static final BitSet FOLLOW_17_in_ruleSpecification6945 = new BitSet(new long[]{0x0000000000000000L,0x00001FFE00040000L});
-        public static final BitSet FOLLOW_82_in_ruleSpecification6958 = new BitSet(new long[]{0x0000000000000000L,0x00001FFE00040000L});
-        public static final BitSet FOLLOW_ruleRelationalOperator_in_ruleSpecification6981 = new BitSet(new long[]{0x0000000000020000L});
-        public static final BitSet FOLLOW_17_in_ruleSpecification6993 = new BitSet(new long[]{0x6000002000000040L});
-        public static final BitSet FOLLOW_37_in_ruleSpecification7006 = new BitSet(new long[]{0x6000000000000040L});
-        public static final BitSet FOLLOW_ruleEDouble_in_ruleSpecification7029 = new BitSet(new long[]{0x0000000010000000L});
-        public static final BitSet FOLLOW_28_in_ruleSpecification7041 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleEDate_in_entryRuleEDate7084 = new BitSet(new long[]{0x0000000000000000L});
-        public static final BitSet FOLLOW_EOF_in_entryRuleEDate7095 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_83_in_ruleEDate7132 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleMetricValue_in_entryRuleMetricValue7171 = new BitSet(new long[]{0x0000000000000000L});
-        public static final BitSet FOLLOW_EOF_in_entryRuleMetricValue7181 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_84_in_ruleMetricValue7218 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleMetricValue7239 = new BitSet(new long[]{0x0000000000005000L});
-        public static final BitSet FOLLOW_12_in_ruleMetricValue7252 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleMetricValue7273 = new BitSet(new long[]{0x0000000000002000L});
-        public static final BitSet FOLLOW_13_in_ruleMetricValue7285 = new BitSet(new long[]{0x0000000000004000L});
-        public static final BitSet FOLLOW_14_in_ruleMetricValue7299 = new BitSet(new long[]{0x0000002000000000L});
-        public static final BitSet FOLLOW_37_in_ruleMetricValue7311 = new BitSet(new long[]{0x6000000000000040L});
-        public static final BitSet FOLLOW_ruleEDouble_in_ruleMetricValue7332 = new BitSet(new long[]{0x0000000000000000L,0x0000000000200000L});
-        public static final BitSet FOLLOW_85_in_ruleMetricValue7344 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleMetricValue7367 = new BitSet(new long[]{0x0000000000000000L,0x0000000000020000L});
-        public static final BitSet FOLLOW_81_in_ruleMetricValue7379 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleMetricValue7402 = new BitSet(new long[]{0x0000000000400000L});
-        public static final BitSet FOLLOW_22_in_ruleMetricValue7414 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleWeightedMetric_in_entryRuleWeightedMetric7452 = new BitSet(new long[]{0x0000000000000000L});
-        public static final BitSet FOLLOW_EOF_in_entryRuleWeightedMetric7462 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_86_in_ruleWeightedMetric7500 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleWeightedMetric7523 = new BitSet(new long[]{0x0000000004001000L});
-        public static final BitSet FOLLOW_12_in_ruleWeightedMetric7536 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleWeightedMetric7557 = new BitSet(new long[]{0x0000000000002000L});
-        public static final BitSet FOLLOW_13_in_ruleWeightedMetric7569 = new BitSet(new long[]{0x0000000004000000L});
-        public static final BitSet FOLLOW_26_in_ruleWeightedMetric7583 = new BitSet(new long[]{0x0000000008000000L});
-        public static final BitSet FOLLOW_27_in_ruleWeightedMetric7595 = new BitSet(new long[]{0x0000000000000030L,0x0000000000020000L});
-        public static final BitSet FOLLOW_81_in_ruleWeightedMetric7608 = new BitSet(new long[]{0x0000000004000000L});
-        public static final BitSet FOLLOW_26_in_ruleWeightedMetric7620 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleWeightedMetric7645 = new BitSet(new long[]{0x0000000000020000L});
-        public static final BitSet FOLLOW_17_in_ruleWeightedMetric7657 = new BitSet(new long[]{0x6000000000000040L,0x0000000000800000L});
-        public static final BitSet FOLLOW_87_in_ruleWeightedMetric7670 = new BitSet(new long[]{0x0000000004000000L});
-        public static final BitSet FOLLOW_26_in_ruleWeightedMetric7682 = new BitSet(new long[]{0x6000000000000040L});
-        public static final BitSet FOLLOW_ruleEDouble_in_ruleWeightedMetric7705 = new BitSet(new long[]{0x0000000010000000L});
-        public static final BitSet FOLLOW_28_in_ruleWeightedMetric7717 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_88_in_ruleAdaptationScope7767 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_89_in_ruleAdaptationScope7784 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_90_in_ruleAdaptationScope7801 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_91_in_ruleAdaptationScope7818 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_92_in_ruleAdaptationScope7835 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_93_in_ruleAdaptationScope7852 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_88_in_ruleAdaptationDirection7897 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_94_in_ruleAdaptationDirection7914 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_95_in_ruleAdaptationDirection7931 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_96_in_ruleAdaptationDirection7948 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_97_in_ruleRelationalOperator7993 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_98_in_ruleRelationalOperator8010 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_99_in_ruleRelationalOperator8027 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_100_in_ruleRelationalOperator8044 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_101_in_ruleRelationalOperator8061 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_102_in_ruleRelationalOperator8078 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_103_in_ruleRelationalOperator8095 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_104_in_ruleRelationalOperator8112 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_105_in_ruleRelationalOperator8129 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_106_in_ruleRelationalOperator8146 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_107_in_ruleRelationalOperator8163 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_108_in_ruleRelationalOperator8180 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_11_in_ruleAdaptationProcess144 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_ruleEString_in_ruleAdaptationProcess165 = new BitSet(new long[]{0x0000000000005000L});
+        public static final BitSet FOLLOW_12_in_ruleAdaptationProcess178 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_ruleEString_in_ruleAdaptationProcess199 = new BitSet(new long[]{0x0000000000002000L});
+        public static final BitSet FOLLOW_13_in_ruleAdaptationProcess211 = new BitSet(new long[]{0x0000000000004000L});
+        public static final BitSet FOLLOW_14_in_ruleAdaptationProcess225 = new BitSet(new long[]{0x0000000000048000L});
+        public static final BitSet FOLLOW_15_in_ruleAdaptationProcess238 = new BitSet(new long[]{0x0000000000010000L});
+        public static final BitSet FOLLOW_16_in_ruleAdaptationProcess250 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_ruleParameter_in_ruleAdaptationProcess271 = new BitSet(new long[]{0x0000000000060000L});
+        public static final BitSet FOLLOW_17_in_ruleAdaptationProcess284 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_ruleParameter_in_ruleAdaptationProcess305 = new BitSet(new long[]{0x0000000000060000L});
+        public static final BitSet FOLLOW_18_in_ruleAdaptationProcess321 = new BitSet(new long[]{0x0000000000010000L});
+        public static final BitSet FOLLOW_16_in_ruleAdaptationProcess333 = new BitSet(new long[]{0x0000004000000000L});
+        public static final BitSet FOLLOW_ruleOverallGoal_in_ruleAdaptationProcess354 = new BitSet(new long[]{0x0000000000080000L});
+        public static final BitSet FOLLOW_19_in_ruleAdaptationProcess366 = new BitSet(new long[]{0x0000000000010000L});
+        public static final BitSet FOLLOW_16_in_ruleAdaptationProcess378 = new BitSet(new long[]{0x0000000040000030L});
+        public static final BitSet FOLLOW_ruleAction_in_ruleAdaptationProcess399 = new BitSet(new long[]{0x0000000000120000L});
+        public static final BitSet FOLLOW_17_in_ruleAdaptationProcess412 = new BitSet(new long[]{0x0000000040000030L});
+        public static final BitSet FOLLOW_ruleAction_in_ruleAdaptationProcess433 = new BitSet(new long[]{0x0000000000120000L});
+        public static final BitSet FOLLOW_20_in_ruleAdaptationProcess447 = new BitSet(new long[]{0x0000000000010000L});
+        public static final BitSet FOLLOW_16_in_ruleAdaptationProcess459 = new BitSet(new long[]{0x0000000000800030L});
+        public static final BitSet FOLLOW_ruleTactic_in_ruleAdaptationProcess480 = new BitSet(new long[]{0x0000000000220000L});
+        public static final BitSet FOLLOW_17_in_ruleAdaptationProcess493 = new BitSet(new long[]{0x0000000000800030L});
+        public static final BitSet FOLLOW_ruleTactic_in_ruleAdaptationProcess514 = new BitSet(new long[]{0x0000000000220000L});
+        public static final BitSet FOLLOW_21_in_ruleAdaptationProcess528 = new BitSet(new long[]{0x0000000000010000L});
+        public static final BitSet FOLLOW_16_in_ruleAdaptationProcess540 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_ruleStrategy_in_ruleAdaptationProcess561 = new BitSet(new long[]{0x0000000000420000L});
+        public static final BitSet FOLLOW_17_in_ruleAdaptationProcess574 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_ruleStrategy_in_ruleAdaptationProcess595 = new BitSet(new long[]{0x0000000000420000L});
+        public static final BitSet FOLLOW_22_in_ruleAdaptationProcess609 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleAbstractControlFlowElement_in_entryRuleAbstractControlFlowElement647 = new BitSet(new long[]{0x0000000000000000L});
+        public static final BitSet FOLLOW_EOF_in_entryRuleAbstractControlFlowElement657 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleStartAction_in_ruleAbstractControlFlowElement704 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleStopAction_in_ruleAbstractControlFlowElement731 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleLoopAction_in_ruleAbstractControlFlowElement758 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleBranchAction_in_ruleAbstractControlFlowElement785 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleActionReference_in_ruleAbstractControlFlowElement812 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleVariationType_in_entryRuleVariationType847 = new BitSet(new long[]{0x0000000000000000L});
+        public static final BitSet FOLLOW_EOF_in_entryRuleVariationType857 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rulePropertyRange_in_ruleVariationType904 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleSetOfConfigurations_in_ruleVariationType931 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleEString_in_entryRuleEString967 = new BitSet(new long[]{0x0000000000000000L});
+        public static final BitSet FOLLOW_EOF_in_entryRuleEString978 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_RULE_STRING_in_ruleEString1018 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_RULE_ID_in_ruleEString1044 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleTactic_in_entryRuleTactic1089 = new BitSet(new long[]{0x0000000000000000L});
+        public static final BitSet FOLLOW_EOF_in_entryRuleTactic1099 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_23_in_ruleTactic1137 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_ruleEString_in_ruleTactic1160 = new BitSet(new long[]{0x0000000000005000L});
+        public static final BitSet FOLLOW_12_in_ruleTactic1173 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_ruleEString_in_ruleTactic1194 = new BitSet(new long[]{0x0000000000002000L});
+        public static final BitSet FOLLOW_13_in_ruleTactic1206 = new BitSet(new long[]{0x0000000000004000L});
+        public static final BitSet FOLLOW_14_in_ruleTactic1220 = new BitSet(new long[]{0x0000000001000000L});
+        public static final BitSet FOLLOW_24_in_ruleTactic1232 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_ruleAdaptationPlan_in_ruleTactic1253 = new BitSet(new long[]{0x0000000022400000L});
+        public static final BitSet FOLLOW_25_in_ruleTactic1266 = new BitSet(new long[]{0x0000000004000000L});
+        public static final BitSet FOLLOW_26_in_ruleTactic1278 = new BitSet(new long[]{0x0000000008000000L});
+        public static final BitSet FOLLOW_27_in_ruleTactic1290 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_ruleEString_in_ruleTactic1313 = new BitSet(new long[]{0x0000000010020000L});
+        public static final BitSet FOLLOW_17_in_ruleTactic1326 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_ruleEString_in_ruleTactic1349 = new BitSet(new long[]{0x0000000010020000L});
+        public static final BitSet FOLLOW_28_in_ruleTactic1363 = new BitSet(new long[]{0x0000000020400000L});
+        public static final BitSet FOLLOW_29_in_ruleTactic1378 = new BitSet(new long[]{0x0000000004000000L});
+        public static final BitSet FOLLOW_26_in_ruleTactic1390 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_ruleEString_in_ruleTactic1413 = new BitSet(new long[]{0x0000000000400000L});
+        public static final BitSet FOLLOW_22_in_ruleTactic1427 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleAction_in_entryRuleAction1463 = new BitSet(new long[]{0x0000000000000000L});
+        public static final BitSet FOLLOW_EOF_in_entryRuleAction1473 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_30_in_ruleAction1511 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_ruleEString_in_ruleAction1534 = new BitSet(new long[]{0x0000000000005000L});
+        public static final BitSet FOLLOW_12_in_ruleAction1547 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_ruleEString_in_ruleAction1568 = new BitSet(new long[]{0x0000000000002000L});
+        public static final BitSet FOLLOW_13_in_ruleAction1580 = new BitSet(new long[]{0x0000000000004000L});
+        public static final BitSet FOLLOW_14_in_ruleAction1594 = new BitSet(new long[]{0x0000000080000000L});
+        public static final BitSet FOLLOW_31_in_ruleAction1606 = new BitSet(new long[]{0x0000000004000000L});
+        public static final BitSet FOLLOW_26_in_ruleAction1618 = new BitSet(new long[]{0x0000000008000000L});
+        public static final BitSet FOLLOW_ruleAdaptationActionOperation_in_ruleAction1639 = new BitSet(new long[]{0x0000000100000000L});
+        public static final BitSet FOLLOW_32_in_ruleAction1651 = new BitSet(new long[]{0x0000000004000000L});
+        public static final BitSet FOLLOW_26_in_ruleAction1663 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_ruleEString_in_ruleAction1686 = new BitSet(new long[]{0x0000000022400000L});
+        public static final BitSet FOLLOW_25_in_ruleAction1699 = new BitSet(new long[]{0x0000000004000000L});
+        public static final BitSet FOLLOW_26_in_ruleAction1711 = new BitSet(new long[]{0x0000000008000000L});
+        public static final BitSet FOLLOW_27_in_ruleAction1723 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_ruleEString_in_ruleAction1746 = new BitSet(new long[]{0x0000000010020000L});
+        public static final BitSet FOLLOW_17_in_ruleAction1759 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_ruleEString_in_ruleAction1782 = new BitSet(new long[]{0x0000000010020000L});
+        public static final BitSet FOLLOW_28_in_ruleAction1796 = new BitSet(new long[]{0x0000000020400000L});
+        public static final BitSet FOLLOW_29_in_ruleAction1811 = new BitSet(new long[]{0x0000000004000000L});
+        public static final BitSet FOLLOW_26_in_ruleAction1823 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_ruleEString_in_ruleAction1846 = new BitSet(new long[]{0x0000000000400000L});
+        public static final BitSet FOLLOW_22_in_ruleAction1860 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleStrategy_in_entryRuleStrategy1896 = new BitSet(new long[]{0x0000000000000000L});
+        public static final BitSet FOLLOW_EOF_in_entryRuleStrategy1906 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleEString_in_ruleStrategy1952 = new BitSet(new long[]{0x0000000000005000L});
+        public static final BitSet FOLLOW_12_in_ruleStrategy1965 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_ruleEString_in_ruleStrategy1986 = new BitSet(new long[]{0x0000000000002000L});
+        public static final BitSet FOLLOW_13_in_ruleStrategy1998 = new BitSet(new long[]{0x0000000000004000L});
+        public static final BitSet FOLLOW_14_in_ruleStrategy2012 = new BitSet(new long[]{0x0000000200000000L});
+        public static final BitSet FOLLOW_33_in_ruleStrategy2024 = new BitSet(new long[]{0x0000000004000000L});
+        public static final BitSet FOLLOW_26_in_ruleStrategy2036 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_ruleEString_in_ruleStrategy2059 = new BitSet(new long[]{0x0000000400000000L});
+        public static final BitSet FOLLOW_34_in_ruleStrategy2071 = new BitSet(new long[]{0x0000000004000000L});
+        public static final BitSet FOLLOW_26_in_ruleStrategy2083 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_ruleEvent_in_ruleStrategy2104 = new BitSet(new long[]{0x0000000000100000L});
+        public static final BitSet FOLLOW_20_in_ruleStrategy2116 = new BitSet(new long[]{0x0000000004000000L});
+        public static final BitSet FOLLOW_26_in_ruleStrategy2128 = new BitSet(new long[]{0x0000000008000000L});
+        public static final BitSet FOLLOW_27_in_ruleStrategy2140 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_ruleWeightedTactic_in_ruleStrategy2161 = new BitSet(new long[]{0x0000000010020000L});
+        public static final BitSet FOLLOW_17_in_ruleStrategy2174 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_ruleWeightedTactic_in_ruleStrategy2195 = new BitSet(new long[]{0x0000000010020000L});
+        public static final BitSet FOLLOW_28_in_ruleStrategy2209 = new BitSet(new long[]{0x0000000800000030L});
+        public static final BitSet FOLLOW_35_in_ruleStrategy2222 = new BitSet(new long[]{0x0000000800000030L});
+        public static final BitSet FOLLOW_ruleWeightingFunction_in_ruleStrategy2245 = new BitSet(new long[]{0x0000000000400000L});
+        public static final BitSet FOLLOW_22_in_ruleStrategy2257 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleParameter_in_entryRuleParameter2293 = new BitSet(new long[]{0x0000000000000000L});
+        public static final BitSet FOLLOW_EOF_in_entryRuleParameter2303 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleEString_in_ruleParameter2349 = new BitSet(new long[]{0x0000000000004000L});
+        public static final BitSet FOLLOW_14_in_ruleParameter2361 = new BitSet(new long[]{0x0000001000000030L});
+        public static final BitSet FOLLOW_36_in_ruleParameter2374 = new BitSet(new long[]{0x0000000004000000L});
+        public static final BitSet FOLLOW_26_in_ruleParameter2386 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_ruleEString_in_ruleParameter2409 = new BitSet(new long[]{0x0000000000420000L});
+        public static final BitSet FOLLOW_17_in_ruleParameter2422 = new BitSet(new long[]{0x0000002000000030L});
+        public static final BitSet FOLLOW_37_in_ruleParameter2435 = new BitSet(new long[]{0x0000000004000000L});
+        public static final BitSet FOLLOW_26_in_ruleParameter2447 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_ruleEString_in_ruleParameter2470 = new BitSet(new long[]{0x0000000000400000L});
+        public static final BitSet FOLLOW_22_in_ruleParameter2484 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleOverallGoal_in_entryRuleOverallGoal2520 = new BitSet(new long[]{0x0000000000000000L});
+        public static final BitSet FOLLOW_EOF_in_entryRuleOverallGoal2530 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_38_in_ruleOverallGoal2567 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_ruleEString_in_ruleOverallGoal2588 = new BitSet(new long[]{0x0000008000000000L});
+        public static final BitSet FOLLOW_39_in_ruleOverallGoal2600 = new BitSet(new long[]{0x0000000004000000L});
+        public static final BitSet FOLLOW_26_in_ruleOverallGoal2612 = new BitSet(new long[]{0x0000000008000000L});
+        public static final BitSet FOLLOW_27_in_ruleOverallGoal2624 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_ruleObjective_in_ruleOverallGoal2645 = new BitSet(new long[]{0x0000000010020000L});
+        public static final BitSet FOLLOW_17_in_ruleOverallGoal2658 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_ruleObjective_in_ruleOverallGoal2679 = new BitSet(new long[]{0x0000000010020000L});
+        public static final BitSet FOLLOW_28_in_ruleOverallGoal2693 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleImportDeclaration_in_entryRuleImportDeclaration2729 = new BitSet(new long[]{0x0000000000000000L});
+        public static final BitSet FOLLOW_EOF_in_entryRuleImportDeclaration2739 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_40_in_ruleImportDeclaration2776 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_ruleEString_in_ruleImportDeclaration2797 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleAdaptationPlan_in_entryRuleAdaptationPlan2833 = new BitSet(new long[]{0x0000000000000000L});
+        public static final BitSet FOLLOW_EOF_in_entryRuleAdaptationPlan2843 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleEString_in_ruleAdaptationPlan2889 = new BitSet(new long[]{0x0000000004001000L});
+        public static final BitSet FOLLOW_12_in_ruleAdaptationPlan2902 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_ruleEString_in_ruleAdaptationPlan2923 = new BitSet(new long[]{0x0000000000002000L});
+        public static final BitSet FOLLOW_13_in_ruleAdaptationPlan2935 = new BitSet(new long[]{0x0000000004000000L});
+        public static final BitSet FOLLOW_26_in_ruleAdaptationPlan2949 = new BitSet(new long[]{0x0000000008000002L});
+        public static final BitSet FOLLOW_27_in_ruleAdaptationPlan2962 = new BitSet(new long[]{0x0010DE0000001000L});
+        public static final BitSet FOLLOW_ruleAbstractControlFlowElement_in_ruleAdaptationPlan2983 = new BitSet(new long[]{0x0000000010020000L});
+        public static final BitSet FOLLOW_17_in_ruleAdaptationPlan2996 = new BitSet(new long[]{0x0010DE0000001000L});
+        public static final BitSet FOLLOW_ruleAbstractControlFlowElement_in_ruleAdaptationPlan3017 = new BitSet(new long[]{0x0000000010020000L});
+        public static final BitSet FOLLOW_28_in_ruleAdaptationPlan3031 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleStartAction_in_entryRuleStartAction3069 = new BitSet(new long[]{0x0000000000000000L});
+        public static final BitSet FOLLOW_EOF_in_entryRuleStartAction3079 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_41_in_ruleStartAction3125 = new BitSet(new long[]{0x0000000000001002L});
+        public static final BitSet FOLLOW_12_in_ruleStartAction3138 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_ruleEString_in_ruleStartAction3159 = new BitSet(new long[]{0x0000000000002000L});
+        public static final BitSet FOLLOW_13_in_ruleStartAction3171 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleStopAction_in_entryRuleStopAction3209 = new BitSet(new long[]{0x0000000000000000L});
+        public static final BitSet FOLLOW_EOF_in_entryRuleStopAction3219 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_42_in_ruleStopAction3265 = new BitSet(new long[]{0x0000000000001002L});
+        public static final BitSet FOLLOW_12_in_ruleStopAction3278 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_ruleEString_in_ruleStopAction3299 = new BitSet(new long[]{0x0000000000002000L});
+        public static final BitSet FOLLOW_13_in_ruleStopAction3311 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleLoopAction_in_entryRuleLoopAction3349 = new BitSet(new long[]{0x0000000000000000L});
+        public static final BitSet FOLLOW_EOF_in_entryRuleLoopAction3359 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_43_in_ruleLoopAction3397 = new BitSet(new long[]{0x0000100000001000L});
+        public static final BitSet FOLLOW_12_in_ruleLoopAction3412 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_ruleEString_in_ruleLoopAction3433 = new BitSet(new long[]{0x0000000000002000L});
+        public static final BitSet FOLLOW_13_in_ruleLoopAction3445 = new BitSet(new long[]{0x0000100000000000L});
+        public static final BitSet FOLLOW_44_in_ruleLoopAction3459 = new BitSet(new long[]{0x0000200000000000L});
+        public static final BitSet FOLLOW_45_in_ruleLoopAction3471 = new BitSet(new long[]{0x0000000004000000L});
+        public static final BitSet FOLLOW_26_in_ruleLoopAction3483 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_ruleEString_in_ruleLoopAction3506 = new BitSet(new long[]{0x0000000008000000L});
+        public static final BitSet FOLLOW_27_in_ruleLoopAction3518 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_ruleAdaptationPlan_in_ruleLoopAction3539 = new BitSet(new long[]{0x0000000010000000L});
+        public static final BitSet FOLLOW_28_in_ruleLoopAction3551 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleBranchAction_in_entryRuleBranchAction3587 = new BitSet(new long[]{0x0000000000000000L});
+        public static final BitSet FOLLOW_EOF_in_entryRuleBranchAction3597 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_46_in_ruleBranchAction3635 = new BitSet(new long[]{0x0000800000001000L});
+        public static final BitSet FOLLOW_12_in_ruleBranchAction3650 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_ruleEString_in_ruleBranchAction3671 = new BitSet(new long[]{0x0000000000002000L});
+        public static final BitSet FOLLOW_13_in_ruleBranchAction3683 = new BitSet(new long[]{0x0000800000000000L});
+        public static final BitSet FOLLOW_47_in_ruleBranchAction3697 = new BitSet(new long[]{0x0000000008000000L});
+        public static final BitSet FOLLOW_27_in_ruleBranchAction3709 = new BitSet(new long[]{0x0001000000000000L});
+        public static final BitSet FOLLOW_48_in_ruleBranchAction3721 = new BitSet(new long[]{0x0000000004000000L});
+        public static final BitSet FOLLOW_26_in_ruleBranchAction3733 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_ruleEString_in_ruleBranchAction3756 = new BitSet(new long[]{0x0000000000020000L});
+        public static final BitSet FOLLOW_17_in_ruleBranchAction3768 = new BitSet(new long[]{0x0002000000000000L});
+        public static final BitSet FOLLOW_49_in_ruleBranchAction3780 = new BitSet(new long[]{0x0000000004000000L});
+        public static final BitSet FOLLOW_26_in_ruleBranchAction3792 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_ruleEString_in_ruleBranchAction3813 = new BitSet(new long[]{0x0000000010000000L});
+        public static final BitSet FOLLOW_28_in_ruleBranchAction3825 = new BitSet(new long[]{0x0004000000000000L});
+        public static final BitSet FOLLOW_50_in_ruleBranchAction3837 = new BitSet(new long[]{0x0000000008000000L});
+        public static final BitSet FOLLOW_27_in_ruleBranchAction3849 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_ruleAdaptationPlan_in_ruleBranchAction3870 = new BitSet(new long[]{0x0000000010000000L});
+        public static final BitSet FOLLOW_28_in_ruleBranchAction3882 = new BitSet(new long[]{0x0008000000000000L});
+        public static final BitSet FOLLOW_51_in_ruleBranchAction3894 = new BitSet(new long[]{0x0000000008000000L});
+        public static final BitSet FOLLOW_27_in_ruleBranchAction3906 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_ruleAdaptationPlan_in_ruleBranchAction3927 = new BitSet(new long[]{0x0000000010000000L});
+        public static final BitSet FOLLOW_28_in_ruleBranchAction3939 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleActionReference_in_entryRuleActionReference3975 = new BitSet(new long[]{0x0000000000000000L});
+        public static final BitSet FOLLOW_EOF_in_entryRuleActionReference3985 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_52_in_ruleActionReference4022 = new BitSet(new long[]{0x0000000008001000L});
+        public static final BitSet FOLLOW_12_in_ruleActionReference4035 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_ruleEString_in_ruleActionReference4056 = new BitSet(new long[]{0x0000000000002000L});
+        public static final BitSet FOLLOW_13_in_ruleActionReference4068 = new BitSet(new long[]{0x0000000008000000L});
+        public static final BitSet FOLLOW_27_in_ruleActionReference4082 = new BitSet(new long[]{0x0020000000000000L});
+        public static final BitSet FOLLOW_53_in_ruleActionReference4094 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_ruleEString_in_ruleActionReference4117 = new BitSet(new long[]{0x0000000010000000L});
+        public static final BitSet FOLLOW_28_in_ruleActionReference4129 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleAdaptationActionOperation_in_entryRuleAdaptationActionOperation4165 = new BitSet(new long[]{0x0000000000000000L});
+        public static final BitSet FOLLOW_EOF_in_entryRuleAdaptationActionOperation4175 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_27_in_ruleAdaptationActionOperation4212 = new BitSet(new long[]{0x0000000000000000L,0x00000001C1000000L});
+        public static final BitSet FOLLOW_ruleAdaptationDirection_in_ruleAdaptationActionOperation4233 = new BitSet(new long[]{0x0000000000020000L});
+        public static final BitSet FOLLOW_17_in_ruleAdaptationActionOperation4245 = new BitSet(new long[]{0x0000000000000000L,0x000000003F000000L});
+        public static final BitSet FOLLOW_ruleAdaptationScope_in_ruleAdaptationActionOperation4266 = new BitSet(new long[]{0x0000000010000000L});
+        public static final BitSet FOLLOW_28_in_ruleAdaptationActionOperation4278 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleModelVariableConfigurationRange_in_entryRuleModelVariableConfigurationRange4314 = new BitSet(new long[]{0x0000000000000000L});
+        public static final BitSet FOLLOW_EOF_in_entryRuleModelVariableConfigurationRange4324 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_54_in_ruleModelVariableConfigurationRange4361 = new BitSet(new long[]{0x0000000000005000L});
+        public static final BitSet FOLLOW_12_in_ruleModelVariableConfigurationRange4374 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_ruleEString_in_ruleModelVariableConfigurationRange4395 = new BitSet(new long[]{0x0000000000002000L});
+        public static final BitSet FOLLOW_13_in_ruleModelVariableConfigurationRange4407 = new BitSet(new long[]{0x0000000000004000L});
+        public static final BitSet FOLLOW_14_in_ruleModelVariableConfigurationRange4421 = new BitSet(new long[]{0x0080000000000000L});
+        public static final BitSet FOLLOW_55_in_ruleModelVariableConfigurationRange4433 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_ruleEString_in_ruleModelVariableConfigurationRange4454 = new BitSet(new long[]{0x0100000000000000L});
+        public static final BitSet FOLLOW_56_in_ruleModelVariableConfigurationRange4466 = new BitSet(new long[]{0x6000000000000040L});
+        public static final BitSet FOLLOW_ruleEDouble_in_ruleModelVariableConfigurationRange4487 = new BitSet(new long[]{0x0200000000000000L});
+        public static final BitSet FOLLOW_57_in_ruleModelVariableConfigurationRange4499 = new BitSet(new long[]{0x6000000000000040L});
+        public static final BitSet FOLLOW_ruleEDouble_in_ruleModelVariableConfigurationRange4520 = new BitSet(new long[]{0x0400000000000000L});
+        public static final BitSet FOLLOW_58_in_ruleModelVariableConfigurationRange4532 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_ruleEString_in_ruleModelVariableConfigurationRange4555 = new BitSet(new long[]{0x0000000000400000L});
+        public static final BitSet FOLLOW_22_in_ruleModelVariableConfigurationRange4567 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleModelEntityConfigurationRange_in_entryRuleModelEntityConfigurationRange4603 = new BitSet(new long[]{0x0000000000000000L});
+        public static final BitSet FOLLOW_EOF_in_entryRuleModelEntityConfigurationRange4613 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_59_in_ruleModelEntityConfigurationRange4650 = new BitSet(new long[]{0x0000000000005000L});
+        public static final BitSet FOLLOW_12_in_ruleModelEntityConfigurationRange4663 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_ruleEString_in_ruleModelEntityConfigurationRange4684 = new BitSet(new long[]{0x0000000000002000L});
+        public static final BitSet FOLLOW_13_in_ruleModelEntityConfigurationRange4696 = new BitSet(new long[]{0x0000000000004000L});
+        public static final BitSet FOLLOW_14_in_ruleModelEntityConfigurationRange4710 = new BitSet(new long[]{0x0080000000000000L});
+        public static final BitSet FOLLOW_55_in_ruleModelEntityConfigurationRange4722 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_ruleEString_in_ruleModelEntityConfigurationRange4743 = new BitSet(new long[]{0x0400000000000000L});
+        public static final BitSet FOLLOW_58_in_ruleModelEntityConfigurationRange4755 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_ruleEString_in_ruleModelEntityConfigurationRange4778 = new BitSet(new long[]{0x1000000000000000L});
+        public static final BitSet FOLLOW_60_in_ruleModelEntityConfigurationRange4790 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000012L});
+        public static final BitSet FOLLOW_ruleVariationType_in_ruleModelEntityConfigurationRange4811 = new BitSet(new long[]{0x0000000000400000L});
+        public static final BitSet FOLLOW_22_in_ruleModelEntityConfigurationRange4823 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleEDouble_in_entryRuleEDouble4860 = new BitSet(new long[]{0x0000000000000000L});
+        public static final BitSet FOLLOW_EOF_in_entryRuleEDouble4871 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_61_in_ruleEDouble4910 = new BitSet(new long[]{0x4000000000000040L});
+        public static final BitSet FOLLOW_RULE_INT_in_ruleEDouble4928 = new BitSet(new long[]{0x4000000000000000L});
+        public static final BitSet FOLLOW_62_in_ruleEDouble4948 = new BitSet(new long[]{0x0000000000000040L});
+        public static final BitSet FOLLOW_RULE_INT_in_ruleEDouble4963 = new BitSet(new long[]{0x8000000000000002L,0x0000000000000001L});
+        public static final BitSet FOLLOW_63_in_ruleEDouble4983 = new BitSet(new long[]{0x2000000000000040L});
+        public static final BitSet FOLLOW_64_in_ruleEDouble5002 = new BitSet(new long[]{0x2000000000000040L});
+        public static final BitSet FOLLOW_61_in_ruleEDouble5017 = new BitSet(new long[]{0x0000000000000040L});
+        public static final BitSet FOLLOW_RULE_INT_in_ruleEDouble5034 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rulePropertyRange_in_entryRulePropertyRange5081 = new BitSet(new long[]{0x0000000000000000L});
+        public static final BitSet FOLLOW_EOF_in_entryRulePropertyRange5091 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_65_in_rulePropertyRange5128 = new BitSet(new long[]{0x0000000000004000L});
+        public static final BitSet FOLLOW_14_in_rulePropertyRange5140 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000004L});
+        public static final BitSet FOLLOW_66_in_rulePropertyRange5152 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000080L});
+        public static final BitSet FOLLOW_ruleOclConstraint_in_rulePropertyRange5173 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000008L});
+        public static final BitSet FOLLOW_67_in_rulePropertyRange5185 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000080L});
+        public static final BitSet FOLLOW_ruleOclConstraint_in_rulePropertyRange5206 = new BitSet(new long[]{0x0000000000400000L});
+        public static final BitSet FOLLOW_22_in_rulePropertyRange5218 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleSetOfConfigurations_in_entryRuleSetOfConfigurations5254 = new BitSet(new long[]{0x0000000000000000L});
+        public static final BitSet FOLLOW_EOF_in_entryRuleSetOfConfigurations5264 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_68_in_ruleSetOfConfigurations5301 = new BitSet(new long[]{0x0000000000004000L});
+        public static final BitSet FOLLOW_14_in_ruleSetOfConfigurations5313 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000060L});
+        public static final BitSet FOLLOW_69_in_ruleSetOfConfigurations5326 = new BitSet(new long[]{0x0000000008000000L});
+        public static final BitSet FOLLOW_27_in_ruleSetOfConfigurations5338 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_ruleEString_in_ruleSetOfConfigurations5361 = new BitSet(new long[]{0x0000000010020000L});
+        public static final BitSet FOLLOW_17_in_ruleSetOfConfigurations5374 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_ruleEString_in_ruleSetOfConfigurations5397 = new BitSet(new long[]{0x0000000010020000L});
+        public static final BitSet FOLLOW_28_in_ruleSetOfConfigurations5411 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000040L});
+        public static final BitSet FOLLOW_70_in_ruleSetOfConfigurations5425 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000080L});
+        public static final BitSet FOLLOW_ruleOclConstraint_in_ruleSetOfConfigurations5446 = new BitSet(new long[]{0x0000000000400000L});
+        public static final BitSet FOLLOW_22_in_ruleSetOfConfigurations5458 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleOclConstraint_in_entryRuleOclConstraint5494 = new BitSet(new long[]{0x0000000000000000L});
+        public static final BitSet FOLLOW_EOF_in_entryRuleOclConstraint5504 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_71_in_ruleOclConstraint5541 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_ruleEString_in_ruleOclConstraint5562 = new BitSet(new long[]{0x0000000000004000L});
+        public static final BitSet FOLLOW_14_in_ruleOclConstraint5574 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000100L});
+        public static final BitSet FOLLOW_72_in_ruleOclConstraint5586 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_ruleEString_in_ruleOclConstraint5607 = new BitSet(new long[]{0x0000000000400000L});
+        public static final BitSet FOLLOW_22_in_ruleOclConstraint5619 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleObjective_in_entryRuleObjective5655 = new BitSet(new long[]{0x0000000000000000L});
+        public static final BitSet FOLLOW_EOF_in_entryRuleObjective5665 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleEString_in_ruleObjective5711 = new BitSet(new long[]{0x0000000000005000L});
+        public static final BitSet FOLLOW_12_in_ruleObjective5724 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_ruleEString_in_ruleObjective5745 = new BitSet(new long[]{0x0000000000002000L});
+        public static final BitSet FOLLOW_13_in_ruleObjective5757 = new BitSet(new long[]{0x0000000000004000L});
+        public static final BitSet FOLLOW_14_in_ruleObjective5771 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000200L});
+        public static final BitSet FOLLOW_73_in_ruleObjective5783 = new BitSet(new long[]{0x0000000004000000L});
+        public static final BitSet FOLLOW_26_in_ruleObjective5795 = new BitSet(new long[]{0x0000000008000000L,0x0000000000010000L});
+        public static final BitSet FOLLOW_ruleSpecification_in_ruleObjective5817 = new BitSet(new long[]{0x0000000000400000L});
+        public static final BitSet FOLLOW_27_in_ruleObjective5836 = new BitSet(new long[]{0x0000000008000000L,0x0000000000010000L});
+        public static final BitSet FOLLOW_ruleSpecification_in_ruleObjective5857 = new BitSet(new long[]{0x0000000010020000L});
+        public static final BitSet FOLLOW_17_in_ruleObjective5870 = new BitSet(new long[]{0x0000000008000000L,0x0000000000010000L});
+        public static final BitSet FOLLOW_ruleSpecification_in_ruleObjective5891 = new BitSet(new long[]{0x0000000010020000L});
+        public static final BitSet FOLLOW_28_in_ruleObjective5905 = new BitSet(new long[]{0x0000000000400000L});
+        public static final BitSet FOLLOW_22_in_ruleObjective5919 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleEvent_in_entryRuleEvent5955 = new BitSet(new long[]{0x0000000000000000L});
+        public static final BitSet FOLLOW_EOF_in_entryRuleEvent5965 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleEString_in_ruleEvent6011 = new BitSet(new long[]{0x0000000000001002L});
+        public static final BitSet FOLLOW_12_in_ruleEvent6024 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_ruleEString_in_ruleEvent6045 = new BitSet(new long[]{0x0000000000002000L});
+        public static final BitSet FOLLOW_13_in_ruleEvent6057 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleWeightedTactic_in_entryRuleWeightedTactic6095 = new BitSet(new long[]{0x0000000000000000L});
+        public static final BitSet FOLLOW_EOF_in_entryRuleWeightedTactic6105 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleEString_in_ruleWeightedTactic6151 = new BitSet(new long[]{0x0000000004001000L});
+        public static final BitSet FOLLOW_12_in_ruleWeightedTactic6164 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_ruleEString_in_ruleWeightedTactic6185 = new BitSet(new long[]{0x0000000000002000L});
+        public static final BitSet FOLLOW_13_in_ruleWeightedTactic6197 = new BitSet(new long[]{0x0000000004000000L});
+        public static final BitSet FOLLOW_26_in_ruleWeightedTactic6211 = new BitSet(new long[]{0x0000000008000000L});
+        public static final BitSet FOLLOW_27_in_ruleWeightedTactic6223 = new BitSet(new long[]{0x0000000000000030L,0x0000000000000400L});
+        public static final BitSet FOLLOW_74_in_ruleWeightedTactic6236 = new BitSet(new long[]{0x0000000004000000L});
+        public static final BitSet FOLLOW_26_in_ruleWeightedTactic6248 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_ruleEString_in_ruleWeightedTactic6273 = new BitSet(new long[]{0x0000000000020000L});
+        public static final BitSet FOLLOW_17_in_ruleWeightedTactic6285 = new BitSet(new long[]{0x6000000000000040L,0x0000000000000800L});
+        public static final BitSet FOLLOW_75_in_ruleWeightedTactic6298 = new BitSet(new long[]{0x0000000004000000L});
+        public static final BitSet FOLLOW_26_in_ruleWeightedTactic6310 = new BitSet(new long[]{0x6000000000000040L});
+        public static final BitSet FOLLOW_ruleEDouble_in_ruleWeightedTactic6333 = new BitSet(new long[]{0x0000000000020000L});
+        public static final BitSet FOLLOW_17_in_ruleWeightedTactic6345 = new BitSet(new long[]{0x6000000000000040L,0x0000000000001000L});
+        public static final BitSet FOLLOW_76_in_ruleWeightedTactic6358 = new BitSet(new long[]{0x0000000004000000L});
+        public static final BitSet FOLLOW_26_in_ruleWeightedTactic6370 = new BitSet(new long[]{0x6000000000000040L});
+        public static final BitSet FOLLOW_ruleEDouble_in_ruleWeightedTactic6393 = new BitSet(new long[]{0x0000000010020000L});
+        public static final BitSet FOLLOW_17_in_ruleWeightedTactic6406 = new BitSet(new long[]{0x0000000000000030L,0x0000000000002000L});
+        public static final BitSet FOLLOW_77_in_ruleWeightedTactic6419 = new BitSet(new long[]{0x0000000004000000L});
+        public static final BitSet FOLLOW_26_in_ruleWeightedTactic6431 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_ruleEString_in_ruleWeightedTactic6456 = new BitSet(new long[]{0x0000000010000000L});
+        public static final BitSet FOLLOW_28_in_ruleWeightedTactic6470 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleWeightingFunction_in_entryRuleWeightingFunction6506 = new BitSet(new long[]{0x0000000000000000L});
+        public static final BitSet FOLLOW_EOF_in_entryRuleWeightingFunction6516 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleEString_in_ruleWeightingFunction6562 = new BitSet(new long[]{0x0000000004001000L});
+        public static final BitSet FOLLOW_12_in_ruleWeightingFunction6575 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_ruleEString_in_ruleWeightingFunction6596 = new BitSet(new long[]{0x0000000000002000L});
+        public static final BitSet FOLLOW_13_in_ruleWeightingFunction6608 = new BitSet(new long[]{0x0000000004000000L});
+        public static final BitSet FOLLOW_26_in_ruleWeightingFunction6622 = new BitSet(new long[]{0x0000000008000000L});
+        public static final BitSet FOLLOW_27_in_ruleWeightingFunction6634 = new BitSet(new long[]{0x0000000000000000L,0x0000000000004000L});
+        public static final BitSet FOLLOW_78_in_ruleWeightingFunction6646 = new BitSet(new long[]{0x0000000004000000L});
+        public static final BitSet FOLLOW_26_in_ruleWeightingFunction6658 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_ruleEString_in_ruleWeightingFunction6679 = new BitSet(new long[]{0x0000000000000000L,0x0000000000008000L});
+        public static final BitSet FOLLOW_79_in_ruleWeightingFunction6691 = new BitSet(new long[]{0x0000000004000000L});
+        public static final BitSet FOLLOW_26_in_ruleWeightingFunction6703 = new BitSet(new long[]{0x0000000008000000L});
+        public static final BitSet FOLLOW_27_in_ruleWeightingFunction6715 = new BitSet(new long[]{0x0000000000000030L,0x0000000000400000L});
+        public static final BitSet FOLLOW_ruleWeightedMetric_in_ruleWeightingFunction6736 = new BitSet(new long[]{0x0000000010020000L});
+        public static final BitSet FOLLOW_17_in_ruleWeightingFunction6749 = new BitSet(new long[]{0x0000000000000030L,0x0000000000400000L});
+        public static final BitSet FOLLOW_ruleWeightedMetric_in_ruleWeightingFunction6770 = new BitSet(new long[]{0x0000000010020000L});
+        public static final BitSet FOLLOW_28_in_ruleWeightingFunction6784 = new BitSet(new long[]{0x0000000010000000L});
+        public static final BitSet FOLLOW_28_in_ruleWeightingFunction6796 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleSpecification_in_entryRuleSpecification6832 = new BitSet(new long[]{0x0000000000000000L});
+        public static final BitSet FOLLOW_EOF_in_entryRuleSpecification6842 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_80_in_ruleSpecification6880 = new BitSet(new long[]{0x0000000008000000L});
+        public static final BitSet FOLLOW_27_in_ruleSpecification6894 = new BitSet(new long[]{0x0000000000000030L,0x0000000000020000L});
+        public static final BitSet FOLLOW_81_in_ruleSpecification6907 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_ruleEString_in_ruleSpecification6932 = new BitSet(new long[]{0x0000000000020000L});
+        public static final BitSet FOLLOW_17_in_ruleSpecification6944 = new BitSet(new long[]{0x0000000000000000L,0x00001FFE00040000L});
+        public static final BitSet FOLLOW_82_in_ruleSpecification6957 = new BitSet(new long[]{0x0000000000000000L,0x00001FFE00040000L});
+        public static final BitSet FOLLOW_ruleRelationalOperator_in_ruleSpecification6980 = new BitSet(new long[]{0x0000000000020000L});
+        public static final BitSet FOLLOW_17_in_ruleSpecification6992 = new BitSet(new long[]{0x6000002000000040L});
+        public static final BitSet FOLLOW_37_in_ruleSpecification7005 = new BitSet(new long[]{0x6000000000000040L});
+        public static final BitSet FOLLOW_ruleEDouble_in_ruleSpecification7028 = new BitSet(new long[]{0x0000000010000000L});
+        public static final BitSet FOLLOW_28_in_ruleSpecification7040 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleEDate_in_entryRuleEDate7083 = new BitSet(new long[]{0x0000000000000000L});
+        public static final BitSet FOLLOW_EOF_in_entryRuleEDate7094 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_83_in_ruleEDate7131 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleMetricValue_in_entryRuleMetricValue7170 = new BitSet(new long[]{0x0000000000000000L});
+        public static final BitSet FOLLOW_EOF_in_entryRuleMetricValue7180 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_84_in_ruleMetricValue7217 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_ruleEString_in_ruleMetricValue7238 = new BitSet(new long[]{0x0000000000005000L});
+        public static final BitSet FOLLOW_12_in_ruleMetricValue7251 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_ruleEString_in_ruleMetricValue7272 = new BitSet(new long[]{0x0000000000002000L});
+        public static final BitSet FOLLOW_13_in_ruleMetricValue7284 = new BitSet(new long[]{0x0000000000004000L});
+        public static final BitSet FOLLOW_14_in_ruleMetricValue7298 = new BitSet(new long[]{0x0000002000000000L});
+        public static final BitSet FOLLOW_37_in_ruleMetricValue7310 = new BitSet(new long[]{0x6000000000000040L});
+        public static final BitSet FOLLOW_ruleEDouble_in_ruleMetricValue7331 = new BitSet(new long[]{0x0000000000000000L,0x0000000000200000L});
+        public static final BitSet FOLLOW_85_in_ruleMetricValue7343 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_ruleEString_in_ruleMetricValue7366 = new BitSet(new long[]{0x0000000000000000L,0x0000000000020000L});
+        public static final BitSet FOLLOW_81_in_ruleMetricValue7378 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_ruleEString_in_ruleMetricValue7401 = new BitSet(new long[]{0x0000000000400000L});
+        public static final BitSet FOLLOW_22_in_ruleMetricValue7413 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleWeightedMetric_in_entryRuleWeightedMetric7451 = new BitSet(new long[]{0x0000000000000000L});
+        public static final BitSet FOLLOW_EOF_in_entryRuleWeightedMetric7461 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_86_in_ruleWeightedMetric7499 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_ruleEString_in_ruleWeightedMetric7522 = new BitSet(new long[]{0x0000000004001000L});
+        public static final BitSet FOLLOW_12_in_ruleWeightedMetric7535 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_ruleEString_in_ruleWeightedMetric7556 = new BitSet(new long[]{0x0000000000002000L});
+        public static final BitSet FOLLOW_13_in_ruleWeightedMetric7568 = new BitSet(new long[]{0x0000000004000000L});
+        public static final BitSet FOLLOW_26_in_ruleWeightedMetric7582 = new BitSet(new long[]{0x0000000008000000L});
+        public static final BitSet FOLLOW_27_in_ruleWeightedMetric7594 = new BitSet(new long[]{0x0000000000000030L,0x0000000000020000L});
+        public static final BitSet FOLLOW_81_in_ruleWeightedMetric7607 = new BitSet(new long[]{0x0000000004000000L});
+        public static final BitSet FOLLOW_26_in_ruleWeightedMetric7619 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_ruleEString_in_ruleWeightedMetric7644 = new BitSet(new long[]{0x0000000000020000L});
+        public static final BitSet FOLLOW_17_in_ruleWeightedMetric7656 = new BitSet(new long[]{0x6000000000000040L,0x0000000000800000L});
+        public static final BitSet FOLLOW_87_in_ruleWeightedMetric7669 = new BitSet(new long[]{0x0000000004000000L});
+        public static final BitSet FOLLOW_26_in_ruleWeightedMetric7681 = new BitSet(new long[]{0x6000000000000040L});
+        public static final BitSet FOLLOW_ruleEDouble_in_ruleWeightedMetric7704 = new BitSet(new long[]{0x0000000010000000L});
+        public static final BitSet FOLLOW_28_in_ruleWeightedMetric7716 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_88_in_ruleAdaptationScope7766 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_89_in_ruleAdaptationScope7783 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_90_in_ruleAdaptationScope7800 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_91_in_ruleAdaptationScope7817 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_92_in_ruleAdaptationScope7834 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_93_in_ruleAdaptationScope7851 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_88_in_ruleAdaptationDirection7896 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_94_in_ruleAdaptationDirection7913 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_95_in_ruleAdaptationDirection7930 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_96_in_ruleAdaptationDirection7947 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_97_in_ruleRelationalOperator7992 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_98_in_ruleRelationalOperator8009 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_99_in_ruleRelationalOperator8026 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_100_in_ruleRelationalOperator8043 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_101_in_ruleRelationalOperator8060 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_102_in_ruleRelationalOperator8077 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_103_in_ruleRelationalOperator8094 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_104_in_ruleRelationalOperator8111 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_105_in_ruleRelationalOperator8128 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_106_in_ruleRelationalOperator8145 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_107_in_ruleRelationalOperator8162 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_108_in_ruleRelationalOperator8179 = new BitSet(new long[]{0x0000000000000002L});
     }
 
 
diff --git a/edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/serializer/AbstractStaLangSemanticSequencer.java b/edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/serializer/AbstractStaLangSemanticSequencer.java
index 9787a3b0..d1e1b515 100644
--- a/edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/serializer/AbstractStaLangSemanticSequencer.java
+++ b/edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/serializer/AbstractStaLangSemanticSequencer.java
@@ -310,7 +310,7 @@ public abstract class AbstractStaLangSemanticSequencer extends AbstractDelegatin
 	 * Constraint:
 	 *     (
 	 *         importDeclaration+=ImportDeclaration* 
-	 *         name=ID 
+	 *         name=EString 
 	 *         id=EString? 
 	 *         (parameters+=Parameter parameters+=Parameter*)? 
 	 *         goal=OverallGoal 
diff --git a/edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/services/StaLangGrammarAccess.java b/edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/services/StaLangGrammarAccess.java
index cd3fc1e2..fc6e7f81 100644
--- a/edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/services/StaLangGrammarAccess.java
+++ b/edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/services/StaLangGrammarAccess.java
@@ -25,7 +25,7 @@ public class StaLangGrammarAccess extends AbstractGrammarElementFinder {
 		private final RuleCall cImportDeclarationImportDeclarationParserRuleCall_0_0 = (RuleCall)cImportDeclarationAssignment_0.eContents().get(0);
 		private final Keyword cAdaptationProcessKeyword_1 = (Keyword)cGroup.eContents().get(1);
 		private final Assignment cNameAssignment_2 = (Assignment)cGroup.eContents().get(2);
-		private final RuleCall cNameIDTerminalRuleCall_2_0 = (RuleCall)cNameAssignment_2.eContents().get(0);
+		private final RuleCall cNameEStringParserRuleCall_2_0 = (RuleCall)cNameAssignment_2.eContents().get(0);
 		private final Group cGroup_3 = (Group)cGroup.eContents().get(3);
 		private final Keyword cIdKeyword_3_0 = (Keyword)cGroup_3.eContents().get(0);
 		private final Assignment cIdAssignment_3_1 = (Assignment)cGroup_3.eContents().get(1);
@@ -72,13 +72,13 @@ public class StaLangGrammarAccess extends AbstractGrammarElementFinder {
 		private final Keyword cRightCurlyBracketKeyword_21 = (Keyword)cGroup.eContents().get(21);
 		
 		//AdaptationProcess:
-		//	importDeclaration+=ImportDeclaration* "AdaptationProcess" name=ID ("[id:" id=EString "]")? "{" ("parameters" ":"
+		//	importDeclaration+=ImportDeclaration* "AdaptationProcess" name=EString ("[id:" id=EString "]")? "{" ("parameters" ":"
 		//	parameters+=Parameter ("," parameters+=Parameter)*)? "goal" ":" goal=OverallGoal "actions" ":" actions+=Action (","
 		//	actions+=Action)* "tactics" ":" tactics+=Tactic ("," tactics+=Tactic)* "strategies" ":" strategies+=Strategy (","
 		//	strategies+=Strategy)* "}";
 		public ParserRule getRule() { return rule; }
 
-		//importDeclaration+=ImportDeclaration* "AdaptationProcess" name=ID ("[id:" id=EString "]")? "{" ("parameters" ":"
+		//importDeclaration+=ImportDeclaration* "AdaptationProcess" name=EString ("[id:" id=EString "]")? "{" ("parameters" ":"
 		//parameters+=Parameter ("," parameters+=Parameter)*)? "goal" ":" goal=OverallGoal "actions" ":" actions+=Action (","
 		//actions+=Action)* "tactics" ":" tactics+=Tactic ("," tactics+=Tactic)* "strategies" ":" strategies+=Strategy (","
 		//strategies+=Strategy)* "}"
@@ -93,11 +93,11 @@ public class StaLangGrammarAccess extends AbstractGrammarElementFinder {
 		//"AdaptationProcess"
 		public Keyword getAdaptationProcessKeyword_1() { return cAdaptationProcessKeyword_1; }
 
-		//name=ID
+		//name=EString
 		public Assignment getNameAssignment_2() { return cNameAssignment_2; }
 
-		//ID
-		public RuleCall getNameIDTerminalRuleCall_2_0() { return cNameIDTerminalRuleCall_2_0; }
+		//EString
+		public RuleCall getNameEStringParserRuleCall_2_0() { return cNameEStringParserRuleCall_2_0; }
 
 		//("[id:" id=EString "]")?
 		public Group getGroup_3() { return cGroup_3; }
@@ -3225,7 +3225,7 @@ public class StaLangGrammarAccess extends AbstractGrammarElementFinder {
 
 	
 	//AdaptationProcess:
-	//	importDeclaration+=ImportDeclaration* "AdaptationProcess" name=ID ("[id:" id=EString "]")? "{" ("parameters" ":"
+	//	importDeclaration+=ImportDeclaration* "AdaptationProcess" name=EString ("[id:" id=EString "]")? "{" ("parameters" ":"
 	//	parameters+=Parameter ("," parameters+=Parameter)*)? "goal" ":" goal=OverallGoal "actions" ":" actions+=Action (","
 	//	actions+=Action)* "tactics" ":" tactics+=Tactic ("," tactics+=Tactic)* "strategies" ":" strategies+=Strategy (","
 	//	strategies+=Strategy)* "}";
-- 
GitLab