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 7fa28a9257fef18531dd9702779e023b1be7dbae..61dc69b247d4987d59697295d518edd7f9f3161f 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().getNameEStringParserRuleCall_2_0()); }
-	ruleEString{ after(grammarAccess.getAdaptationProcessAccess().getNameEStringParserRuleCall_2_0()); }
+{ before(grammarAccess.getAdaptationProcessAccess().getNameIDTerminalRuleCall_2_0()); }
+	RULE_ID{ after(grammarAccess.getAdaptationProcessAccess().getNameIDTerminalRuleCall_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 1976923dcf2aaacab890ed8efe0da9213d56d48f..5e9e6c63d004825b0924cee33c286d71bded17e4 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,25 +34494,21 @@ 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 : ( ruleEString ) ;
+    // ../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 ) ;
     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: ( ( 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: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: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
+            // ../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
             {
-             before(grammarAccess.getAdaptationProcessAccess().getNameEStringParserRuleCall_2_0()); 
-            pushFollow(FollowSets001.FOLLOW_ruleEString_in_rule__AdaptationProcess__NameAssignment_226899);
-            ruleEString();
-
-            state._fsp--;
-
-             after(grammarAccess.getAdaptationProcessAccess().getNameEStringParserRuleCall_2_0()); 
+             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()); 
 
             }
 
@@ -39042,7 +39038,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[]{0x0000000000000030L});
+        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__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});
@@ -39081,7 +39077,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[]{0x0000800000000030L});
+        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__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});
@@ -39093,7 +39089,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[]{0x0000000000000030L});
+        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__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});
@@ -39104,7 +39100,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[]{0x0000000000000030L});
+        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__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});
@@ -39115,7 +39111,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[]{0x0000000000000030L});
+        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__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});
@@ -39123,7 +39119,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[]{0x0000000000000030L});
+        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__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});
@@ -39133,17 +39129,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[]{0x0000800000000030L});
+        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__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[]{0x0000000000000030L});
+        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__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[]{0x0000800000000030L});
+        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__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});
@@ -39155,7 +39151,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[]{0x0000000000000030L});
+        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__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});
@@ -39169,7 +39165,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[]{0x0000000000000030L});
+        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__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});
@@ -39183,7 +39179,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[]{0x0000000000000030L});
+        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__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});
@@ -39194,7 +39190,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[]{0x0000000000000030L});
+        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__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});
@@ -39202,7 +39198,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[]{0x0000000000000030L});
+        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__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});
@@ -39231,7 +39227,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[]{0x0000000000000030L});
+        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__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});
@@ -39245,7 +39241,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[]{0x0000000000000030L});
+        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__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});
@@ -39259,7 +39255,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[]{0x0000000000000030L});
+        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__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});
@@ -39270,7 +39266,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[]{0x0000000000000030L});
+        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__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});
@@ -39278,7 +39274,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[]{0x0000000000000030L});
+        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__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});
@@ -39295,7 +39291,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[]{0x0000000000000030L});
+        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__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});
@@ -39304,7 +39300,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[]{0x0000000000000030L});
+        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__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});
@@ -39316,7 +39312,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[]{0x0000000000000030L});
+        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__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});
@@ -39325,10 +39321,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[]{0x0800000000000030L});
+        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__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[]{0x0800000000000030L});
+        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__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});
@@ -39336,7 +39332,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[]{0x0000000000000030L});
+        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__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});
@@ -39344,7 +39340,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[]{0x0000000000000030L});
+        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__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});
@@ -39352,10 +39348,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[]{0x1000000000000030L});
+        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__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[]{0x1000000000000030L});
+        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__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});
@@ -39371,10 +39367,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[]{0x2000000000000030L});
+        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__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[]{0x2000000000000030L});
+        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__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});
@@ -39384,7 +39380,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[]{0x0000000000000030L});
+        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__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});
@@ -39396,7 +39392,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[]{0x0000000000000030L});
+        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__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});
@@ -39407,12 +39403,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[]{0x0000000000000030L});
+        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__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[]{0x0000000000000030L});
+        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__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});
@@ -39428,7 +39424,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[]{0x0000000000000030L});
+        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__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});
@@ -39459,7 +39455,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[]{0x0000000000000030L});
+        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__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});
@@ -39474,7 +39470,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[]{0x0000000000000030L});
+        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__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});
@@ -39494,13 +39490,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[]{0x0000000000000030L});
+        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__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[]{0x0000000000000030L});
+        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__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});
@@ -39508,7 +39504,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[]{0x0000000000000030L});
+        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__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});
@@ -39531,7 +39527,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[]{0x0000000000000030L});
+        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__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});
@@ -39543,7 +39539,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[]{0x0000000000000030L});
+        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__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});
@@ -39555,7 +39551,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[]{0x0000000000000030L});
+        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__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});
@@ -39567,7 +39563,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[]{0x0000000000000030L});
+        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__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});
@@ -39575,7 +39571,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[]{0x0000000000000030L});
+        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__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});
@@ -39592,7 +39588,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[]{0x0000000000000030L});
+        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__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});
@@ -39600,7 +39596,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[]{0x0000000000000030L});
+        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__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});
@@ -39631,7 +39627,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[]{0x0000000000000030L});
+        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__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});
@@ -39649,7 +39645,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[]{0x0000000000000030L});
+        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__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});
@@ -39657,7 +39653,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[]{0x0000000000000030L});
+        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__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});
@@ -39674,13 +39670,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[]{0x0000000000000030L});
+        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__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[]{0x0000000000000030L});
+        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__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});
@@ -39694,7 +39690,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[]{0x0000000000000030L});
+        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__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});
@@ -39764,7 +39760,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[]{0x0000000000000030L});
+        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__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});
@@ -39775,12 +39771,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[]{0x0000000000000030L});
+        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__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[]{0x0000000000000030L});
+        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__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});
@@ -39789,7 +39785,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[]{0x0000000000000030L});
+        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__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});
@@ -39817,7 +39813,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[]{0x0000000000000030L});
+        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__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});
@@ -39846,7 +39842,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[]{0x0000000000000030L});
+        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__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});
@@ -39863,10 +39859,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[]{0x0000000000000030L,0x0000000100000000L});
+        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__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[]{0x0000000000000030L,0x0000000100000000L});
+        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__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});
@@ -39895,7 +39891,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[]{0x0000000000000030L});
+        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__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});
@@ -39921,10 +39917,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[]{0x0000000000000030L,0x0000000800000000L});
+        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__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[]{0x0000000000000030L,0x0000000800000000L});
+        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__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});
@@ -39949,7 +39945,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[]{0x0000000000000030L});
+        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__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});
@@ -39961,7 +39957,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[]{0x0000000000000030L,0x0000080000000000L});
+        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__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});
@@ -39975,7 +39971,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[]{0x0000000000000030L});
+        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__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});
@@ -39983,7 +39979,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[]{0x0000000000000030L,0x0000080000000000L});
+        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__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});
@@ -39991,10 +39987,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[]{0x0000000000000030L,0x0000008000000000L});
+        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__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[]{0x0000000000000030L,0x0000008000000000L});
+        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__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});
@@ -40020,7 +40016,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[]{0x0000000000000030L});
+        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__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});
@@ -40038,13 +40034,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[]{0x0000000000000030L});
+        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__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[]{0x0000000000000030L});
+        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__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});
@@ -40052,7 +40048,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[]{0x0000000000000030L});
+        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__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});
@@ -40060,7 +40056,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[]{0x0000000000000030L,0x0000080000000000L});
+        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__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});
@@ -40072,10 +40068,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[]{0x0000000000000030L,0x0000008000000000L});
+        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__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[]{0x0000000000000030L,0x0000008000000000L});
+        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__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});
@@ -40092,7 +40088,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[]{0x0000000000000030L});
+        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__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});
@@ -40111,7 +40107,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_ruleEString_in_rule__AdaptationProcess__NameAssignment_226899 = 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__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 7ea71c39a38ed318b6a43186e9aa2c8a6807e0ce..ed90325a6382cbd94b88030db8118dbe7de20632 100644
Binary files a/edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/StaLang.xtextbin and b/edu.kit.ipd.descartes.mm.adaptation.sta/src-gen/edu/kit/ipd/descartes/StaLang.xtextbin differ
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 14130652538eeb4ef4fd9ae93e5ae46d11e9404e..76d904c21425610c46f3097e45689fa2bae0bd56 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]
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getAdaptationProcessAccess().getNameEStringParserRuleCall_2_0()); 
-	    }
-		lv_name_2_0=ruleEString		{
+		lv_name_2_0=RULE_ID
+		{
+			newLeafNode(lv_name_2_0, grammarAccess.getAdaptationProcessAccess().getNameIDTerminalRuleCall_2_0()); 
+		}
+		{
 	        if ($current==null) {
-	            $current = createModelElementForParent(grammarAccess.getAdaptationProcessRule());
+	            $current = createModelElement(grammarAccess.getAdaptationProcessRule());
 	        }
-       		set(
+       		setWithLastConsumed(
        			$current, 
        			"name",
         		lv_name_2_0, 
-        		"EString");
-	        afterParserOrEnumRuleCall();
+        		"ID");
 	    }
 
 )
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 0799b94e3fd85dfd9e1030f8981451dc65b2c405..421519af320d31081d09223537f560ed7812e94c 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=5
+RULE_ID=4
 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=4
+RULE_STRING=5
 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 024ca5e44295c2ff77116c6b81e165f3055fd0e2..fb99f5304dba12eab879f02770966b00c0af9804 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=5;
+    public static final int RULE_ID=4;
     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=4;
+    public static final int RULE_STRING=5;
     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 1ef737f85374e7ecbca5cafc3488afd56f4dfb71..6144ac44c5f35facd7b27f9f609cbb267a1ebe39 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_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'"
+        "<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'"
     };
-    public static final int RULE_ID=5;
+    public static final int RULE_ID=4;
     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=4;
+    public static final int RULE_STRING=5;
     public static final int T__71=71;
     public static final int T__72=72;
     public static final int T__70=70;
@@ -206,11 +206,12 @@ 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= 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: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= '}' ) ;
     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;
@@ -231,8 +232,6 @@ 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;
@@ -257,11 +256,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= 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: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: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: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:2: ( (lv_importDeclaration_0_0= ruleImportDeclaration ) )*
             loop1:
@@ -316,30 +315,25 @@ 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= 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: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: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
+            // ../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
             {
-             
-            	        newCompositeNode(grammarAccess.getAdaptationProcessAccess().getNameEStringParserRuleCall_2_0()); 
-            	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleAdaptationProcess165);
-            lv_name_2_0=ruleEString();
-
-            state._fsp--;
+            lv_name_2_0=(Token)match(input,RULE_ID,FollowSets000.FOLLOW_RULE_ID_in_ruleAdaptationProcess161); 
 
+            			newLeafNode(lv_name_2_0, grammarAccess.getAdaptationProcessAccess().getNameIDTerminalRuleCall_2_0()); 
+            		
 
             	        if (current==null) {
-            	            current = createModelElementForParent(grammarAccess.getAdaptationProcessRule());
+            	            current = createModelElement(grammarAccess.getAdaptationProcessRule());
             	        }
-                   		set(
+                   		setWithLastConsumed(
                    			current, 
                    			"name",
                     		lv_name_2_0, 
-                    		"EString");
-            	        afterParserOrEnumRuleCall();
+                    		"ID");
             	    
 
             }
@@ -358,7 +352,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_ruleAdaptationProcess178); 
+                    otherlv_3=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleAdaptationProcess179); 
 
                         	newLeafNode(otherlv_3, grammarAccess.getAdaptationProcessAccess().getIdKeyword_3_0());
                         
@@ -371,7 +365,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                      
                     	        newCompositeNode(grammarAccess.getAdaptationProcessAccess().getIdEStringParserRuleCall_3_1_0()); 
                     	    
-                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleAdaptationProcess199);
+                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleAdaptationProcess200);
                     lv_id_4_0=ruleEString();
 
                     state._fsp--;
@@ -393,7 +387,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
                     }
 
-                    otherlv_5=(Token)match(input,13,FollowSets000.FOLLOW_13_in_ruleAdaptationProcess211); 
+                    otherlv_5=(Token)match(input,13,FollowSets000.FOLLOW_13_in_ruleAdaptationProcess212); 
 
                         	newLeafNode(otherlv_5, grammarAccess.getAdaptationProcessAccess().getRightSquareBracketKeyword_3_2());
                         
@@ -403,7 +397,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_6=(Token)match(input,14,FollowSets000.FOLLOW_14_in_ruleAdaptationProcess225); 
+            otherlv_6=(Token)match(input,14,FollowSets000.FOLLOW_14_in_ruleAdaptationProcess226); 
 
                 	newLeafNode(otherlv_6, grammarAccess.getAdaptationProcessAccess().getLeftCurlyBracketKeyword_4());
                 
@@ -418,11 +412,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_ruleAdaptationProcess238); 
+                    otherlv_7=(Token)match(input,15,FollowSets000.FOLLOW_15_in_ruleAdaptationProcess239); 
 
                         	newLeafNode(otherlv_7, grammarAccess.getAdaptationProcessAccess().getParametersKeyword_5_0());
                         
-                    otherlv_8=(Token)match(input,16,FollowSets000.FOLLOW_16_in_ruleAdaptationProcess250); 
+                    otherlv_8=(Token)match(input,16,FollowSets000.FOLLOW_16_in_ruleAdaptationProcess251); 
 
                         	newLeafNode(otherlv_8, grammarAccess.getAdaptationProcessAccess().getColonKeyword_5_1());
                         
@@ -435,7 +429,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                      
                     	        newCompositeNode(grammarAccess.getAdaptationProcessAccess().getParametersParameterParserRuleCall_5_2_0()); 
                     	    
-                    pushFollow(FollowSets000.FOLLOW_ruleParameter_in_ruleAdaptationProcess271);
+                    pushFollow(FollowSets000.FOLLOW_ruleParameter_in_ruleAdaptationProcess272);
                     lv_parameters_9_0=ruleParameter();
 
                     state._fsp--;
@@ -472,7 +466,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_ruleAdaptationProcess284); 
+                    	    otherlv_10=(Token)match(input,17,FollowSets000.FOLLOW_17_in_ruleAdaptationProcess285); 
 
                     	        	newLeafNode(otherlv_10, grammarAccess.getAdaptationProcessAccess().getCommaKeyword_5_3_0());
                     	        
@@ -485,7 +479,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                     	     
                     	    	        newCompositeNode(grammarAccess.getAdaptationProcessAccess().getParametersParameterParserRuleCall_5_3_1_0()); 
                     	    	    
-                    	    pushFollow(FollowSets000.FOLLOW_ruleParameter_in_ruleAdaptationProcess305);
+                    	    pushFollow(FollowSets000.FOLLOW_ruleParameter_in_ruleAdaptationProcess306);
                     	    lv_parameters_11_0=ruleParameter();
 
                     	    state._fsp--;
@@ -522,11 +516,11 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_12=(Token)match(input,18,FollowSets000.FOLLOW_18_in_ruleAdaptationProcess321); 
+            otherlv_12=(Token)match(input,18,FollowSets000.FOLLOW_18_in_ruleAdaptationProcess322); 
 
                 	newLeafNode(otherlv_12, grammarAccess.getAdaptationProcessAccess().getGoalKeyword_6());
                 
-            otherlv_13=(Token)match(input,16,FollowSets000.FOLLOW_16_in_ruleAdaptationProcess333); 
+            otherlv_13=(Token)match(input,16,FollowSets000.FOLLOW_16_in_ruleAdaptationProcess334); 
 
                 	newLeafNode(otherlv_13, grammarAccess.getAdaptationProcessAccess().getColonKeyword_7());
                 
@@ -539,7 +533,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getAdaptationProcessAccess().getGoalOverallGoalParserRuleCall_8_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleOverallGoal_in_ruleAdaptationProcess354);
+            pushFollow(FollowSets000.FOLLOW_ruleOverallGoal_in_ruleAdaptationProcess355);
             lv_goal_14_0=ruleOverallGoal();
 
             state._fsp--;
@@ -561,11 +555,11 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_15=(Token)match(input,19,FollowSets000.FOLLOW_19_in_ruleAdaptationProcess366); 
+            otherlv_15=(Token)match(input,19,FollowSets000.FOLLOW_19_in_ruleAdaptationProcess367); 
 
                 	newLeafNode(otherlv_15, grammarAccess.getAdaptationProcessAccess().getActionsKeyword_9());
                 
-            otherlv_16=(Token)match(input,16,FollowSets000.FOLLOW_16_in_ruleAdaptationProcess378); 
+            otherlv_16=(Token)match(input,16,FollowSets000.FOLLOW_16_in_ruleAdaptationProcess379); 
 
                 	newLeafNode(otherlv_16, grammarAccess.getAdaptationProcessAccess().getColonKeyword_10());
                 
@@ -578,7 +572,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getAdaptationProcessAccess().getActionsActionParserRuleCall_11_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleAction_in_ruleAdaptationProcess399);
+            pushFollow(FollowSets000.FOLLOW_ruleAction_in_ruleAdaptationProcess400);
             lv_actions_17_0=ruleAction();
 
             state._fsp--;
@@ -615,7 +609,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_ruleAdaptationProcess412); 
+            	    otherlv_18=(Token)match(input,17,FollowSets000.FOLLOW_17_in_ruleAdaptationProcess413); 
 
             	        	newLeafNode(otherlv_18, grammarAccess.getAdaptationProcessAccess().getCommaKeyword_12_0());
             	        
@@ -628,7 +622,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
             	     
             	    	        newCompositeNode(grammarAccess.getAdaptationProcessAccess().getActionsActionParserRuleCall_12_1_0()); 
             	    	    
-            	    pushFollow(FollowSets000.FOLLOW_ruleAction_in_ruleAdaptationProcess433);
+            	    pushFollow(FollowSets000.FOLLOW_ruleAction_in_ruleAdaptationProcess434);
             	    lv_actions_19_0=ruleAction();
 
             	    state._fsp--;
@@ -659,11 +653,11 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                 }
             } while (true);
 
-            otherlv_20=(Token)match(input,20,FollowSets000.FOLLOW_20_in_ruleAdaptationProcess447); 
+            otherlv_20=(Token)match(input,20,FollowSets000.FOLLOW_20_in_ruleAdaptationProcess448); 
 
                 	newLeafNode(otherlv_20, grammarAccess.getAdaptationProcessAccess().getTacticsKeyword_13());
                 
-            otherlv_21=(Token)match(input,16,FollowSets000.FOLLOW_16_in_ruleAdaptationProcess459); 
+            otherlv_21=(Token)match(input,16,FollowSets000.FOLLOW_16_in_ruleAdaptationProcess460); 
 
                 	newLeafNode(otherlv_21, grammarAccess.getAdaptationProcessAccess().getColonKeyword_14());
                 
@@ -676,7 +670,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getAdaptationProcessAccess().getTacticsTacticParserRuleCall_15_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleTactic_in_ruleAdaptationProcess480);
+            pushFollow(FollowSets000.FOLLOW_ruleTactic_in_ruleAdaptationProcess481);
             lv_tactics_22_0=ruleTactic();
 
             state._fsp--;
@@ -713,7 +707,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_ruleAdaptationProcess493); 
+            	    otherlv_23=(Token)match(input,17,FollowSets000.FOLLOW_17_in_ruleAdaptationProcess494); 
 
             	        	newLeafNode(otherlv_23, grammarAccess.getAdaptationProcessAccess().getCommaKeyword_16_0());
             	        
@@ -726,7 +720,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
             	     
             	    	        newCompositeNode(grammarAccess.getAdaptationProcessAccess().getTacticsTacticParserRuleCall_16_1_0()); 
             	    	    
-            	    pushFollow(FollowSets000.FOLLOW_ruleTactic_in_ruleAdaptationProcess514);
+            	    pushFollow(FollowSets000.FOLLOW_ruleTactic_in_ruleAdaptationProcess515);
             	    lv_tactics_24_0=ruleTactic();
 
             	    state._fsp--;
@@ -757,11 +751,11 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                 }
             } while (true);
 
-            otherlv_25=(Token)match(input,21,FollowSets000.FOLLOW_21_in_ruleAdaptationProcess528); 
+            otherlv_25=(Token)match(input,21,FollowSets000.FOLLOW_21_in_ruleAdaptationProcess529); 
 
                 	newLeafNode(otherlv_25, grammarAccess.getAdaptationProcessAccess().getStrategiesKeyword_17());
                 
-            otherlv_26=(Token)match(input,16,FollowSets000.FOLLOW_16_in_ruleAdaptationProcess540); 
+            otherlv_26=(Token)match(input,16,FollowSets000.FOLLOW_16_in_ruleAdaptationProcess541); 
 
                 	newLeafNode(otherlv_26, grammarAccess.getAdaptationProcessAccess().getColonKeyword_18());
                 
@@ -774,7 +768,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getAdaptationProcessAccess().getStrategiesStrategyParserRuleCall_19_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleStrategy_in_ruleAdaptationProcess561);
+            pushFollow(FollowSets000.FOLLOW_ruleStrategy_in_ruleAdaptationProcess562);
             lv_strategies_27_0=ruleStrategy();
 
             state._fsp--;
@@ -811,7 +805,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_ruleAdaptationProcess574); 
+            	    otherlv_28=(Token)match(input,17,FollowSets000.FOLLOW_17_in_ruleAdaptationProcess575); 
 
             	        	newLeafNode(otherlv_28, grammarAccess.getAdaptationProcessAccess().getCommaKeyword_20_0());
             	        
@@ -824,7 +818,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
             	     
             	    	        newCompositeNode(grammarAccess.getAdaptationProcessAccess().getStrategiesStrategyParserRuleCall_20_1_0()); 
             	    	    
-            	    pushFollow(FollowSets000.FOLLOW_ruleStrategy_in_ruleAdaptationProcess595);
+            	    pushFollow(FollowSets000.FOLLOW_ruleStrategy_in_ruleAdaptationProcess596);
             	    lv_strategies_29_0=ruleStrategy();
 
             	    state._fsp--;
@@ -855,7 +849,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                 }
             } while (true);
 
-            otherlv_30=(Token)match(input,22,FollowSets000.FOLLOW_22_in_ruleAdaptationProcess609); 
+            otherlv_30=(Token)match(input,22,FollowSets000.FOLLOW_22_in_ruleAdaptationProcess610); 
 
                 	newLeafNode(otherlv_30, grammarAccess.getAdaptationProcessAccess().getRightCurlyBracketKeyword_21());
                 
@@ -892,13 +886,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_entryRuleAbstractControlFlowElement647);
+            pushFollow(FollowSets000.FOLLOW_ruleAbstractControlFlowElement_in_entryRuleAbstractControlFlowElement648);
             iv_ruleAbstractControlFlowElement=ruleAbstractControlFlowElement();
 
             state._fsp--;
 
              current =iv_ruleAbstractControlFlowElement; 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleAbstractControlFlowElement657); 
+            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleAbstractControlFlowElement658); 
 
             }
 
@@ -947,7 +941,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                      
                             newCompositeNode(grammarAccess.getAbstractControlFlowElementAccess().getStartActionParserRuleCall_0()); 
                         
-                    pushFollow(FollowSets000.FOLLOW_ruleStartAction_in_ruleAbstractControlFlowElement704);
+                    pushFollow(FollowSets000.FOLLOW_ruleStartAction_in_ruleAbstractControlFlowElement705);
                     this_StartAction_0=ruleStartAction();
 
                     state._fsp--;
@@ -965,7 +959,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                      
                             newCompositeNode(grammarAccess.getAbstractControlFlowElementAccess().getStopActionParserRuleCall_1()); 
                         
-                    pushFollow(FollowSets000.FOLLOW_ruleStopAction_in_ruleAbstractControlFlowElement731);
+                    pushFollow(FollowSets000.FOLLOW_ruleStopAction_in_ruleAbstractControlFlowElement732);
                     this_StopAction_1=ruleStopAction();
 
                     state._fsp--;
@@ -983,7 +977,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                      
                             newCompositeNode(grammarAccess.getAbstractControlFlowElementAccess().getLoopActionParserRuleCall_2()); 
                         
-                    pushFollow(FollowSets000.FOLLOW_ruleLoopAction_in_ruleAbstractControlFlowElement758);
+                    pushFollow(FollowSets000.FOLLOW_ruleLoopAction_in_ruleAbstractControlFlowElement759);
                     this_LoopAction_2=ruleLoopAction();
 
                     state._fsp--;
@@ -1001,7 +995,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                      
                             newCompositeNode(grammarAccess.getAbstractControlFlowElementAccess().getBranchActionParserRuleCall_3()); 
                         
-                    pushFollow(FollowSets000.FOLLOW_ruleBranchAction_in_ruleAbstractControlFlowElement785);
+                    pushFollow(FollowSets000.FOLLOW_ruleBranchAction_in_ruleAbstractControlFlowElement786);
                     this_BranchAction_3=ruleBranchAction();
 
                     state._fsp--;
@@ -1019,7 +1013,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                      
                             newCompositeNode(grammarAccess.getAbstractControlFlowElementAccess().getActionReferenceParserRuleCall_4()); 
                         
-                    pushFollow(FollowSets000.FOLLOW_ruleActionReference_in_ruleAbstractControlFlowElement812);
+                    pushFollow(FollowSets000.FOLLOW_ruleActionReference_in_ruleAbstractControlFlowElement813);
                     this_ActionReference_4=ruleActionReference();
 
                     state._fsp--;
@@ -1064,13 +1058,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_entryRuleVariationType847);
+            pushFollow(FollowSets000.FOLLOW_ruleVariationType_in_entryRuleVariationType848);
             iv_ruleVariationType=ruleVariationType();
 
             state._fsp--;
 
              current =iv_ruleVariationType; 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleVariationType857); 
+            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleVariationType858); 
 
             }
 
@@ -1126,7 +1120,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                      
                             newCompositeNode(grammarAccess.getVariationTypeAccess().getPropertyRangeParserRuleCall_0()); 
                         
-                    pushFollow(FollowSets000.FOLLOW_rulePropertyRange_in_ruleVariationType904);
+                    pushFollow(FollowSets000.FOLLOW_rulePropertyRange_in_ruleVariationType905);
                     this_PropertyRange_0=rulePropertyRange();
 
                     state._fsp--;
@@ -1144,7 +1138,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                      
                             newCompositeNode(grammarAccess.getVariationTypeAccess().getSetOfConfigurationsParserRuleCall_1()); 
                         
-                    pushFollow(FollowSets000.FOLLOW_ruleSetOfConfigurations_in_ruleVariationType931);
+                    pushFollow(FollowSets000.FOLLOW_ruleSetOfConfigurations_in_ruleVariationType932);
                     this_SetOfConfigurations_1=ruleSetOfConfigurations();
 
                     state._fsp--;
@@ -1189,13 +1183,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_entryRuleEString967);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_entryRuleEString968);
             iv_ruleEString=ruleEString();
 
             state._fsp--;
 
              current =iv_ruleEString.getText(); 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleEString978); 
+            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleEString979); 
 
             }
 
@@ -1246,7 +1240,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_ruleEString1018); 
+                    this_STRING_0=(Token)match(input,RULE_STRING,FollowSets000.FOLLOW_RULE_STRING_in_ruleEString1019); 
 
                     		current.merge(this_STRING_0);
                         
@@ -1259,7 +1253,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_ruleEString1044); 
+                    this_ID_1=(Token)match(input,RULE_ID,FollowSets000.FOLLOW_RULE_ID_in_ruleEString1045); 
 
                     		current.merge(this_ID_1);
                         
@@ -1302,13 +1296,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_entryRuleTactic1089);
+            pushFollow(FollowSets000.FOLLOW_ruleTactic_in_entryRuleTactic1090);
             iv_ruleTactic=ruleTactic();
 
             state._fsp--;
 
              current =iv_ruleTactic; 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleTactic1099); 
+            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleTactic1100); 
 
             }
 
@@ -1370,7 +1364,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_ruleTactic1137); 
+                    otherlv_0=(Token)match(input,23,FollowSets000.FOLLOW_23_in_ruleTactic1138); 
 
                         	newLeafNode(otherlv_0, grammarAccess.getTacticAccess().getTacticKeyword_0());
                         
@@ -1389,7 +1383,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getTacticAccess().getNameEStringParserRuleCall_1_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleTactic1160);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleTactic1161);
             lv_name_1_0=ruleEString();
 
             state._fsp--;
@@ -1422,7 +1416,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_ruleTactic1173); 
+                    otherlv_2=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleTactic1174); 
 
                         	newLeafNode(otherlv_2, grammarAccess.getTacticAccess().getIdKeyword_2_0());
                         
@@ -1435,7 +1429,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                      
                     	        newCompositeNode(grammarAccess.getTacticAccess().getIdEStringParserRuleCall_2_1_0()); 
                     	    
-                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleTactic1194);
+                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleTactic1195);
                     lv_id_3_0=ruleEString();
 
                     state._fsp--;
@@ -1457,7 +1451,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
                     }
 
-                    otherlv_4=(Token)match(input,13,FollowSets000.FOLLOW_13_in_ruleTactic1206); 
+                    otherlv_4=(Token)match(input,13,FollowSets000.FOLLOW_13_in_ruleTactic1207); 
 
                         	newLeafNode(otherlv_4, grammarAccess.getTacticAccess().getRightSquareBracketKeyword_2_2());
                         
@@ -1467,11 +1461,11 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_5=(Token)match(input,14,FollowSets000.FOLLOW_14_in_ruleTactic1220); 
+            otherlv_5=(Token)match(input,14,FollowSets000.FOLLOW_14_in_ruleTactic1221); 
 
                 	newLeafNode(otherlv_5, grammarAccess.getTacticAccess().getLeftCurlyBracketKeyword_3());
                 
-            otherlv_6=(Token)match(input,24,FollowSets000.FOLLOW_24_in_ruleTactic1232); 
+            otherlv_6=(Token)match(input,24,FollowSets000.FOLLOW_24_in_ruleTactic1233); 
 
                 	newLeafNode(otherlv_6, grammarAccess.getTacticAccess().getImplementedPlanKeyword_4());
                 
@@ -1484,7 +1478,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getTacticAccess().getImplementedPlanAdaptationPlanParserRuleCall_5_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleAdaptationPlan_in_ruleTactic1253);
+            pushFollow(FollowSets000.FOLLOW_ruleAdaptationPlan_in_ruleTactic1254);
             lv_implementedPlan_7_0=ruleAdaptationPlan();
 
             state._fsp--;
@@ -1517,15 +1511,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_ruleTactic1266); 
+                    otherlv_8=(Token)match(input,25,FollowSets000.FOLLOW_25_in_ruleTactic1267); 
 
                         	newLeafNode(otherlv_8, grammarAccess.getTacticAccess().getInputKeyword_6_0());
                         
-                    otherlv_9=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleTactic1278); 
+                    otherlv_9=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleTactic1279); 
 
                         	newLeafNode(otherlv_9, grammarAccess.getTacticAccess().getEqualsSignKeyword_6_1());
                         
-                    otherlv_10=(Token)match(input,27,FollowSets000.FOLLOW_27_in_ruleTactic1290); 
+                    otherlv_10=(Token)match(input,27,FollowSets000.FOLLOW_27_in_ruleTactic1291); 
 
                         	newLeafNode(otherlv_10, grammarAccess.getTacticAccess().getLeftParenthesisKeyword_6_2());
                         
@@ -1543,7 +1537,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                      
                     	        newCompositeNode(grammarAccess.getTacticAccess().getInputParamsParameterCrossReference_6_3_0()); 
                     	    
-                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleTactic1313);
+                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleTactic1314);
                     ruleEString();
 
                     state._fsp--;
@@ -1572,7 +1566,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_ruleTactic1326); 
+                    	    otherlv_12=(Token)match(input,17,FollowSets000.FOLLOW_17_in_ruleTactic1327); 
 
                     	        	newLeafNode(otherlv_12, grammarAccess.getTacticAccess().getCommaKeyword_6_4_0());
                     	        
@@ -1590,7 +1584,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                     	     
                     	    	        newCompositeNode(grammarAccess.getTacticAccess().getInputParamsParameterCrossReference_6_4_1_0()); 
                     	    	    
-                    	    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleTactic1349);
+                    	    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleTactic1350);
                     	    ruleEString();
 
                     	    state._fsp--;
@@ -1613,7 +1607,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                         }
                     } while (true);
 
-                    otherlv_14=(Token)match(input,28,FollowSets000.FOLLOW_28_in_ruleTactic1363); 
+                    otherlv_14=(Token)match(input,28,FollowSets000.FOLLOW_28_in_ruleTactic1364); 
 
                         	newLeafNode(otherlv_14, grammarAccess.getTacticAccess().getRightParenthesisKeyword_6_5());
                         
@@ -1634,11 +1628,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_ruleTactic1378); 
+                    otherlv_15=(Token)match(input,29,FollowSets000.FOLLOW_29_in_ruleTactic1379); 
 
                         	newLeafNode(otherlv_15, grammarAccess.getTacticAccess().getOutputKeyword_7_0());
                         
-                    otherlv_16=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleTactic1390); 
+                    otherlv_16=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleTactic1391); 
 
                         	newLeafNode(otherlv_16, grammarAccess.getTacticAccess().getEqualsSignKeyword_7_1());
                         
@@ -1656,7 +1650,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                      
                     	        newCompositeNode(grammarAccess.getTacticAccess().getOutputParamParameterCrossReference_7_2_0()); 
                     	    
-                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleTactic1413);
+                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleTactic1414);
                     ruleEString();
 
                     state._fsp--;
@@ -1676,7 +1670,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_18=(Token)match(input,22,FollowSets000.FOLLOW_22_in_ruleTactic1427); 
+            otherlv_18=(Token)match(input,22,FollowSets000.FOLLOW_22_in_ruleTactic1428); 
 
                 	newLeafNode(otherlv_18, grammarAccess.getTacticAccess().getRightCurlyBracketKeyword_8());
                 
@@ -1713,13 +1707,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_entryRuleAction1463);
+            pushFollow(FollowSets000.FOLLOW_ruleAction_in_entryRuleAction1464);
             iv_ruleAction=ruleAction();
 
             state._fsp--;
 
              current =iv_ruleAction; 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleAction1473); 
+            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleAction1474); 
 
             }
 
@@ -1784,7 +1778,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_ruleAction1511); 
+                    otherlv_0=(Token)match(input,30,FollowSets000.FOLLOW_30_in_ruleAction1512); 
 
                         	newLeafNode(otherlv_0, grammarAccess.getActionAccess().getActionKeyword_0());
                         
@@ -1803,7 +1797,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getActionAccess().getNameEStringParserRuleCall_1_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleAction1534);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleAction1535);
             lv_name_1_0=ruleEString();
 
             state._fsp--;
@@ -1836,7 +1830,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_ruleAction1547); 
+                    otherlv_2=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleAction1548); 
 
                         	newLeafNode(otherlv_2, grammarAccess.getActionAccess().getIdKeyword_2_0());
                         
@@ -1849,7 +1843,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                      
                     	        newCompositeNode(grammarAccess.getActionAccess().getIdEStringParserRuleCall_2_1_0()); 
                     	    
-                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleAction1568);
+                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleAction1569);
                     lv_id_3_0=ruleEString();
 
                     state._fsp--;
@@ -1871,7 +1865,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
                     }
 
-                    otherlv_4=(Token)match(input,13,FollowSets000.FOLLOW_13_in_ruleAction1580); 
+                    otherlv_4=(Token)match(input,13,FollowSets000.FOLLOW_13_in_ruleAction1581); 
 
                         	newLeafNode(otherlv_4, grammarAccess.getActionAccess().getRightSquareBracketKeyword_2_2());
                         
@@ -1881,15 +1875,15 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_5=(Token)match(input,14,FollowSets000.FOLLOW_14_in_ruleAction1594); 
+            otherlv_5=(Token)match(input,14,FollowSets000.FOLLOW_14_in_ruleAction1595); 
 
                 	newLeafNode(otherlv_5, grammarAccess.getActionAccess().getLeftCurlyBracketKeyword_3());
                 
-            otherlv_6=(Token)match(input,31,FollowSets000.FOLLOW_31_in_ruleAction1606); 
+            otherlv_6=(Token)match(input,31,FollowSets000.FOLLOW_31_in_ruleAction1607); 
 
                 	newLeafNode(otherlv_6, grammarAccess.getActionAccess().getOperationKeyword_4());
                 
-            otherlv_7=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleAction1618); 
+            otherlv_7=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleAction1619); 
 
                 	newLeafNode(otherlv_7, grammarAccess.getActionAccess().getEqualsSignKeyword_5());
                 
@@ -1902,7 +1896,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getActionAccess().getAdaptationActionOperationAdaptationActionOperationParserRuleCall_6_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleAdaptationActionOperation_in_ruleAction1639);
+            pushFollow(FollowSets000.FOLLOW_ruleAdaptationActionOperation_in_ruleAction1640);
             lv_adaptationActionOperation_8_0=ruleAdaptationActionOperation();
 
             state._fsp--;
@@ -1924,11 +1918,11 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_9=(Token)match(input,32,FollowSets000.FOLLOW_32_in_ruleAction1651); 
+            otherlv_9=(Token)match(input,32,FollowSets000.FOLLOW_32_in_ruleAction1652); 
 
                 	newLeafNode(otherlv_9, grammarAccess.getActionAccess().getReferredAdaptationPointKeyword_7());
                 
-            otherlv_10=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleAction1663); 
+            otherlv_10=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleAction1664); 
 
                 	newLeafNode(otherlv_10, grammarAccess.getActionAccess().getEqualsSignKeyword_8());
                 
@@ -1946,7 +1940,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getActionAccess().getReferredAdaptationPointAdaptationPointCrossReference_9_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleAction1686);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleAction1687);
             ruleEString();
 
             state._fsp--;
@@ -1971,15 +1965,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_ruleAction1699); 
+                    otherlv_12=(Token)match(input,25,FollowSets000.FOLLOW_25_in_ruleAction1700); 
 
                         	newLeafNode(otherlv_12, grammarAccess.getActionAccess().getInputKeyword_10_0());
                         
-                    otherlv_13=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleAction1711); 
+                    otherlv_13=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleAction1712); 
 
                         	newLeafNode(otherlv_13, grammarAccess.getActionAccess().getEqualsSignKeyword_10_1());
                         
-                    otherlv_14=(Token)match(input,27,FollowSets000.FOLLOW_27_in_ruleAction1723); 
+                    otherlv_14=(Token)match(input,27,FollowSets000.FOLLOW_27_in_ruleAction1724); 
 
                         	newLeafNode(otherlv_14, grammarAccess.getActionAccess().getLeftParenthesisKeyword_10_2());
                         
@@ -1997,7 +1991,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                      
                     	        newCompositeNode(grammarAccess.getActionAccess().getInputParamsParameterCrossReference_10_3_0()); 
                     	    
-                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleAction1746);
+                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleAction1747);
                     ruleEString();
 
                     state._fsp--;
@@ -2026,7 +2020,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_ruleAction1759); 
+                    	    otherlv_16=(Token)match(input,17,FollowSets000.FOLLOW_17_in_ruleAction1760); 
 
                     	        	newLeafNode(otherlv_16, grammarAccess.getActionAccess().getCommaKeyword_10_4_0());
                     	        
@@ -2044,7 +2038,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                     	     
                     	    	        newCompositeNode(grammarAccess.getActionAccess().getInputParamsParameterCrossReference_10_4_1_0()); 
                     	    	    
-                    	    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleAction1782);
+                    	    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleAction1783);
                     	    ruleEString();
 
                     	    state._fsp--;
@@ -2067,7 +2061,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                         }
                     } while (true);
 
-                    otherlv_18=(Token)match(input,28,FollowSets000.FOLLOW_28_in_ruleAction1796); 
+                    otherlv_18=(Token)match(input,28,FollowSets000.FOLLOW_28_in_ruleAction1797); 
 
                         	newLeafNode(otherlv_18, grammarAccess.getActionAccess().getRightParenthesisKeyword_10_5());
                         
@@ -2088,11 +2082,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_ruleAction1811); 
+                    otherlv_19=(Token)match(input,29,FollowSets000.FOLLOW_29_in_ruleAction1812); 
 
                         	newLeafNode(otherlv_19, grammarAccess.getActionAccess().getOutputKeyword_11_0());
                         
-                    otherlv_20=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleAction1823); 
+                    otherlv_20=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleAction1824); 
 
                         	newLeafNode(otherlv_20, grammarAccess.getActionAccess().getEqualsSignKeyword_11_1());
                         
@@ -2110,7 +2104,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                      
                     	        newCompositeNode(grammarAccess.getActionAccess().getOutputParamParameterCrossReference_11_2_0()); 
                     	    
-                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleAction1846);
+                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleAction1847);
                     ruleEString();
 
                     state._fsp--;
@@ -2130,7 +2124,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_22=(Token)match(input,22,FollowSets000.FOLLOW_22_in_ruleAction1860); 
+            otherlv_22=(Token)match(input,22,FollowSets000.FOLLOW_22_in_ruleAction1861); 
 
                 	newLeafNode(otherlv_22, grammarAccess.getActionAccess().getRightCurlyBracketKeyword_12());
                 
@@ -2167,13 +2161,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_entryRuleStrategy1896);
+            pushFollow(FollowSets000.FOLLOW_ruleStrategy_in_entryRuleStrategy1897);
             iv_ruleStrategy=ruleStrategy();
 
             state._fsp--;
 
              current =iv_ruleStrategy; 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleStrategy1906); 
+            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleStrategy1907); 
 
             }
 
@@ -2240,7 +2234,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getStrategyAccess().getNameEStringParserRuleCall_0_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleStrategy1952);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleStrategy1953);
             lv_name_0_0=ruleEString();
 
             state._fsp--;
@@ -2273,7 +2267,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_ruleStrategy1965); 
+                    otherlv_1=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleStrategy1966); 
 
                         	newLeafNode(otherlv_1, grammarAccess.getStrategyAccess().getIdKeyword_1_0());
                         
@@ -2286,7 +2280,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                      
                     	        newCompositeNode(grammarAccess.getStrategyAccess().getIdEStringParserRuleCall_1_1_0()); 
                     	    
-                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleStrategy1986);
+                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleStrategy1987);
                     lv_id_2_0=ruleEString();
 
                     state._fsp--;
@@ -2308,7 +2302,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
                     }
 
-                    otherlv_3=(Token)match(input,13,FollowSets000.FOLLOW_13_in_ruleStrategy1998); 
+                    otherlv_3=(Token)match(input,13,FollowSets000.FOLLOW_13_in_ruleStrategy1999); 
 
                         	newLeafNode(otherlv_3, grammarAccess.getStrategyAccess().getRightSquareBracketKeyword_1_2());
                         
@@ -2318,15 +2312,15 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_4=(Token)match(input,14,FollowSets000.FOLLOW_14_in_ruleStrategy2012); 
+            otherlv_4=(Token)match(input,14,FollowSets000.FOLLOW_14_in_ruleStrategy2013); 
 
                 	newLeafNode(otherlv_4, grammarAccess.getStrategyAccess().getLeftCurlyBracketKeyword_2());
                 
-            otherlv_5=(Token)match(input,33,FollowSets000.FOLLOW_33_in_ruleStrategy2024); 
+            otherlv_5=(Token)match(input,33,FollowSets000.FOLLOW_33_in_ruleStrategy2025); 
 
                 	newLeafNode(otherlv_5, grammarAccess.getStrategyAccess().getObjectiveKeyword_3());
                 
-            otherlv_6=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleStrategy2036); 
+            otherlv_6=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleStrategy2037); 
 
                 	newLeafNode(otherlv_6, grammarAccess.getStrategyAccess().getEqualsSignKeyword_4());
                 
@@ -2344,7 +2338,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getStrategyAccess().getObjectiveObjectiveCrossReference_5_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleStrategy2059);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleStrategy2060);
             ruleEString();
 
             state._fsp--;
@@ -2358,11 +2352,11 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_8=(Token)match(input,34,FollowSets000.FOLLOW_34_in_ruleStrategy2071); 
+            otherlv_8=(Token)match(input,34,FollowSets000.FOLLOW_34_in_ruleStrategy2072); 
 
                 	newLeafNode(otherlv_8, grammarAccess.getStrategyAccess().getTriggeringEventKeyword_6());
                 
-            otherlv_9=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleStrategy2083); 
+            otherlv_9=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleStrategy2084); 
 
                 	newLeafNode(otherlv_9, grammarAccess.getStrategyAccess().getEqualsSignKeyword_7());
                 
@@ -2375,7 +2369,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getStrategyAccess().getTriggeringEventsEventParserRuleCall_8_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleEvent_in_ruleStrategy2104);
+            pushFollow(FollowSets000.FOLLOW_ruleEvent_in_ruleStrategy2105);
             lv_triggeringEvents_10_0=ruleEvent();
 
             state._fsp--;
@@ -2397,15 +2391,15 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_11=(Token)match(input,20,FollowSets000.FOLLOW_20_in_ruleStrategy2116); 
+            otherlv_11=(Token)match(input,20,FollowSets000.FOLLOW_20_in_ruleStrategy2117); 
 
                 	newLeafNode(otherlv_11, grammarAccess.getStrategyAccess().getTacticsKeyword_9());
                 
-            otherlv_12=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleStrategy2128); 
+            otherlv_12=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleStrategy2129); 
 
                 	newLeafNode(otherlv_12, grammarAccess.getStrategyAccess().getEqualsSignKeyword_10());
                 
-            otherlv_13=(Token)match(input,27,FollowSets000.FOLLOW_27_in_ruleStrategy2140); 
+            otherlv_13=(Token)match(input,27,FollowSets000.FOLLOW_27_in_ruleStrategy2141); 
 
                 	newLeafNode(otherlv_13, grammarAccess.getStrategyAccess().getLeftParenthesisKeyword_11());
                 
@@ -2418,7 +2412,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getStrategyAccess().getTacticsWeightedTacticParserRuleCall_12_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleWeightedTactic_in_ruleStrategy2161);
+            pushFollow(FollowSets000.FOLLOW_ruleWeightedTactic_in_ruleStrategy2162);
             lv_tactics_14_0=ruleWeightedTactic();
 
             state._fsp--;
@@ -2455,7 +2449,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_ruleStrategy2174); 
+            	    otherlv_15=(Token)match(input,17,FollowSets000.FOLLOW_17_in_ruleStrategy2175); 
 
             	        	newLeafNode(otherlv_15, grammarAccess.getStrategyAccess().getCommaKeyword_13_0());
             	        
@@ -2468,7 +2462,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
             	     
             	    	        newCompositeNode(grammarAccess.getStrategyAccess().getTacticsWeightedTacticParserRuleCall_13_1_0()); 
             	    	    
-            	    pushFollow(FollowSets000.FOLLOW_ruleWeightedTactic_in_ruleStrategy2195);
+            	    pushFollow(FollowSets000.FOLLOW_ruleWeightedTactic_in_ruleStrategy2196);
             	    lv_tactics_16_0=ruleWeightedTactic();
 
             	    state._fsp--;
@@ -2499,7 +2493,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                 }
             } while (true);
 
-            otherlv_17=(Token)match(input,28,FollowSets000.FOLLOW_28_in_ruleStrategy2209); 
+            otherlv_17=(Token)match(input,28,FollowSets000.FOLLOW_28_in_ruleStrategy2210); 
 
                 	newLeafNode(otherlv_17, grammarAccess.getStrategyAccess().getRightParenthesisKeyword_14());
                 
@@ -2514,7 +2508,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_ruleStrategy2222); 
+                    otherlv_18=(Token)match(input,35,FollowSets000.FOLLOW_35_in_ruleStrategy2223); 
 
                         	newLeafNode(otherlv_18, grammarAccess.getStrategyAccess().getWeightingFunctionKeyword_15());
                         
@@ -2533,7 +2527,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getStrategyAccess().getWeightingFunctionWeightingFunctionParserRuleCall_16_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleWeightingFunction_in_ruleStrategy2245);
+            pushFollow(FollowSets000.FOLLOW_ruleWeightingFunction_in_ruleStrategy2246);
             lv_weightingFunction_19_0=ruleWeightingFunction();
 
             state._fsp--;
@@ -2555,7 +2549,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_20=(Token)match(input,22,FollowSets000.FOLLOW_22_in_ruleStrategy2257); 
+            otherlv_20=(Token)match(input,22,FollowSets000.FOLLOW_22_in_ruleStrategy2258); 
 
                 	newLeafNode(otherlv_20, grammarAccess.getStrategyAccess().getRightCurlyBracketKeyword_17());
                 
@@ -2592,13 +2586,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_entryRuleParameter2293);
+            pushFollow(FollowSets000.FOLLOW_ruleParameter_in_entryRuleParameter2294);
             iv_ruleParameter=ruleParameter();
 
             state._fsp--;
 
              current =iv_ruleParameter; 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleParameter2303); 
+            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleParameter2304); 
 
             }
 
@@ -2652,7 +2646,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getParameterAccess().getNameEStringParserRuleCall_0_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleParameter2349);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleParameter2350);
             lv_name_0_0=ruleEString();
 
             state._fsp--;
@@ -2674,7 +2668,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_1=(Token)match(input,14,FollowSets000.FOLLOW_14_in_ruleParameter2361); 
+            otherlv_1=(Token)match(input,14,FollowSets000.FOLLOW_14_in_ruleParameter2362); 
 
                 	newLeafNode(otherlv_1, grammarAccess.getParameterAccess().getLeftCurlyBracketKeyword_1());
                 
@@ -2689,11 +2683,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_ruleParameter2374); 
+                    otherlv_2=(Token)match(input,36,FollowSets000.FOLLOW_36_in_ruleParameter2375); 
 
                         	newLeafNode(otherlv_2, grammarAccess.getParameterAccess().getTypeKeyword_2_0());
                         
-                    otherlv_3=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleParameter2386); 
+                    otherlv_3=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleParameter2387); 
 
                         	newLeafNode(otherlv_3, grammarAccess.getParameterAccess().getEqualsSignKeyword_2_1());
                         
@@ -2712,7 +2706,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getParameterAccess().getTypeEStringParserRuleCall_3_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleParameter2409);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleParameter2410);
             lv_type_4_0=ruleEString();
 
             state._fsp--;
@@ -2745,7 +2739,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_ruleParameter2422); 
+                    otherlv_5=(Token)match(input,17,FollowSets000.FOLLOW_17_in_ruleParameter2423); 
 
                         	newLeafNode(otherlv_5, grammarAccess.getParameterAccess().getCommaKeyword_4_0());
                         
@@ -2760,11 +2754,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_ruleParameter2435); 
+                            otherlv_6=(Token)match(input,37,FollowSets000.FOLLOW_37_in_ruleParameter2436); 
 
                                 	newLeafNode(otherlv_6, grammarAccess.getParameterAccess().getValueKeyword_4_1_0());
                                 
-                            otherlv_7=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleParameter2447); 
+                            otherlv_7=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleParameter2448); 
 
                                 	newLeafNode(otherlv_7, grammarAccess.getParameterAccess().getEqualsSignKeyword_4_1_1());
                                 
@@ -2783,7 +2777,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                      
                     	        newCompositeNode(grammarAccess.getParameterAccess().getValueEStringParserRuleCall_4_2_0()); 
                     	    
-                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleParameter2470);
+                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleParameter2471);
                     lv_value_8_0=ruleEString();
 
                     state._fsp--;
@@ -2811,7 +2805,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_9=(Token)match(input,22,FollowSets000.FOLLOW_22_in_ruleParameter2484); 
+            otherlv_9=(Token)match(input,22,FollowSets000.FOLLOW_22_in_ruleParameter2485); 
 
                 	newLeafNode(otherlv_9, grammarAccess.getParameterAccess().getRightCurlyBracketKeyword_5());
                 
@@ -2848,13 +2842,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_entryRuleOverallGoal2520);
+            pushFollow(FollowSets000.FOLLOW_ruleOverallGoal_in_entryRuleOverallGoal2521);
             iv_ruleOverallGoal=ruleOverallGoal();
 
             state._fsp--;
 
              current =iv_ruleOverallGoal; 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleOverallGoal2530); 
+            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleOverallGoal2531); 
 
             }
 
@@ -2898,7 +2892,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_ruleOverallGoal2567); 
+            otherlv_0=(Token)match(input,38,FollowSets000.FOLLOW_38_in_ruleOverallGoal2568); 
 
                 	newLeafNode(otherlv_0, grammarAccess.getOverallGoalAccess().getDescriptionKeyword_0());
                 
@@ -2911,7 +2905,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getOverallGoalAccess().getDescriptionEStringParserRuleCall_1_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleOverallGoal2588);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleOverallGoal2589);
             lv_description_1_0=ruleEString();
 
             state._fsp--;
@@ -2933,15 +2927,15 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_2=(Token)match(input,39,FollowSets000.FOLLOW_39_in_ruleOverallGoal2600); 
+            otherlv_2=(Token)match(input,39,FollowSets000.FOLLOW_39_in_ruleOverallGoal2601); 
 
                 	newLeafNode(otherlv_2, grammarAccess.getOverallGoalAccess().getObjectivesKeyword_2());
                 
-            otherlv_3=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleOverallGoal2612); 
+            otherlv_3=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleOverallGoal2613); 
 
                 	newLeafNode(otherlv_3, grammarAccess.getOverallGoalAccess().getEqualsSignKeyword_3());
                 
-            otherlv_4=(Token)match(input,27,FollowSets000.FOLLOW_27_in_ruleOverallGoal2624); 
+            otherlv_4=(Token)match(input,27,FollowSets000.FOLLOW_27_in_ruleOverallGoal2625); 
 
                 	newLeafNode(otherlv_4, grammarAccess.getOverallGoalAccess().getLeftParenthesisKeyword_4());
                 
@@ -2954,7 +2948,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getOverallGoalAccess().getObjectivesObjectiveParserRuleCall_5_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleObjective_in_ruleOverallGoal2645);
+            pushFollow(FollowSets000.FOLLOW_ruleObjective_in_ruleOverallGoal2646);
             lv_objectives_5_0=ruleObjective();
 
             state._fsp--;
@@ -2991,7 +2985,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_ruleOverallGoal2658); 
+            	    otherlv_6=(Token)match(input,17,FollowSets000.FOLLOW_17_in_ruleOverallGoal2659); 
 
             	        	newLeafNode(otherlv_6, grammarAccess.getOverallGoalAccess().getCommaKeyword_6_0());
             	        
@@ -3004,7 +2998,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
             	     
             	    	        newCompositeNode(grammarAccess.getOverallGoalAccess().getObjectivesObjectiveParserRuleCall_6_1_0()); 
             	    	    
-            	    pushFollow(FollowSets000.FOLLOW_ruleObjective_in_ruleOverallGoal2679);
+            	    pushFollow(FollowSets000.FOLLOW_ruleObjective_in_ruleOverallGoal2680);
             	    lv_objectives_7_0=ruleObjective();
 
             	    state._fsp--;
@@ -3035,7 +3029,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                 }
             } while (true);
 
-            otherlv_8=(Token)match(input,28,FollowSets000.FOLLOW_28_in_ruleOverallGoal2693); 
+            otherlv_8=(Token)match(input,28,FollowSets000.FOLLOW_28_in_ruleOverallGoal2694); 
 
                 	newLeafNode(otherlv_8, grammarAccess.getOverallGoalAccess().getRightParenthesisKeyword_7());
                 
@@ -3072,13 +3066,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_entryRuleImportDeclaration2729);
+            pushFollow(FollowSets000.FOLLOW_ruleImportDeclaration_in_entryRuleImportDeclaration2730);
             iv_ruleImportDeclaration=ruleImportDeclaration();
 
             state._fsp--;
 
              current =iv_ruleImportDeclaration; 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleImportDeclaration2739); 
+            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleImportDeclaration2740); 
 
             }
 
@@ -3113,7 +3107,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_ruleImportDeclaration2776); 
+            otherlv_0=(Token)match(input,40,FollowSets000.FOLLOW_40_in_ruleImportDeclaration2777); 
 
                 	newLeafNode(otherlv_0, grammarAccess.getImportDeclarationAccess().getImportDeclarationKeyword_0());
                 
@@ -3126,7 +3120,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getImportDeclarationAccess().getImportURIEStringParserRuleCall_1_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleImportDeclaration2797);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleImportDeclaration2798);
             lv_importURI_1_0=ruleEString();
 
             state._fsp--;
@@ -3181,13 +3175,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_entryRuleAdaptationPlan2833);
+            pushFollow(FollowSets000.FOLLOW_ruleAdaptationPlan_in_entryRuleAdaptationPlan2834);
             iv_ruleAdaptationPlan=ruleAdaptationPlan();
 
             state._fsp--;
 
              current =iv_ruleAdaptationPlan; 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleAdaptationPlan2843); 
+            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleAdaptationPlan2844); 
 
             }
 
@@ -3242,7 +3236,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getAdaptationPlanAccess().getNameEStringParserRuleCall_0_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleAdaptationPlan2889);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleAdaptationPlan2890);
             lv_name_0_0=ruleEString();
 
             state._fsp--;
@@ -3275,7 +3269,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_ruleAdaptationPlan2902); 
+                    otherlv_1=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleAdaptationPlan2903); 
 
                         	newLeafNode(otherlv_1, grammarAccess.getAdaptationPlanAccess().getIdKeyword_1_0());
                         
@@ -3288,7 +3282,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                      
                     	        newCompositeNode(grammarAccess.getAdaptationPlanAccess().getIdEStringParserRuleCall_1_1_0()); 
                     	    
-                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleAdaptationPlan2923);
+                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleAdaptationPlan2924);
                     lv_id_2_0=ruleEString();
 
                     state._fsp--;
@@ -3310,7 +3304,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
                     }
 
-                    otherlv_3=(Token)match(input,13,FollowSets000.FOLLOW_13_in_ruleAdaptationPlan2935); 
+                    otherlv_3=(Token)match(input,13,FollowSets000.FOLLOW_13_in_ruleAdaptationPlan2936); 
 
                         	newLeafNode(otherlv_3, grammarAccess.getAdaptationPlanAccess().getRightSquareBracketKeyword_1_2());
                         
@@ -3320,7 +3314,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_4=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleAdaptationPlan2949); 
+            otherlv_4=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleAdaptationPlan2950); 
 
                 	newLeafNode(otherlv_4, grammarAccess.getAdaptationPlanAccess().getEqualsSignKeyword_2());
                 
@@ -3335,7 +3329,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_ruleAdaptationPlan2962); 
+                    otherlv_5=(Token)match(input,27,FollowSets000.FOLLOW_27_in_ruleAdaptationPlan2963); 
 
                         	newLeafNode(otherlv_5, grammarAccess.getAdaptationPlanAccess().getLeftParenthesisKeyword_3_0());
                         
@@ -3348,7 +3342,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                      
                     	        newCompositeNode(grammarAccess.getAdaptationPlanAccess().getStepsAbstractControlFlowElementParserRuleCall_3_1_0()); 
                     	    
-                    pushFollow(FollowSets000.FOLLOW_ruleAbstractControlFlowElement_in_ruleAdaptationPlan2983);
+                    pushFollow(FollowSets000.FOLLOW_ruleAbstractControlFlowElement_in_ruleAdaptationPlan2984);
                     lv_steps_6_0=ruleAbstractControlFlowElement();
 
                     state._fsp--;
@@ -3385,7 +3379,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_ruleAdaptationPlan2996); 
+                    	    otherlv_7=(Token)match(input,17,FollowSets000.FOLLOW_17_in_ruleAdaptationPlan2997); 
 
                     	        	newLeafNode(otherlv_7, grammarAccess.getAdaptationPlanAccess().getCommaKeyword_3_2_0());
                     	        
@@ -3398,7 +3392,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                     	     
                     	    	        newCompositeNode(grammarAccess.getAdaptationPlanAccess().getStepsAbstractControlFlowElementParserRuleCall_3_2_1_0()); 
                     	    	    
-                    	    pushFollow(FollowSets000.FOLLOW_ruleAbstractControlFlowElement_in_ruleAdaptationPlan3017);
+                    	    pushFollow(FollowSets000.FOLLOW_ruleAbstractControlFlowElement_in_ruleAdaptationPlan3018);
                     	    lv_steps_8_0=ruleAbstractControlFlowElement();
 
                     	    state._fsp--;
@@ -3429,7 +3423,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                         }
                     } while (true);
 
-                    otherlv_9=(Token)match(input,28,FollowSets000.FOLLOW_28_in_ruleAdaptationPlan3031); 
+                    otherlv_9=(Token)match(input,28,FollowSets000.FOLLOW_28_in_ruleAdaptationPlan3032); 
 
                         	newLeafNode(otherlv_9, grammarAccess.getAdaptationPlanAccess().getRightParenthesisKeyword_3_3());
                         
@@ -3472,13 +3466,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_entryRuleStartAction3069);
+            pushFollow(FollowSets000.FOLLOW_ruleStartAction_in_entryRuleStartAction3070);
             iv_ruleStartAction=ruleStartAction();
 
             state._fsp--;
 
              current =iv_ruleStartAction; 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleStartAction3079); 
+            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleStartAction3080); 
 
             }
 
@@ -3526,7 +3520,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_1=(Token)match(input,41,FollowSets000.FOLLOW_41_in_ruleStartAction3125); 
+            otherlv_1=(Token)match(input,41,FollowSets000.FOLLOW_41_in_ruleStartAction3126); 
 
                 	newLeafNode(otherlv_1, grammarAccess.getStartActionAccess().getStartActionKeyword_1());
                 
@@ -3541,7 +3535,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_ruleStartAction3138); 
+                    otherlv_2=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleStartAction3139); 
 
                         	newLeafNode(otherlv_2, grammarAccess.getStartActionAccess().getIdKeyword_2_0());
                         
@@ -3554,7 +3548,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                      
                     	        newCompositeNode(grammarAccess.getStartActionAccess().getIdEStringParserRuleCall_2_1_0()); 
                     	    
-                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleStartAction3159);
+                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleStartAction3160);
                     lv_id_3_0=ruleEString();
 
                     state._fsp--;
@@ -3576,7 +3570,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
                     }
 
-                    otherlv_4=(Token)match(input,13,FollowSets000.FOLLOW_13_in_ruleStartAction3171); 
+                    otherlv_4=(Token)match(input,13,FollowSets000.FOLLOW_13_in_ruleStartAction3172); 
 
                         	newLeafNode(otherlv_4, grammarAccess.getStartActionAccess().getRightSquareBracketKeyword_2_2());
                         
@@ -3619,13 +3613,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_entryRuleStopAction3209);
+            pushFollow(FollowSets000.FOLLOW_ruleStopAction_in_entryRuleStopAction3210);
             iv_ruleStopAction=ruleStopAction();
 
             state._fsp--;
 
              current =iv_ruleStopAction; 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleStopAction3219); 
+            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleStopAction3220); 
 
             }
 
@@ -3673,7 +3667,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_1=(Token)match(input,42,FollowSets000.FOLLOW_42_in_ruleStopAction3265); 
+            otherlv_1=(Token)match(input,42,FollowSets000.FOLLOW_42_in_ruleStopAction3266); 
 
                 	newLeafNode(otherlv_1, grammarAccess.getStopActionAccess().getStopActionKeyword_1());
                 
@@ -3688,7 +3682,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_ruleStopAction3278); 
+                    otherlv_2=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleStopAction3279); 
 
                         	newLeafNode(otherlv_2, grammarAccess.getStopActionAccess().getIdKeyword_2_0());
                         
@@ -3701,7 +3695,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                      
                     	        newCompositeNode(grammarAccess.getStopActionAccess().getIdEStringParserRuleCall_2_1_0()); 
                     	    
-                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleStopAction3299);
+                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleStopAction3300);
                     lv_id_3_0=ruleEString();
 
                     state._fsp--;
@@ -3723,7 +3717,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
                     }
 
-                    otherlv_4=(Token)match(input,13,FollowSets000.FOLLOW_13_in_ruleStopAction3311); 
+                    otherlv_4=(Token)match(input,13,FollowSets000.FOLLOW_13_in_ruleStopAction3312); 
 
                         	newLeafNode(otherlv_4, grammarAccess.getStopActionAccess().getRightSquareBracketKeyword_2_2());
                         
@@ -3766,13 +3760,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_entryRuleLoopAction3349);
+            pushFollow(FollowSets000.FOLLOW_ruleLoopAction_in_entryRuleLoopAction3350);
             iv_ruleLoopAction=ruleLoopAction();
 
             state._fsp--;
 
              current =iv_ruleLoopAction; 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleLoopAction3359); 
+            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleLoopAction3360); 
 
             }
 
@@ -3827,7 +3821,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_ruleLoopAction3397); 
+                    otherlv_0=(Token)match(input,43,FollowSets000.FOLLOW_43_in_ruleLoopAction3398); 
 
                         	newLeafNode(otherlv_0, grammarAccess.getLoopActionAccess().getLoopActionKeyword_0());
                         
@@ -3848,7 +3842,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_ruleLoopAction3412); 
+                    otherlv_1=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleLoopAction3413); 
 
                         	newLeafNode(otherlv_1, grammarAccess.getLoopActionAccess().getIdKeyword_1_0());
                         
@@ -3861,7 +3855,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                      
                     	        newCompositeNode(grammarAccess.getLoopActionAccess().getIdEStringParserRuleCall_1_1_0()); 
                     	    
-                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleLoopAction3433);
+                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleLoopAction3434);
                     lv_id_2_0=ruleEString();
 
                     state._fsp--;
@@ -3883,7 +3877,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
                     }
 
-                    otherlv_3=(Token)match(input,13,FollowSets000.FOLLOW_13_in_ruleLoopAction3445); 
+                    otherlv_3=(Token)match(input,13,FollowSets000.FOLLOW_13_in_ruleLoopAction3446); 
 
                         	newLeafNode(otherlv_3, grammarAccess.getLoopActionAccess().getRightSquareBracketKeyword_1_2());
                         
@@ -3893,15 +3887,15 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_4=(Token)match(input,44,FollowSets000.FOLLOW_44_in_ruleLoopAction3459); 
+            otherlv_4=(Token)match(input,44,FollowSets000.FOLLOW_44_in_ruleLoopAction3460); 
 
                 	newLeafNode(otherlv_4, grammarAccess.getLoopActionAccess().getRepeatKeyword_2());
                 
-            otherlv_5=(Token)match(input,45,FollowSets000.FOLLOW_45_in_ruleLoopAction3471); 
+            otherlv_5=(Token)match(input,45,FollowSets000.FOLLOW_45_in_ruleLoopAction3472); 
 
                 	newLeafNode(otherlv_5, grammarAccess.getLoopActionAccess().getCounterKeyword_3());
                 
-            otherlv_6=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleLoopAction3483); 
+            otherlv_6=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleLoopAction3484); 
 
                 	newLeafNode(otherlv_6, grammarAccess.getLoopActionAccess().getEqualsSignKeyword_4());
                 
@@ -3919,7 +3913,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getLoopActionAccess().getCounterParameterCrossReference_5_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleLoopAction3506);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleLoopAction3507);
             ruleEString();
 
             state._fsp--;
@@ -3933,7 +3927,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_8=(Token)match(input,27,FollowSets000.FOLLOW_27_in_ruleLoopAction3518); 
+            otherlv_8=(Token)match(input,27,FollowSets000.FOLLOW_27_in_ruleLoopAction3519); 
 
                 	newLeafNode(otherlv_8, grammarAccess.getLoopActionAccess().getLeftParenthesisKeyword_6());
                 
@@ -3946,7 +3940,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getLoopActionAccess().getBodyAdaptationPlanParserRuleCall_7_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleAdaptationPlan_in_ruleLoopAction3539);
+            pushFollow(FollowSets000.FOLLOW_ruleAdaptationPlan_in_ruleLoopAction3540);
             lv_body_9_0=ruleAdaptationPlan();
 
             state._fsp--;
@@ -3968,7 +3962,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_10=(Token)match(input,28,FollowSets000.FOLLOW_28_in_ruleLoopAction3551); 
+            otherlv_10=(Token)match(input,28,FollowSets000.FOLLOW_28_in_ruleLoopAction3552); 
 
                 	newLeafNode(otherlv_10, grammarAccess.getLoopActionAccess().getRightParenthesisKeyword_8());
                 
@@ -4005,13 +3999,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_entryRuleBranchAction3587);
+            pushFollow(FollowSets000.FOLLOW_ruleBranchAction_in_entryRuleBranchAction3588);
             iv_ruleBranchAction=ruleBranchAction();
 
             state._fsp--;
 
              current =iv_ruleBranchAction; 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleBranchAction3597); 
+            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleBranchAction3598); 
 
             }
 
@@ -4079,7 +4073,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_ruleBranchAction3635); 
+                    otherlv_0=(Token)match(input,46,FollowSets000.FOLLOW_46_in_ruleBranchAction3636); 
 
                         	newLeafNode(otherlv_0, grammarAccess.getBranchActionAccess().getBranchActionKeyword_0());
                         
@@ -4100,7 +4094,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_ruleBranchAction3650); 
+                    otherlv_1=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleBranchAction3651); 
 
                         	newLeafNode(otherlv_1, grammarAccess.getBranchActionAccess().getIdKeyword_1_0());
                         
@@ -4113,7 +4107,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                      
                     	        newCompositeNode(grammarAccess.getBranchActionAccess().getIdEStringParserRuleCall_1_1_0()); 
                     	    
-                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleBranchAction3671);
+                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleBranchAction3672);
                     lv_id_2_0=ruleEString();
 
                     state._fsp--;
@@ -4135,7 +4129,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
                     }
 
-                    otherlv_3=(Token)match(input,13,FollowSets000.FOLLOW_13_in_ruleBranchAction3683); 
+                    otherlv_3=(Token)match(input,13,FollowSets000.FOLLOW_13_in_ruleBranchAction3684); 
 
                         	newLeafNode(otherlv_3, grammarAccess.getBranchActionAccess().getRightSquareBracketKeyword_1_2());
                         
@@ -4145,19 +4139,19 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_4=(Token)match(input,47,FollowSets000.FOLLOW_47_in_ruleBranchAction3697); 
+            otherlv_4=(Token)match(input,47,FollowSets000.FOLLOW_47_in_ruleBranchAction3698); 
 
                 	newLeafNode(otherlv_4, grammarAccess.getBranchActionAccess().getIfKeyword_2());
                 
-            otherlv_5=(Token)match(input,27,FollowSets000.FOLLOW_27_in_ruleBranchAction3709); 
+            otherlv_5=(Token)match(input,27,FollowSets000.FOLLOW_27_in_ruleBranchAction3710); 
 
                 	newLeafNode(otherlv_5, grammarAccess.getBranchActionAccess().getLeftParenthesisKeyword_3());
                 
-            otherlv_6=(Token)match(input,48,FollowSets000.FOLLOW_48_in_ruleBranchAction3721); 
+            otherlv_6=(Token)match(input,48,FollowSets000.FOLLOW_48_in_ruleBranchAction3722); 
 
                 	newLeafNode(otherlv_6, grammarAccess.getBranchActionAccess().getContextKeyword_4());
                 
-            otherlv_7=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleBranchAction3733); 
+            otherlv_7=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleBranchAction3734); 
 
                 	newLeafNode(otherlv_7, grammarAccess.getBranchActionAccess().getEqualsSignKeyword_5());
                 
@@ -4175,7 +4169,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getBranchActionAccess().getContextEntityCrossReference_6_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleBranchAction3756);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleBranchAction3757);
             ruleEString();
 
             state._fsp--;
@@ -4189,15 +4183,15 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_9=(Token)match(input,17,FollowSets000.FOLLOW_17_in_ruleBranchAction3768); 
+            otherlv_9=(Token)match(input,17,FollowSets000.FOLLOW_17_in_ruleBranchAction3769); 
 
                 	newLeafNode(otherlv_9, grammarAccess.getBranchActionAccess().getCommaKeyword_7());
                 
-            otherlv_10=(Token)match(input,49,FollowSets000.FOLLOW_49_in_ruleBranchAction3780); 
+            otherlv_10=(Token)match(input,49,FollowSets000.FOLLOW_49_in_ruleBranchAction3781); 
 
                 	newLeafNode(otherlv_10, grammarAccess.getBranchActionAccess().getConditionKeyword_8());
                 
-            otherlv_11=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleBranchAction3792); 
+            otherlv_11=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleBranchAction3793); 
 
                 	newLeafNode(otherlv_11, grammarAccess.getBranchActionAccess().getEqualsSignKeyword_9());
                 
@@ -4210,7 +4204,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getBranchActionAccess().getConditionEStringParserRuleCall_10_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleBranchAction3813);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleBranchAction3814);
             lv_condition_12_0=ruleEString();
 
             state._fsp--;
@@ -4232,15 +4226,15 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_13=(Token)match(input,28,FollowSets000.FOLLOW_28_in_ruleBranchAction3825); 
+            otherlv_13=(Token)match(input,28,FollowSets000.FOLLOW_28_in_ruleBranchAction3826); 
 
                 	newLeafNode(otherlv_13, grammarAccess.getBranchActionAccess().getRightParenthesisKeyword_11());
                 
-            otherlv_14=(Token)match(input,50,FollowSets000.FOLLOW_50_in_ruleBranchAction3837); 
+            otherlv_14=(Token)match(input,50,FollowSets000.FOLLOW_50_in_ruleBranchAction3838); 
 
                 	newLeafNode(otherlv_14, grammarAccess.getBranchActionAccess().getThenKeyword_12());
                 
-            otherlv_15=(Token)match(input,27,FollowSets000.FOLLOW_27_in_ruleBranchAction3849); 
+            otherlv_15=(Token)match(input,27,FollowSets000.FOLLOW_27_in_ruleBranchAction3850); 
 
                 	newLeafNode(otherlv_15, grammarAccess.getBranchActionAccess().getLeftParenthesisKeyword_13());
                 
@@ -4253,7 +4247,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getBranchActionAccess().getConditionTrueBranchAdaptationPlanParserRuleCall_14_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleAdaptationPlan_in_ruleBranchAction3870);
+            pushFollow(FollowSets000.FOLLOW_ruleAdaptationPlan_in_ruleBranchAction3871);
             lv_conditionTrueBranch_16_0=ruleAdaptationPlan();
 
             state._fsp--;
@@ -4275,15 +4269,15 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_17=(Token)match(input,28,FollowSets000.FOLLOW_28_in_ruleBranchAction3882); 
+            otherlv_17=(Token)match(input,28,FollowSets000.FOLLOW_28_in_ruleBranchAction3883); 
 
                 	newLeafNode(otherlv_17, grammarAccess.getBranchActionAccess().getRightParenthesisKeyword_15());
                 
-            otherlv_18=(Token)match(input,51,FollowSets000.FOLLOW_51_in_ruleBranchAction3894); 
+            otherlv_18=(Token)match(input,51,FollowSets000.FOLLOW_51_in_ruleBranchAction3895); 
 
                 	newLeafNode(otherlv_18, grammarAccess.getBranchActionAccess().getElseKeyword_16());
                 
-            otherlv_19=(Token)match(input,27,FollowSets000.FOLLOW_27_in_ruleBranchAction3906); 
+            otherlv_19=(Token)match(input,27,FollowSets000.FOLLOW_27_in_ruleBranchAction3907); 
 
                 	newLeafNode(otherlv_19, grammarAccess.getBranchActionAccess().getLeftParenthesisKeyword_17());
                 
@@ -4296,7 +4290,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getBranchActionAccess().getConditionFalseBranchAdaptationPlanParserRuleCall_18_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleAdaptationPlan_in_ruleBranchAction3927);
+            pushFollow(FollowSets000.FOLLOW_ruleAdaptationPlan_in_ruleBranchAction3928);
             lv_conditionFalseBranch_20_0=ruleAdaptationPlan();
 
             state._fsp--;
@@ -4318,7 +4312,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_21=(Token)match(input,28,FollowSets000.FOLLOW_28_in_ruleBranchAction3939); 
+            otherlv_21=(Token)match(input,28,FollowSets000.FOLLOW_28_in_ruleBranchAction3940); 
 
                 	newLeafNode(otherlv_21, grammarAccess.getBranchActionAccess().getRightParenthesisKeyword_19());
                 
@@ -4355,13 +4349,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_entryRuleActionReference3975);
+            pushFollow(FollowSets000.FOLLOW_ruleActionReference_in_entryRuleActionReference3976);
             iv_ruleActionReference=ruleActionReference();
 
             state._fsp--;
 
              current =iv_ruleActionReference; 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleActionReference3985); 
+            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleActionReference3986); 
 
             }
 
@@ -4401,7 +4395,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_ruleActionReference4022); 
+            otherlv_0=(Token)match(input,52,FollowSets000.FOLLOW_52_in_ruleActionReference4023); 
 
                 	newLeafNode(otherlv_0, grammarAccess.getActionReferenceAccess().getActionReferenceKeyword_0());
                 
@@ -4416,7 +4410,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_ruleActionReference4035); 
+                    otherlv_1=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleActionReference4036); 
 
                         	newLeafNode(otherlv_1, grammarAccess.getActionReferenceAccess().getIdKeyword_1_0());
                         
@@ -4429,7 +4423,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                      
                     	        newCompositeNode(grammarAccess.getActionReferenceAccess().getIdEStringParserRuleCall_1_1_0()); 
                     	    
-                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleActionReference4056);
+                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleActionReference4057);
                     lv_id_2_0=ruleEString();
 
                     state._fsp--;
@@ -4451,7 +4445,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
                     }
 
-                    otherlv_3=(Token)match(input,13,FollowSets000.FOLLOW_13_in_ruleActionReference4068); 
+                    otherlv_3=(Token)match(input,13,FollowSets000.FOLLOW_13_in_ruleActionReference4069); 
 
                         	newLeafNode(otherlv_3, grammarAccess.getActionReferenceAccess().getRightSquareBracketKeyword_1_2());
                         
@@ -4461,11 +4455,11 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_4=(Token)match(input,27,FollowSets000.FOLLOW_27_in_ruleActionReference4082); 
+            otherlv_4=(Token)match(input,27,FollowSets000.FOLLOW_27_in_ruleActionReference4083); 
 
                 	newLeafNode(otherlv_4, grammarAccess.getActionReferenceAccess().getLeftParenthesisKeyword_2());
                 
-            otherlv_5=(Token)match(input,53,FollowSets000.FOLLOW_53_in_ruleActionReference4094); 
+            otherlv_5=(Token)match(input,53,FollowSets000.FOLLOW_53_in_ruleActionReference4095); 
 
                 	newLeafNode(otherlv_5, grammarAccess.getActionReferenceAccess().getRefersToKeyword_3());
                 
@@ -4483,7 +4477,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getActionReferenceAccess().getRefersToActionCrossReference_4_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleActionReference4117);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleActionReference4118);
             ruleEString();
 
             state._fsp--;
@@ -4497,7 +4491,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_7=(Token)match(input,28,FollowSets000.FOLLOW_28_in_ruleActionReference4129); 
+            otherlv_7=(Token)match(input,28,FollowSets000.FOLLOW_28_in_ruleActionReference4130); 
 
                 	newLeafNode(otherlv_7, grammarAccess.getActionReferenceAccess().getRightParenthesisKeyword_5());
                 
@@ -4534,13 +4528,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_entryRuleAdaptationActionOperation4165);
+            pushFollow(FollowSets000.FOLLOW_ruleAdaptationActionOperation_in_entryRuleAdaptationActionOperation4166);
             iv_ruleAdaptationActionOperation=ruleAdaptationActionOperation();
 
             state._fsp--;
 
              current =iv_ruleAdaptationActionOperation; 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleAdaptationActionOperation4175); 
+            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleAdaptationActionOperation4176); 
 
             }
 
@@ -4579,7 +4573,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_ruleAdaptationActionOperation4212); 
+            otherlv_0=(Token)match(input,27,FollowSets000.FOLLOW_27_in_ruleAdaptationActionOperation4213); 
 
                 	newLeafNode(otherlv_0, grammarAccess.getAdaptationActionOperationAccess().getLeftParenthesisKeyword_0());
                 
@@ -4592,7 +4586,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getAdaptationActionOperationAccess().getAdaptationOperationDirectionAdaptationDirectionEnumRuleCall_1_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleAdaptationDirection_in_ruleAdaptationActionOperation4233);
+            pushFollow(FollowSets000.FOLLOW_ruleAdaptationDirection_in_ruleAdaptationActionOperation4234);
             lv_adaptationOperationDirection_1_0=ruleAdaptationDirection();
 
             state._fsp--;
@@ -4614,7 +4608,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_2=(Token)match(input,17,FollowSets000.FOLLOW_17_in_ruleAdaptationActionOperation4245); 
+            otherlv_2=(Token)match(input,17,FollowSets000.FOLLOW_17_in_ruleAdaptationActionOperation4246); 
 
                 	newLeafNode(otherlv_2, grammarAccess.getAdaptationActionOperationAccess().getCommaKeyword_2());
                 
@@ -4627,7 +4621,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getAdaptationActionOperationAccess().getAdaptationOperationScopeAdaptationScopeEnumRuleCall_3_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleAdaptationScope_in_ruleAdaptationActionOperation4266);
+            pushFollow(FollowSets000.FOLLOW_ruleAdaptationScope_in_ruleAdaptationActionOperation4267);
             lv_adaptationOperationScope_3_0=ruleAdaptationScope();
 
             state._fsp--;
@@ -4649,7 +4643,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_4=(Token)match(input,28,FollowSets000.FOLLOW_28_in_ruleAdaptationActionOperation4278); 
+            otherlv_4=(Token)match(input,28,FollowSets000.FOLLOW_28_in_ruleAdaptationActionOperation4279); 
 
                 	newLeafNode(otherlv_4, grammarAccess.getAdaptationActionOperationAccess().getRightParenthesisKeyword_4());
                 
@@ -4686,13 +4680,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_entryRuleModelVariableConfigurationRange4314);
+            pushFollow(FollowSets000.FOLLOW_ruleModelVariableConfigurationRange_in_entryRuleModelVariableConfigurationRange4315);
             iv_ruleModelVariableConfigurationRange=ruleModelVariableConfigurationRange();
 
             state._fsp--;
 
              current =iv_ruleModelVariableConfigurationRange; 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleModelVariableConfigurationRange4324); 
+            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleModelVariableConfigurationRange4325); 
 
             }
 
@@ -4741,7 +4735,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_ruleModelVariableConfigurationRange4361); 
+            otherlv_0=(Token)match(input,54,FollowSets000.FOLLOW_54_in_ruleModelVariableConfigurationRange4362); 
 
                 	newLeafNode(otherlv_0, grammarAccess.getModelVariableConfigurationRangeAccess().getModelVariableConfigurationRangeKeyword_0());
                 
@@ -4756,7 +4750,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_ruleModelVariableConfigurationRange4374); 
+                    otherlv_1=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleModelVariableConfigurationRange4375); 
 
                         	newLeafNode(otherlv_1, grammarAccess.getModelVariableConfigurationRangeAccess().getIdKeyword_1_0());
                         
@@ -4769,7 +4763,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                      
                     	        newCompositeNode(grammarAccess.getModelVariableConfigurationRangeAccess().getIdEStringParserRuleCall_1_1_0()); 
                     	    
-                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleModelVariableConfigurationRange4395);
+                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleModelVariableConfigurationRange4396);
                     lv_id_2_0=ruleEString();
 
                     state._fsp--;
@@ -4791,7 +4785,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
                     }
 
-                    otherlv_3=(Token)match(input,13,FollowSets000.FOLLOW_13_in_ruleModelVariableConfigurationRange4407); 
+                    otherlv_3=(Token)match(input,13,FollowSets000.FOLLOW_13_in_ruleModelVariableConfigurationRange4408); 
 
                         	newLeafNode(otherlv_3, grammarAccess.getModelVariableConfigurationRangeAccess().getRightSquareBracketKeyword_1_2());
                         
@@ -4801,11 +4795,11 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_4=(Token)match(input,14,FollowSets000.FOLLOW_14_in_ruleModelVariableConfigurationRange4421); 
+            otherlv_4=(Token)match(input,14,FollowSets000.FOLLOW_14_in_ruleModelVariableConfigurationRange4422); 
 
                 	newLeafNode(otherlv_4, grammarAccess.getModelVariableConfigurationRangeAccess().getLeftCurlyBracketKeyword_2());
                 
-            otherlv_5=(Token)match(input,55,FollowSets000.FOLLOW_55_in_ruleModelVariableConfigurationRange4433); 
+            otherlv_5=(Token)match(input,55,FollowSets000.FOLLOW_55_in_ruleModelVariableConfigurationRange4434); 
 
                 	newLeafNode(otherlv_5, grammarAccess.getModelVariableConfigurationRangeAccess().getNameKeyword_3());
                 
@@ -4818,7 +4812,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getModelVariableConfigurationRangeAccess().getNameEStringParserRuleCall_4_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleModelVariableConfigurationRange4454);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleModelVariableConfigurationRange4455);
             lv_name_6_0=ruleEString();
 
             state._fsp--;
@@ -4840,7 +4834,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_7=(Token)match(input,56,FollowSets000.FOLLOW_56_in_ruleModelVariableConfigurationRange4466); 
+            otherlv_7=(Token)match(input,56,FollowSets000.FOLLOW_56_in_ruleModelVariableConfigurationRange4467); 
 
                 	newLeafNode(otherlv_7, grammarAccess.getModelVariableConfigurationRangeAccess().getMinValueKeyword_5());
                 
@@ -4853,7 +4847,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getModelVariableConfigurationRangeAccess().getMinValueEDoubleParserRuleCall_6_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleEDouble_in_ruleModelVariableConfigurationRange4487);
+            pushFollow(FollowSets000.FOLLOW_ruleEDouble_in_ruleModelVariableConfigurationRange4488);
             lv_minValue_8_0=ruleEDouble();
 
             state._fsp--;
@@ -4875,7 +4869,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_9=(Token)match(input,57,FollowSets000.FOLLOW_57_in_ruleModelVariableConfigurationRange4499); 
+            otherlv_9=(Token)match(input,57,FollowSets000.FOLLOW_57_in_ruleModelVariableConfigurationRange4500); 
 
                 	newLeafNode(otherlv_9, grammarAccess.getModelVariableConfigurationRangeAccess().getMaxValueKeyword_7());
                 
@@ -4888,7 +4882,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getModelVariableConfigurationRangeAccess().getMaxValueEDoubleParserRuleCall_8_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleEDouble_in_ruleModelVariableConfigurationRange4520);
+            pushFollow(FollowSets000.FOLLOW_ruleEDouble_in_ruleModelVariableConfigurationRange4521);
             lv_maxValue_10_0=ruleEDouble();
 
             state._fsp--;
@@ -4910,7 +4904,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_11=(Token)match(input,58,FollowSets000.FOLLOW_58_in_ruleModelVariableConfigurationRange4532); 
+            otherlv_11=(Token)match(input,58,FollowSets000.FOLLOW_58_in_ruleModelVariableConfigurationRange4533); 
 
                 	newLeafNode(otherlv_11, grammarAccess.getModelVariableConfigurationRangeAccess().getAdaptableEntityKeyword_9());
                 
@@ -4928,7 +4922,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getModelVariableConfigurationRangeAccess().getAdaptableEntityAdaptableEntityCrossReference_10_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleModelVariableConfigurationRange4555);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleModelVariableConfigurationRange4556);
             ruleEString();
 
             state._fsp--;
@@ -4942,7 +4936,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_13=(Token)match(input,22,FollowSets000.FOLLOW_22_in_ruleModelVariableConfigurationRange4567); 
+            otherlv_13=(Token)match(input,22,FollowSets000.FOLLOW_22_in_ruleModelVariableConfigurationRange4568); 
 
                 	newLeafNode(otherlv_13, grammarAccess.getModelVariableConfigurationRangeAccess().getRightCurlyBracketKeyword_11());
                 
@@ -4979,13 +4973,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_entryRuleModelEntityConfigurationRange4603);
+            pushFollow(FollowSets000.FOLLOW_ruleModelEntityConfigurationRange_in_entryRuleModelEntityConfigurationRange4604);
             iv_ruleModelEntityConfigurationRange=ruleModelEntityConfigurationRange();
 
             state._fsp--;
 
              current =iv_ruleModelEntityConfigurationRange; 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleModelEntityConfigurationRange4613); 
+            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleModelEntityConfigurationRange4614); 
 
             }
 
@@ -5031,7 +5025,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_ruleModelEntityConfigurationRange4650); 
+            otherlv_0=(Token)match(input,59,FollowSets000.FOLLOW_59_in_ruleModelEntityConfigurationRange4651); 
 
                 	newLeafNode(otherlv_0, grammarAccess.getModelEntityConfigurationRangeAccess().getModelEntityConfigurationRangeKeyword_0());
                 
@@ -5046,7 +5040,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_ruleModelEntityConfigurationRange4663); 
+                    otherlv_1=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleModelEntityConfigurationRange4664); 
 
                         	newLeafNode(otherlv_1, grammarAccess.getModelEntityConfigurationRangeAccess().getIdKeyword_1_0());
                         
@@ -5059,7 +5053,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                      
                     	        newCompositeNode(grammarAccess.getModelEntityConfigurationRangeAccess().getIdEStringParserRuleCall_1_1_0()); 
                     	    
-                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleModelEntityConfigurationRange4684);
+                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleModelEntityConfigurationRange4685);
                     lv_id_2_0=ruleEString();
 
                     state._fsp--;
@@ -5081,7 +5075,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
                     }
 
-                    otherlv_3=(Token)match(input,13,FollowSets000.FOLLOW_13_in_ruleModelEntityConfigurationRange4696); 
+                    otherlv_3=(Token)match(input,13,FollowSets000.FOLLOW_13_in_ruleModelEntityConfigurationRange4697); 
 
                         	newLeafNode(otherlv_3, grammarAccess.getModelEntityConfigurationRangeAccess().getRightSquareBracketKeyword_1_2());
                         
@@ -5091,11 +5085,11 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_4=(Token)match(input,14,FollowSets000.FOLLOW_14_in_ruleModelEntityConfigurationRange4710); 
+            otherlv_4=(Token)match(input,14,FollowSets000.FOLLOW_14_in_ruleModelEntityConfigurationRange4711); 
 
                 	newLeafNode(otherlv_4, grammarAccess.getModelEntityConfigurationRangeAccess().getLeftCurlyBracketKeyword_2());
                 
-            otherlv_5=(Token)match(input,55,FollowSets000.FOLLOW_55_in_ruleModelEntityConfigurationRange4722); 
+            otherlv_5=(Token)match(input,55,FollowSets000.FOLLOW_55_in_ruleModelEntityConfigurationRange4723); 
 
                 	newLeafNode(otherlv_5, grammarAccess.getModelEntityConfigurationRangeAccess().getNameKeyword_3());
                 
@@ -5108,7 +5102,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getModelEntityConfigurationRangeAccess().getNameEStringParserRuleCall_4_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleModelEntityConfigurationRange4743);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleModelEntityConfigurationRange4744);
             lv_name_6_0=ruleEString();
 
             state._fsp--;
@@ -5130,7 +5124,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_7=(Token)match(input,58,FollowSets000.FOLLOW_58_in_ruleModelEntityConfigurationRange4755); 
+            otherlv_7=(Token)match(input,58,FollowSets000.FOLLOW_58_in_ruleModelEntityConfigurationRange4756); 
 
                 	newLeafNode(otherlv_7, grammarAccess.getModelEntityConfigurationRangeAccess().getAdaptableEntityKeyword_5());
                 
@@ -5148,7 +5142,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getModelEntityConfigurationRangeAccess().getAdaptableEntityEntityCrossReference_6_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleModelEntityConfigurationRange4778);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleModelEntityConfigurationRange4779);
             ruleEString();
 
             state._fsp--;
@@ -5162,7 +5156,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_9=(Token)match(input,60,FollowSets000.FOLLOW_60_in_ruleModelEntityConfigurationRange4790); 
+            otherlv_9=(Token)match(input,60,FollowSets000.FOLLOW_60_in_ruleModelEntityConfigurationRange4791); 
 
                 	newLeafNode(otherlv_9, grammarAccess.getModelEntityConfigurationRangeAccess().getVariationPossibilityKeyword_7());
                 
@@ -5175,7 +5169,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getModelEntityConfigurationRangeAccess().getVariationPossibilityVariationTypeParserRuleCall_8_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleVariationType_in_ruleModelEntityConfigurationRange4811);
+            pushFollow(FollowSets000.FOLLOW_ruleVariationType_in_ruleModelEntityConfigurationRange4812);
             lv_variationPossibility_10_0=ruleVariationType();
 
             state._fsp--;
@@ -5197,7 +5191,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_11=(Token)match(input,22,FollowSets000.FOLLOW_22_in_ruleModelEntityConfigurationRange4823); 
+            otherlv_11=(Token)match(input,22,FollowSets000.FOLLOW_22_in_ruleModelEntityConfigurationRange4824); 
 
                 	newLeafNode(otherlv_11, grammarAccess.getModelEntityConfigurationRangeAccess().getRightCurlyBracketKeyword_9());
                 
@@ -5234,13 +5228,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_entryRuleEDouble4860);
+            pushFollow(FollowSets000.FOLLOW_ruleEDouble_in_entryRuleEDouble4861);
             iv_ruleEDouble=ruleEDouble();
 
             state._fsp--;
 
              current =iv_ruleEDouble.getText(); 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleEDouble4871); 
+            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleEDouble4872); 
 
             }
 
@@ -5287,7 +5281,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_ruleEDouble4910); 
+                    kw=(Token)match(input,61,FollowSets000.FOLLOW_61_in_ruleEDouble4911); 
 
                             current.merge(kw);
                             newLeafNode(kw, grammarAccess.getEDoubleAccess().getHyphenMinusKeyword_0()); 
@@ -5309,7 +5303,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_ruleEDouble4928); 
+                    this_INT_1=(Token)match(input,RULE_INT,FollowSets000.FOLLOW_RULE_INT_in_ruleEDouble4929); 
 
                     		current.merge(this_INT_1);
                         
@@ -5322,12 +5316,12 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            kw=(Token)match(input,62,FollowSets000.FOLLOW_62_in_ruleEDouble4948); 
+            kw=(Token)match(input,62,FollowSets000.FOLLOW_62_in_ruleEDouble4949); 
 
                     current.merge(kw);
                     newLeafNode(kw, grammarAccess.getEDoubleAccess().getFullStopKeyword_2()); 
                 
-            this_INT_3=(Token)match(input,RULE_INT,FollowSets000.FOLLOW_RULE_INT_in_ruleEDouble4963); 
+            this_INT_3=(Token)match(input,RULE_INT,FollowSets000.FOLLOW_RULE_INT_in_ruleEDouble4964); 
 
             		current.merge(this_INT_3);
                 
@@ -5365,7 +5359,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_ruleEDouble4983); 
+                            kw=(Token)match(input,63,FollowSets000.FOLLOW_63_in_ruleEDouble4984); 
 
                                     current.merge(kw);
                                     newLeafNode(kw, grammarAccess.getEDoubleAccess().getEKeyword_4_0_0()); 
@@ -5376,7 +5370,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_ruleEDouble5002); 
+                            kw=(Token)match(input,64,FollowSets000.FOLLOW_64_in_ruleEDouble5003); 
 
                                     current.merge(kw);
                                     newLeafNode(kw, grammarAccess.getEDoubleAccess().getEKeyword_4_0_1()); 
@@ -5398,7 +5392,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_ruleEDouble5017); 
+                            kw=(Token)match(input,61,FollowSets000.FOLLOW_61_in_ruleEDouble5018); 
 
                                     current.merge(kw);
                                     newLeafNode(kw, grammarAccess.getEDoubleAccess().getHyphenMinusKeyword_4_1()); 
@@ -5409,7 +5403,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
                     }
 
-                    this_INT_7=(Token)match(input,RULE_INT,FollowSets000.FOLLOW_RULE_INT_in_ruleEDouble5034); 
+                    this_INT_7=(Token)match(input,RULE_INT,FollowSets000.FOLLOW_RULE_INT_in_ruleEDouble5035); 
 
                     		current.merge(this_INT_7);
                         
@@ -5455,13 +5449,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_entryRulePropertyRange5081);
+            pushFollow(FollowSets000.FOLLOW_rulePropertyRange_in_entryRulePropertyRange5082);
             iv_rulePropertyRange=rulePropertyRange();
 
             state._fsp--;
 
              current =iv_rulePropertyRange; 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRulePropertyRange5091); 
+            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRulePropertyRange5092); 
 
             }
 
@@ -5502,15 +5496,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_rulePropertyRange5128); 
+            otherlv_0=(Token)match(input,65,FollowSets000.FOLLOW_65_in_rulePropertyRange5129); 
 
                 	newLeafNode(otherlv_0, grammarAccess.getPropertyRangeAccess().getPropertyRangeKeyword_0());
                 
-            otherlv_1=(Token)match(input,14,FollowSets000.FOLLOW_14_in_rulePropertyRange5140); 
+            otherlv_1=(Token)match(input,14,FollowSets000.FOLLOW_14_in_rulePropertyRange5141); 
 
                 	newLeafNode(otherlv_1, grammarAccess.getPropertyRangeAccess().getLeftCurlyBracketKeyword_1());
                 
-            otherlv_2=(Token)match(input,66,FollowSets000.FOLLOW_66_in_rulePropertyRange5152); 
+            otherlv_2=(Token)match(input,66,FollowSets000.FOLLOW_66_in_rulePropertyRange5153); 
 
                 	newLeafNode(otherlv_2, grammarAccess.getPropertyRangeAccess().getMinValueConstraintKeyword_2());
                 
@@ -5523,7 +5517,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getPropertyRangeAccess().getMinValueConstraintOclConstraintParserRuleCall_3_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleOclConstraint_in_rulePropertyRange5173);
+            pushFollow(FollowSets000.FOLLOW_ruleOclConstraint_in_rulePropertyRange5174);
             lv_minValueConstraint_3_0=ruleOclConstraint();
 
             state._fsp--;
@@ -5545,7 +5539,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_4=(Token)match(input,67,FollowSets000.FOLLOW_67_in_rulePropertyRange5185); 
+            otherlv_4=(Token)match(input,67,FollowSets000.FOLLOW_67_in_rulePropertyRange5186); 
 
                 	newLeafNode(otherlv_4, grammarAccess.getPropertyRangeAccess().getMaxValueConstraintKeyword_4());
                 
@@ -5558,7 +5552,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getPropertyRangeAccess().getMaxValueConstraintOclConstraintParserRuleCall_5_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleOclConstraint_in_rulePropertyRange5206);
+            pushFollow(FollowSets000.FOLLOW_ruleOclConstraint_in_rulePropertyRange5207);
             lv_maxValueConstraint_5_0=ruleOclConstraint();
 
             state._fsp--;
@@ -5580,7 +5574,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_6=(Token)match(input,22,FollowSets000.FOLLOW_22_in_rulePropertyRange5218); 
+            otherlv_6=(Token)match(input,22,FollowSets000.FOLLOW_22_in_rulePropertyRange5219); 
 
                 	newLeafNode(otherlv_6, grammarAccess.getPropertyRangeAccess().getRightCurlyBracketKeyword_6());
                 
@@ -5617,13 +5611,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_entryRuleSetOfConfigurations5254);
+            pushFollow(FollowSets000.FOLLOW_ruleSetOfConfigurations_in_entryRuleSetOfConfigurations5255);
             iv_ruleSetOfConfigurations=ruleSetOfConfigurations();
 
             state._fsp--;
 
              current =iv_ruleSetOfConfigurations; 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleSetOfConfigurations5264); 
+            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleSetOfConfigurations5265); 
 
             }
 
@@ -5665,11 +5659,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_ruleSetOfConfigurations5301); 
+            otherlv_0=(Token)match(input,68,FollowSets000.FOLLOW_68_in_ruleSetOfConfigurations5302); 
 
                 	newLeafNode(otherlv_0, grammarAccess.getSetOfConfigurationsAccess().getSetOfConfigurationsKeyword_0());
                 
-            otherlv_1=(Token)match(input,14,FollowSets000.FOLLOW_14_in_ruleSetOfConfigurations5313); 
+            otherlv_1=(Token)match(input,14,FollowSets000.FOLLOW_14_in_ruleSetOfConfigurations5314); 
 
                 	newLeafNode(otherlv_1, grammarAccess.getSetOfConfigurationsAccess().getLeftCurlyBracketKeyword_1());
                 
@@ -5684,11 +5678,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_ruleSetOfConfigurations5326); 
+                    otherlv_2=(Token)match(input,69,FollowSets000.FOLLOW_69_in_ruleSetOfConfigurations5327); 
 
                         	newLeafNode(otherlv_2, grammarAccess.getSetOfConfigurationsAccess().getVariantsKeyword_2_0());
                         
-                    otherlv_3=(Token)match(input,27,FollowSets000.FOLLOW_27_in_ruleSetOfConfigurations5338); 
+                    otherlv_3=(Token)match(input,27,FollowSets000.FOLLOW_27_in_ruleSetOfConfigurations5339); 
 
                         	newLeafNode(otherlv_3, grammarAccess.getSetOfConfigurationsAccess().getLeftParenthesisKeyword_2_1());
                         
@@ -5706,7 +5700,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                      
                     	        newCompositeNode(grammarAccess.getSetOfConfigurationsAccess().getVariantsEntityCrossReference_2_2_0()); 
                     	    
-                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleSetOfConfigurations5361);
+                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleSetOfConfigurations5362);
                     ruleEString();
 
                     state._fsp--;
@@ -5735,7 +5729,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_ruleSetOfConfigurations5374); 
+                    	    otherlv_5=(Token)match(input,17,FollowSets000.FOLLOW_17_in_ruleSetOfConfigurations5375); 
 
                     	        	newLeafNode(otherlv_5, grammarAccess.getSetOfConfigurationsAccess().getCommaKeyword_2_3_0());
                     	        
@@ -5753,7 +5747,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                     	     
                     	    	        newCompositeNode(grammarAccess.getSetOfConfigurationsAccess().getVariantsEntityCrossReference_2_3_1_0()); 
                     	    	    
-                    	    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleSetOfConfigurations5397);
+                    	    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleSetOfConfigurations5398);
                     	    ruleEString();
 
                     	    state._fsp--;
@@ -5776,7 +5770,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                         }
                     } while (true);
 
-                    otherlv_7=(Token)match(input,28,FollowSets000.FOLLOW_28_in_ruleSetOfConfigurations5411); 
+                    otherlv_7=(Token)match(input,28,FollowSets000.FOLLOW_28_in_ruleSetOfConfigurations5412); 
 
                         	newLeafNode(otherlv_7, grammarAccess.getSetOfConfigurationsAccess().getRightParenthesisKeyword_2_4());
                         
@@ -5786,7 +5780,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_8=(Token)match(input,70,FollowSets000.FOLLOW_70_in_ruleSetOfConfigurations5425); 
+            otherlv_8=(Token)match(input,70,FollowSets000.FOLLOW_70_in_ruleSetOfConfigurations5426); 
 
                 	newLeafNode(otherlv_8, grammarAccess.getSetOfConfigurationsAccess().getValueConstraintKeyword_3());
                 
@@ -5799,7 +5793,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getSetOfConfigurationsAccess().getValueConstraintOclConstraintParserRuleCall_4_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleOclConstraint_in_ruleSetOfConfigurations5446);
+            pushFollow(FollowSets000.FOLLOW_ruleOclConstraint_in_ruleSetOfConfigurations5447);
             lv_valueConstraint_9_0=ruleOclConstraint();
 
             state._fsp--;
@@ -5821,7 +5815,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_10=(Token)match(input,22,FollowSets000.FOLLOW_22_in_ruleSetOfConfigurations5458); 
+            otherlv_10=(Token)match(input,22,FollowSets000.FOLLOW_22_in_ruleSetOfConfigurations5459); 
 
                 	newLeafNode(otherlv_10, grammarAccess.getSetOfConfigurationsAccess().getRightCurlyBracketKeyword_5());
                 
@@ -5858,13 +5852,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_entryRuleOclConstraint5494);
+            pushFollow(FollowSets000.FOLLOW_ruleOclConstraint_in_entryRuleOclConstraint5495);
             iv_ruleOclConstraint=ruleOclConstraint();
 
             state._fsp--;
 
              current =iv_ruleOclConstraint; 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleOclConstraint5504); 
+            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleOclConstraint5505); 
 
             }
 
@@ -5904,7 +5898,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_ruleOclConstraint5541); 
+            otherlv_0=(Token)match(input,71,FollowSets000.FOLLOW_71_in_ruleOclConstraint5542); 
 
                 	newLeafNode(otherlv_0, grammarAccess.getOclConstraintAccess().getOclConstraintKeyword_0());
                 
@@ -5917,7 +5911,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getOclConstraintAccess().getNameEStringParserRuleCall_1_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleOclConstraint5562);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleOclConstraint5563);
             lv_name_1_0=ruleEString();
 
             state._fsp--;
@@ -5939,11 +5933,11 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_2=(Token)match(input,14,FollowSets000.FOLLOW_14_in_ruleOclConstraint5574); 
+            otherlv_2=(Token)match(input,14,FollowSets000.FOLLOW_14_in_ruleOclConstraint5575); 
 
                 	newLeafNode(otherlv_2, grammarAccess.getOclConstraintAccess().getLeftCurlyBracketKeyword_2());
                 
-            otherlv_3=(Token)match(input,72,FollowSets000.FOLLOW_72_in_ruleOclConstraint5586); 
+            otherlv_3=(Token)match(input,72,FollowSets000.FOLLOW_72_in_ruleOclConstraint5587); 
 
                 	newLeafNode(otherlv_3, grammarAccess.getOclConstraintAccess().getOclStringKeyword_3());
                 
@@ -5956,7 +5950,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getOclConstraintAccess().getOclStringEStringParserRuleCall_4_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleOclConstraint5607);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleOclConstraint5608);
             lv_oclString_4_0=ruleEString();
 
             state._fsp--;
@@ -5978,7 +5972,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_5=(Token)match(input,22,FollowSets000.FOLLOW_22_in_ruleOclConstraint5619); 
+            otherlv_5=(Token)match(input,22,FollowSets000.FOLLOW_22_in_ruleOclConstraint5620); 
 
                 	newLeafNode(otherlv_5, grammarAccess.getOclConstraintAccess().getRightCurlyBracketKeyword_5());
                 
@@ -6015,13 +6009,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_entryRuleObjective5655);
+            pushFollow(FollowSets000.FOLLOW_ruleObjective_in_entryRuleObjective5656);
             iv_ruleObjective=ruleObjective();
 
             state._fsp--;
 
              current =iv_ruleObjective; 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleObjective5665); 
+            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleObjective5666); 
 
             }
 
@@ -6081,7 +6075,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getObjectiveAccess().getNameEStringParserRuleCall_0_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleObjective5711);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleObjective5712);
             lv_name_0_0=ruleEString();
 
             state._fsp--;
@@ -6114,7 +6108,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_ruleObjective5724); 
+                    otherlv_1=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleObjective5725); 
 
                         	newLeafNode(otherlv_1, grammarAccess.getObjectiveAccess().getIdKeyword_1_0());
                         
@@ -6127,7 +6121,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                      
                     	        newCompositeNode(grammarAccess.getObjectiveAccess().getIdEStringParserRuleCall_1_1_0()); 
                     	    
-                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleObjective5745);
+                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleObjective5746);
                     lv_id_2_0=ruleEString();
 
                     state._fsp--;
@@ -6149,7 +6143,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
                     }
 
-                    otherlv_3=(Token)match(input,13,FollowSets000.FOLLOW_13_in_ruleObjective5757); 
+                    otherlv_3=(Token)match(input,13,FollowSets000.FOLLOW_13_in_ruleObjective5758); 
 
                         	newLeafNode(otherlv_3, grammarAccess.getObjectiveAccess().getRightSquareBracketKeyword_1_2());
                         
@@ -6159,15 +6153,15 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_4=(Token)match(input,14,FollowSets000.FOLLOW_14_in_ruleObjective5771); 
+            otherlv_4=(Token)match(input,14,FollowSets000.FOLLOW_14_in_ruleObjective5772); 
 
                 	newLeafNode(otherlv_4, grammarAccess.getObjectiveAccess().getLeftCurlyBracketKeyword_2());
                 
-            otherlv_5=(Token)match(input,73,FollowSets000.FOLLOW_73_in_ruleObjective5783); 
+            otherlv_5=(Token)match(input,73,FollowSets000.FOLLOW_73_in_ruleObjective5784); 
 
                 	newLeafNode(otherlv_5, grammarAccess.getObjectiveAccess().getSpecificationKeyword_3());
                 
-            otherlv_6=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleObjective5795); 
+            otherlv_6=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleObjective5796); 
 
                 	newLeafNode(otherlv_6, grammarAccess.getObjectiveAccess().getEqualsSignKeyword_4());
                 
@@ -6184,7 +6178,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                 if ( (LA49_2==27||LA49_2==80) ) {
                     alt49=2;
                 }
-                else if ( ((LA49_2>=RULE_STRING && LA49_2<=RULE_ID)||LA49_2==81) ) {
+                else if ( ((LA49_2>=RULE_ID && LA49_2<=RULE_STRING)||LA49_2==81) ) {
                     alt49=1;
                 }
                 else {
@@ -6213,7 +6207,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                      
                     	        newCompositeNode(grammarAccess.getObjectiveAccess().getSpecificationsSpecificationParserRuleCall_5_0_0()); 
                     	    
-                    pushFollow(FollowSets000.FOLLOW_ruleSpecification_in_ruleObjective5817);
+                    pushFollow(FollowSets000.FOLLOW_ruleSpecification_in_ruleObjective5818);
                     lv_specifications_7_0=ruleSpecification();
 
                     state._fsp--;
@@ -6244,7 +6238,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_ruleObjective5836); 
+                    otherlv_8=(Token)match(input,27,FollowSets000.FOLLOW_27_in_ruleObjective5837); 
 
                         	newLeafNode(otherlv_8, grammarAccess.getObjectiveAccess().getLeftParenthesisKeyword_5_1_0());
                         
@@ -6257,7 +6251,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                      
                     	        newCompositeNode(grammarAccess.getObjectiveAccess().getSpecificationsSpecificationParserRuleCall_5_1_1_0()); 
                     	    
-                    pushFollow(FollowSets000.FOLLOW_ruleSpecification_in_ruleObjective5857);
+                    pushFollow(FollowSets000.FOLLOW_ruleSpecification_in_ruleObjective5858);
                     lv_specifications_9_0=ruleSpecification();
 
                     state._fsp--;
@@ -6294,7 +6288,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_ruleObjective5870); 
+                    	    otherlv_10=(Token)match(input,17,FollowSets000.FOLLOW_17_in_ruleObjective5871); 
 
                     	        	newLeafNode(otherlv_10, grammarAccess.getObjectiveAccess().getCommaKeyword_5_1_2_0());
                     	        
@@ -6307,7 +6301,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                     	     
                     	    	        newCompositeNode(grammarAccess.getObjectiveAccess().getSpecificationsSpecificationParserRuleCall_5_1_2_1_0()); 
                     	    	    
-                    	    pushFollow(FollowSets000.FOLLOW_ruleSpecification_in_ruleObjective5891);
+                    	    pushFollow(FollowSets000.FOLLOW_ruleSpecification_in_ruleObjective5892);
                     	    lv_specifications_11_0=ruleSpecification();
 
                     	    state._fsp--;
@@ -6338,7 +6332,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                         }
                     } while (true);
 
-                    otherlv_12=(Token)match(input,28,FollowSets000.FOLLOW_28_in_ruleObjective5905); 
+                    otherlv_12=(Token)match(input,28,FollowSets000.FOLLOW_28_in_ruleObjective5906); 
 
                         	newLeafNode(otherlv_12, grammarAccess.getObjectiveAccess().getRightParenthesisKeyword_5_1_3());
                         
@@ -6351,7 +6345,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_13=(Token)match(input,22,FollowSets000.FOLLOW_22_in_ruleObjective5919); 
+            otherlv_13=(Token)match(input,22,FollowSets000.FOLLOW_22_in_ruleObjective5920); 
 
                 	newLeafNode(otherlv_13, grammarAccess.getObjectiveAccess().getRightCurlyBracketKeyword_6());
                 
@@ -6388,13 +6382,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_entryRuleEvent5955);
+            pushFollow(FollowSets000.FOLLOW_ruleEvent_in_entryRuleEvent5956);
             iv_ruleEvent=ruleEvent();
 
             state._fsp--;
 
              current =iv_ruleEvent; 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleEvent5965); 
+            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleEvent5966); 
 
             }
 
@@ -6441,7 +6435,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getEventAccess().getNameEStringParserRuleCall_0_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleEvent6011);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleEvent6012);
             lv_name_0_0=ruleEString();
 
             state._fsp--;
@@ -6474,7 +6468,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_ruleEvent6024); 
+                    otherlv_1=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleEvent6025); 
 
                         	newLeafNode(otherlv_1, grammarAccess.getEventAccess().getIdKeyword_1_0());
                         
@@ -6487,7 +6481,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                      
                     	        newCompositeNode(grammarAccess.getEventAccess().getIdEStringParserRuleCall_1_1_0()); 
                     	    
-                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleEvent6045);
+                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleEvent6046);
                     lv_id_2_0=ruleEString();
 
                     state._fsp--;
@@ -6509,7 +6503,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
                     }
 
-                    otherlv_3=(Token)match(input,13,FollowSets000.FOLLOW_13_in_ruleEvent6057); 
+                    otherlv_3=(Token)match(input,13,FollowSets000.FOLLOW_13_in_ruleEvent6058); 
 
                         	newLeafNode(otherlv_3, grammarAccess.getEventAccess().getRightSquareBracketKeyword_1_2());
                         
@@ -6552,13 +6546,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_entryRuleWeightedTactic6095);
+            pushFollow(FollowSets000.FOLLOW_ruleWeightedTactic_in_entryRuleWeightedTactic6096);
             iv_ruleWeightedTactic=ruleWeightedTactic();
 
             state._fsp--;
 
              current =iv_ruleWeightedTactic; 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleWeightedTactic6105); 
+            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleWeightedTactic6106); 
 
             }
 
@@ -6623,7 +6617,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getWeightedTacticAccess().getNameEStringParserRuleCall_0_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleWeightedTactic6151);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleWeightedTactic6152);
             lv_name_0_0=ruleEString();
 
             state._fsp--;
@@ -6656,7 +6650,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_ruleWeightedTactic6164); 
+                    otherlv_1=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleWeightedTactic6165); 
 
                         	newLeafNode(otherlv_1, grammarAccess.getWeightedTacticAccess().getIdKeyword_1_0());
                         
@@ -6669,7 +6663,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                      
                     	        newCompositeNode(grammarAccess.getWeightedTacticAccess().getIdEStringParserRuleCall_1_1_0()); 
                     	    
-                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleWeightedTactic6185);
+                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleWeightedTactic6186);
                     lv_id_2_0=ruleEString();
 
                     state._fsp--;
@@ -6691,7 +6685,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
                     }
 
-                    otherlv_3=(Token)match(input,13,FollowSets000.FOLLOW_13_in_ruleWeightedTactic6197); 
+                    otherlv_3=(Token)match(input,13,FollowSets000.FOLLOW_13_in_ruleWeightedTactic6198); 
 
                         	newLeafNode(otherlv_3, grammarAccess.getWeightedTacticAccess().getRightSquareBracketKeyword_1_2());
                         
@@ -6701,11 +6695,11 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_4=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleWeightedTactic6211); 
+            otherlv_4=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleWeightedTactic6212); 
 
                 	newLeafNode(otherlv_4, grammarAccess.getWeightedTacticAccess().getEqualsSignKeyword_2());
                 
-            otherlv_5=(Token)match(input,27,FollowSets000.FOLLOW_27_in_ruleWeightedTactic6223); 
+            otherlv_5=(Token)match(input,27,FollowSets000.FOLLOW_27_in_ruleWeightedTactic6224); 
 
                 	newLeafNode(otherlv_5, grammarAccess.getWeightedTacticAccess().getLeftParenthesisKeyword_3());
                 
@@ -6720,11 +6714,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_ruleWeightedTactic6236); 
+                    otherlv_6=(Token)match(input,74,FollowSets000.FOLLOW_74_in_ruleWeightedTactic6237); 
 
                         	newLeafNode(otherlv_6, grammarAccess.getWeightedTacticAccess().getTacticKeyword_4_0());
                         
-                    otherlv_7=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleWeightedTactic6248); 
+                    otherlv_7=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleWeightedTactic6249); 
 
                         	newLeafNode(otherlv_7, grammarAccess.getWeightedTacticAccess().getEqualsSignKeyword_4_1());
                         
@@ -6748,7 +6742,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getWeightedTacticAccess().getUsedTacticTacticCrossReference_5_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleWeightedTactic6273);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleWeightedTactic6274);
             ruleEString();
 
             state._fsp--;
@@ -6762,7 +6756,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_9=(Token)match(input,17,FollowSets000.FOLLOW_17_in_ruleWeightedTactic6285); 
+            otherlv_9=(Token)match(input,17,FollowSets000.FOLLOW_17_in_ruleWeightedTactic6286); 
 
                 	newLeafNode(otherlv_9, grammarAccess.getWeightedTacticAccess().getCommaKeyword_6());
                 
@@ -6777,11 +6771,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_ruleWeightedTactic6298); 
+                    otherlv_10=(Token)match(input,75,FollowSets000.FOLLOW_75_in_ruleWeightedTactic6299); 
 
                         	newLeafNode(otherlv_10, grammarAccess.getWeightedTacticAccess().getDefaultKeyword_7_0());
                         
-                    otherlv_11=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleWeightedTactic6310); 
+                    otherlv_11=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleWeightedTactic6311); 
 
                         	newLeafNode(otherlv_11, grammarAccess.getWeightedTacticAccess().getEqualsSignKeyword_7_1());
                         
@@ -6800,7 +6794,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getWeightedTacticAccess().getDefaultWeightEDoubleParserRuleCall_8_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleEDouble_in_ruleWeightedTactic6333);
+            pushFollow(FollowSets000.FOLLOW_ruleEDouble_in_ruleWeightedTactic6334);
             lv_defaultWeight_12_0=ruleEDouble();
 
             state._fsp--;
@@ -6822,7 +6816,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_13=(Token)match(input,17,FollowSets000.FOLLOW_17_in_ruleWeightedTactic6345); 
+            otherlv_13=(Token)match(input,17,FollowSets000.FOLLOW_17_in_ruleWeightedTactic6346); 
 
                 	newLeafNode(otherlv_13, grammarAccess.getWeightedTacticAccess().getCommaKeyword_9());
                 
@@ -6837,11 +6831,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_ruleWeightedTactic6358); 
+                    otherlv_14=(Token)match(input,76,FollowSets000.FOLLOW_76_in_ruleWeightedTactic6359); 
 
                         	newLeafNode(otherlv_14, grammarAccess.getWeightedTacticAccess().getCurrentKeyword_10_0());
                         
-                    otherlv_15=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleWeightedTactic6370); 
+                    otherlv_15=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleWeightedTactic6371); 
 
                         	newLeafNode(otherlv_15, grammarAccess.getWeightedTacticAccess().getEqualsSignKeyword_10_1());
                         
@@ -6860,7 +6854,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getWeightedTacticAccess().getCurrentWeightEDoubleParserRuleCall_11_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleEDouble_in_ruleWeightedTactic6393);
+            pushFollow(FollowSets000.FOLLOW_ruleEDouble_in_ruleWeightedTactic6394);
             lv_currentWeight_16_0=ruleEDouble();
 
             state._fsp--;
@@ -6893,7 +6887,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_ruleWeightedTactic6406); 
+                    otherlv_17=(Token)match(input,17,FollowSets000.FOLLOW_17_in_ruleWeightedTactic6407); 
 
                         	newLeafNode(otherlv_17, grammarAccess.getWeightedTacticAccess().getCommaKeyword_12_0());
                         
@@ -6908,11 +6902,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_ruleWeightedTactic6419); 
+                            otherlv_18=(Token)match(input,77,FollowSets000.FOLLOW_77_in_ruleWeightedTactic6420); 
 
                                 	newLeafNode(otherlv_18, grammarAccess.getWeightedTacticAccess().getLastImpactKeyword_12_1_0());
                                 
-                            otherlv_19=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleWeightedTactic6431); 
+                            otherlv_19=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleWeightedTactic6432); 
 
                                 	newLeafNode(otherlv_19, grammarAccess.getWeightedTacticAccess().getEqualsSignKeyword_12_1_1());
                                 
@@ -6936,7 +6930,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                      
                     	        newCompositeNode(grammarAccess.getWeightedTacticAccess().getLastImpactImpactCrossReference_12_2_0()); 
                     	    
-                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleWeightedTactic6456);
+                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleWeightedTactic6457);
                     ruleEString();
 
                     state._fsp--;
@@ -6956,7 +6950,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_21=(Token)match(input,28,FollowSets000.FOLLOW_28_in_ruleWeightedTactic6470); 
+            otherlv_21=(Token)match(input,28,FollowSets000.FOLLOW_28_in_ruleWeightedTactic6471); 
 
                 	newLeafNode(otherlv_21, grammarAccess.getWeightedTacticAccess().getRightParenthesisKeyword_13());
                 
@@ -6993,13 +6987,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_entryRuleWeightingFunction6506);
+            pushFollow(FollowSets000.FOLLOW_ruleWeightingFunction_in_entryRuleWeightingFunction6507);
             iv_ruleWeightingFunction=ruleWeightingFunction();
 
             state._fsp--;
 
              current =iv_ruleWeightingFunction; 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleWeightingFunction6516); 
+            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleWeightingFunction6517); 
 
             }
 
@@ -7062,7 +7056,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getWeightingFunctionAccess().getNameEStringParserRuleCall_0_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleWeightingFunction6562);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleWeightingFunction6563);
             lv_name_0_0=ruleEString();
 
             state._fsp--;
@@ -7095,7 +7089,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_ruleWeightingFunction6575); 
+                    otherlv_1=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleWeightingFunction6576); 
 
                         	newLeafNode(otherlv_1, grammarAccess.getWeightingFunctionAccess().getIdKeyword_1_0());
                         
@@ -7108,7 +7102,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                      
                     	        newCompositeNode(grammarAccess.getWeightingFunctionAccess().getIdEStringParserRuleCall_1_1_0()); 
                     	    
-                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleWeightingFunction6596);
+                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleWeightingFunction6597);
                     lv_id_2_0=ruleEString();
 
                     state._fsp--;
@@ -7130,7 +7124,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
                     }
 
-                    otherlv_3=(Token)match(input,13,FollowSets000.FOLLOW_13_in_ruleWeightingFunction6608); 
+                    otherlv_3=(Token)match(input,13,FollowSets000.FOLLOW_13_in_ruleWeightingFunction6609); 
 
                         	newLeafNode(otherlv_3, grammarAccess.getWeightingFunctionAccess().getRightSquareBracketKeyword_1_2());
                         
@@ -7140,19 +7134,19 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_4=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleWeightingFunction6622); 
+            otherlv_4=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleWeightingFunction6623); 
 
                 	newLeafNode(otherlv_4, grammarAccess.getWeightingFunctionAccess().getEqualsSignKeyword_2());
                 
-            otherlv_5=(Token)match(input,27,FollowSets000.FOLLOW_27_in_ruleWeightingFunction6634); 
+            otherlv_5=(Token)match(input,27,FollowSets000.FOLLOW_27_in_ruleWeightingFunction6635); 
 
                 	newLeafNode(otherlv_5, grammarAccess.getWeightingFunctionAccess().getLeftParenthesisKeyword_3());
                 
-            otherlv_6=(Token)match(input,78,FollowSets000.FOLLOW_78_in_ruleWeightingFunction6646); 
+            otherlv_6=(Token)match(input,78,FollowSets000.FOLLOW_78_in_ruleWeightingFunction6647); 
 
                 	newLeafNode(otherlv_6, grammarAccess.getWeightingFunctionAccess().getWeightingFunctionImplementationKeyword_4());
                 
-            otherlv_7=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleWeightingFunction6658); 
+            otherlv_7=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleWeightingFunction6659); 
 
                 	newLeafNode(otherlv_7, grammarAccess.getWeightingFunctionAccess().getEqualsSignKeyword_5());
                 
@@ -7165,7 +7159,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getWeightingFunctionAccess().getWeightingFunctionImplementationEStringParserRuleCall_6_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleWeightingFunction6679);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleWeightingFunction6680);
             lv_weightingFunctionImplementation_8_0=ruleEString();
 
             state._fsp--;
@@ -7187,15 +7181,15 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_9=(Token)match(input,79,FollowSets000.FOLLOW_79_in_ruleWeightingFunction6691); 
+            otherlv_9=(Token)match(input,79,FollowSets000.FOLLOW_79_in_ruleWeightingFunction6692); 
 
                 	newLeafNode(otherlv_9, grammarAccess.getWeightingFunctionAccess().getWeightedMetricsKeyword_7());
                 
-            otherlv_10=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleWeightingFunction6703); 
+            otherlv_10=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleWeightingFunction6704); 
 
                 	newLeafNode(otherlv_10, grammarAccess.getWeightingFunctionAccess().getEqualsSignKeyword_8());
                 
-            otherlv_11=(Token)match(input,27,FollowSets000.FOLLOW_27_in_ruleWeightingFunction6715); 
+            otherlv_11=(Token)match(input,27,FollowSets000.FOLLOW_27_in_ruleWeightingFunction6716); 
 
                 	newLeafNode(otherlv_11, grammarAccess.getWeightingFunctionAccess().getLeftParenthesisKeyword_9());
                 
@@ -7208,7 +7202,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getWeightingFunctionAccess().getWeightedMetricsWeightedMetricParserRuleCall_10_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleWeightedMetric_in_ruleWeightingFunction6736);
+            pushFollow(FollowSets000.FOLLOW_ruleWeightedMetric_in_ruleWeightingFunction6737);
             lv_weightedMetrics_12_0=ruleWeightedMetric();
 
             state._fsp--;
@@ -7245,7 +7239,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_ruleWeightingFunction6749); 
+            	    otherlv_13=(Token)match(input,17,FollowSets000.FOLLOW_17_in_ruleWeightingFunction6750); 
 
             	        	newLeafNode(otherlv_13, grammarAccess.getWeightingFunctionAccess().getCommaKeyword_11_0());
             	        
@@ -7258,7 +7252,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
             	     
             	    	        newCompositeNode(grammarAccess.getWeightingFunctionAccess().getWeightedMetricsWeightedMetricParserRuleCall_11_1_0()); 
             	    	    
-            	    pushFollow(FollowSets000.FOLLOW_ruleWeightedMetric_in_ruleWeightingFunction6770);
+            	    pushFollow(FollowSets000.FOLLOW_ruleWeightedMetric_in_ruleWeightingFunction6771);
             	    lv_weightedMetrics_14_0=ruleWeightedMetric();
 
             	    state._fsp--;
@@ -7289,11 +7283,11 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                 }
             } while (true);
 
-            otherlv_15=(Token)match(input,28,FollowSets000.FOLLOW_28_in_ruleWeightingFunction6784); 
+            otherlv_15=(Token)match(input,28,FollowSets000.FOLLOW_28_in_ruleWeightingFunction6785); 
 
                 	newLeafNode(otherlv_15, grammarAccess.getWeightingFunctionAccess().getRightParenthesisKeyword_12());
                 
-            otherlv_16=(Token)match(input,28,FollowSets000.FOLLOW_28_in_ruleWeightingFunction6796); 
+            otherlv_16=(Token)match(input,28,FollowSets000.FOLLOW_28_in_ruleWeightingFunction6797); 
 
                 	newLeafNode(otherlv_16, grammarAccess.getWeightingFunctionAccess().getRightParenthesisKeyword_13());
                 
@@ -7330,13 +7324,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_entryRuleSpecification6832);
+            pushFollow(FollowSets000.FOLLOW_ruleSpecification_in_entryRuleSpecification6833);
             iv_ruleSpecification=ruleSpecification();
 
             state._fsp--;
 
              current =iv_ruleSpecification; 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleSpecification6842); 
+            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleSpecification6843); 
 
             }
 
@@ -7391,7 +7385,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_ruleSpecification6880); 
+                    otherlv_0=(Token)match(input,80,FollowSets000.FOLLOW_80_in_ruleSpecification6881); 
 
                         	newLeafNode(otherlv_0, grammarAccess.getSpecificationAccess().getSpecificationKeyword_0());
                         
@@ -7401,7 +7395,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_1=(Token)match(input,27,FollowSets000.FOLLOW_27_in_ruleSpecification6894); 
+            otherlv_1=(Token)match(input,27,FollowSets000.FOLLOW_27_in_ruleSpecification6895); 
 
                 	newLeafNode(otherlv_1, grammarAccess.getSpecificationAccess().getLeftParenthesisKeyword_1());
                 
@@ -7416,7 +7410,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_ruleSpecification6907); 
+                    otherlv_2=(Token)match(input,81,FollowSets000.FOLLOW_81_in_ruleSpecification6908); 
 
                         	newLeafNode(otherlv_2, grammarAccess.getSpecificationAccess().getMetricTypeKeyword_2());
                         
@@ -7440,7 +7434,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getSpecificationAccess().getMetricTypeMetricTypeCrossReference_3_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleSpecification6932);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleSpecification6933);
             ruleEString();
 
             state._fsp--;
@@ -7454,7 +7448,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_4=(Token)match(input,17,FollowSets000.FOLLOW_17_in_ruleSpecification6944); 
+            otherlv_4=(Token)match(input,17,FollowSets000.FOLLOW_17_in_ruleSpecification6945); 
 
                 	newLeafNode(otherlv_4, grammarAccess.getSpecificationAccess().getCommaKeyword_4());
                 
@@ -7469,7 +7463,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_ruleSpecification6957); 
+                    otherlv_5=(Token)match(input,82,FollowSets000.FOLLOW_82_in_ruleSpecification6958); 
 
                         	newLeafNode(otherlv_5, grammarAccess.getSpecificationAccess().getRelationalOperatorKeyword_5());
                         
@@ -7488,7 +7482,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getSpecificationAccess().getRelationalOperatorRelationalOperatorEnumRuleCall_6_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleRelationalOperator_in_ruleSpecification6980);
+            pushFollow(FollowSets000.FOLLOW_ruleRelationalOperator_in_ruleSpecification6981);
             lv_relationalOperator_6_0=ruleRelationalOperator();
 
             state._fsp--;
@@ -7510,7 +7504,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_7=(Token)match(input,17,FollowSets000.FOLLOW_17_in_ruleSpecification6992); 
+            otherlv_7=(Token)match(input,17,FollowSets000.FOLLOW_17_in_ruleSpecification6993); 
 
                 	newLeafNode(otherlv_7, grammarAccess.getSpecificationAccess().getCommaKeyword_7());
                 
@@ -7525,7 +7519,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_ruleSpecification7005); 
+                    otherlv_8=(Token)match(input,37,FollowSets000.FOLLOW_37_in_ruleSpecification7006); 
 
                         	newLeafNode(otherlv_8, grammarAccess.getSpecificationAccess().getValueKeyword_8());
                         
@@ -7544,7 +7538,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getSpecificationAccess().getValueEDoubleParserRuleCall_9_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleEDouble_in_ruleSpecification7028);
+            pushFollow(FollowSets000.FOLLOW_ruleEDouble_in_ruleSpecification7029);
             lv_value_9_0=ruleEDouble();
 
             state._fsp--;
@@ -7566,7 +7560,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_10=(Token)match(input,28,FollowSets000.FOLLOW_28_in_ruleSpecification7040); 
+            otherlv_10=(Token)match(input,28,FollowSets000.FOLLOW_28_in_ruleSpecification7041); 
 
                 	newLeafNode(otherlv_10, grammarAccess.getSpecificationAccess().getRightParenthesisKeyword_10());
                 
@@ -7603,13 +7597,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_entryRuleEDate7083);
+            pushFollow(FollowSets000.FOLLOW_ruleEDate_in_entryRuleEDate7084);
             iv_ruleEDate=ruleEDate();
 
             state._fsp--;
 
              current =iv_ruleEDate.getText(); 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleEDate7094); 
+            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleEDate7095); 
 
             }
 
@@ -7639,7 +7633,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_ruleEDate7131); 
+            kw=(Token)match(input,83,FollowSets000.FOLLOW_83_in_ruleEDate7132); 
 
                     current.merge(kw);
                     newLeafNode(kw, grammarAccess.getEDateAccess().getEDateKeyword()); 
@@ -7674,13 +7668,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_entryRuleMetricValue7170);
+            pushFollow(FollowSets000.FOLLOW_ruleMetricValue_in_entryRuleMetricValue7171);
             iv_ruleMetricValue=ruleMetricValue();
 
             state._fsp--;
 
              current =iv_ruleMetricValue; 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleMetricValue7180); 
+            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleMetricValue7181); 
 
             }
 
@@ -7726,7 +7720,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_ruleMetricValue7217); 
+            otherlv_0=(Token)match(input,84,FollowSets000.FOLLOW_84_in_ruleMetricValue7218); 
 
                 	newLeafNode(otherlv_0, grammarAccess.getMetricValueAccess().getMetricValueKeyword_0());
                 
@@ -7739,7 +7733,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getMetricValueAccess().getNameEStringParserRuleCall_1_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleMetricValue7238);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleMetricValue7239);
             lv_name_1_0=ruleEString();
 
             state._fsp--;
@@ -7772,7 +7766,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_ruleMetricValue7251); 
+                    otherlv_2=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleMetricValue7252); 
 
                         	newLeafNode(otherlv_2, grammarAccess.getMetricValueAccess().getIdKeyword_2_0());
                         
@@ -7785,7 +7779,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                      
                     	        newCompositeNode(grammarAccess.getMetricValueAccess().getIdEStringParserRuleCall_2_1_0()); 
                     	    
-                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleMetricValue7272);
+                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleMetricValue7273);
                     lv_id_3_0=ruleEString();
 
                     state._fsp--;
@@ -7807,7 +7801,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
                     }
 
-                    otherlv_4=(Token)match(input,13,FollowSets000.FOLLOW_13_in_ruleMetricValue7284); 
+                    otherlv_4=(Token)match(input,13,FollowSets000.FOLLOW_13_in_ruleMetricValue7285); 
 
                         	newLeafNode(otherlv_4, grammarAccess.getMetricValueAccess().getRightSquareBracketKeyword_2_2());
                         
@@ -7817,11 +7811,11 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_5=(Token)match(input,14,FollowSets000.FOLLOW_14_in_ruleMetricValue7298); 
+            otherlv_5=(Token)match(input,14,FollowSets000.FOLLOW_14_in_ruleMetricValue7299); 
 
                 	newLeafNode(otherlv_5, grammarAccess.getMetricValueAccess().getLeftCurlyBracketKeyword_3());
                 
-            otherlv_6=(Token)match(input,37,FollowSets000.FOLLOW_37_in_ruleMetricValue7310); 
+            otherlv_6=(Token)match(input,37,FollowSets000.FOLLOW_37_in_ruleMetricValue7311); 
 
                 	newLeafNode(otherlv_6, grammarAccess.getMetricValueAccess().getValueKeyword_4());
                 
@@ -7834,7 +7828,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getMetricValueAccess().getValueEDoubleParserRuleCall_5_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleEDouble_in_ruleMetricValue7331);
+            pushFollow(FollowSets000.FOLLOW_ruleEDouble_in_ruleMetricValue7332);
             lv_value_7_0=ruleEDouble();
 
             state._fsp--;
@@ -7856,7 +7850,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_8=(Token)match(input,85,FollowSets000.FOLLOW_85_in_ruleMetricValue7343); 
+            otherlv_8=(Token)match(input,85,FollowSets000.FOLLOW_85_in_ruleMetricValue7344); 
 
                 	newLeafNode(otherlv_8, grammarAccess.getMetricValueAccess().getMeasuredEntityKeyword_6());
                 
@@ -7874,7 +7868,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getMetricValueAccess().getMeasuredEntityMeasuredEntityCrossReference_7_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleMetricValue7366);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleMetricValue7367);
             ruleEString();
 
             state._fsp--;
@@ -7888,7 +7882,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_10=(Token)match(input,81,FollowSets000.FOLLOW_81_in_ruleMetricValue7378); 
+            otherlv_10=(Token)match(input,81,FollowSets000.FOLLOW_81_in_ruleMetricValue7379); 
 
                 	newLeafNode(otherlv_10, grammarAccess.getMetricValueAccess().getMetricTypeKeyword_8());
                 
@@ -7906,7 +7900,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getMetricValueAccess().getMetricTypeMetricTypeCrossReference_9_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleMetricValue7401);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleMetricValue7402);
             ruleEString();
 
             state._fsp--;
@@ -7920,7 +7914,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_12=(Token)match(input,22,FollowSets000.FOLLOW_22_in_ruleMetricValue7413); 
+            otherlv_12=(Token)match(input,22,FollowSets000.FOLLOW_22_in_ruleMetricValue7414); 
 
                 	newLeafNode(otherlv_12, grammarAccess.getMetricValueAccess().getRightCurlyBracketKeyword_10());
                 
@@ -7957,13 +7951,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_entryRuleWeightedMetric7451);
+            pushFollow(FollowSets000.FOLLOW_ruleWeightedMetric_in_entryRuleWeightedMetric7452);
             iv_ruleWeightedMetric=ruleWeightedMetric();
 
             state._fsp--;
 
              current =iv_ruleWeightedMetric; 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleWeightedMetric7461); 
+            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleWeightedMetric7462); 
 
             }
 
@@ -8023,7 +8017,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_ruleWeightedMetric7499); 
+                    otherlv_0=(Token)match(input,86,FollowSets000.FOLLOW_86_in_ruleWeightedMetric7500); 
 
                         	newLeafNode(otherlv_0, grammarAccess.getWeightedMetricAccess().getWeightedMetricKeyword_0());
                         
@@ -8042,7 +8036,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getWeightedMetricAccess().getNameEStringParserRuleCall_1_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleWeightedMetric7522);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleWeightedMetric7523);
             lv_name_1_0=ruleEString();
 
             state._fsp--;
@@ -8075,7 +8069,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_ruleWeightedMetric7535); 
+                    otherlv_2=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleWeightedMetric7536); 
 
                         	newLeafNode(otherlv_2, grammarAccess.getWeightedMetricAccess().getIdKeyword_2_0());
                         
@@ -8088,7 +8082,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
                      
                     	        newCompositeNode(grammarAccess.getWeightedMetricAccess().getIdEStringParserRuleCall_2_1_0()); 
                     	    
-                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleWeightedMetric7556);
+                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleWeightedMetric7557);
                     lv_id_3_0=ruleEString();
 
                     state._fsp--;
@@ -8110,7 +8104,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
                     }
 
-                    otherlv_4=(Token)match(input,13,FollowSets000.FOLLOW_13_in_ruleWeightedMetric7568); 
+                    otherlv_4=(Token)match(input,13,FollowSets000.FOLLOW_13_in_ruleWeightedMetric7569); 
 
                         	newLeafNode(otherlv_4, grammarAccess.getWeightedMetricAccess().getRightSquareBracketKeyword_2_2());
                         
@@ -8120,11 +8114,11 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_5=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleWeightedMetric7582); 
+            otherlv_5=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleWeightedMetric7583); 
 
                 	newLeafNode(otherlv_5, grammarAccess.getWeightedMetricAccess().getEqualsSignKeyword_3());
                 
-            otherlv_6=(Token)match(input,27,FollowSets000.FOLLOW_27_in_ruleWeightedMetric7594); 
+            otherlv_6=(Token)match(input,27,FollowSets000.FOLLOW_27_in_ruleWeightedMetric7595); 
 
                 	newLeafNode(otherlv_6, grammarAccess.getWeightedMetricAccess().getLeftParenthesisKeyword_4());
                 
@@ -8139,11 +8133,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_ruleWeightedMetric7607); 
+                    otherlv_7=(Token)match(input,81,FollowSets000.FOLLOW_81_in_ruleWeightedMetric7608); 
 
                         	newLeafNode(otherlv_7, grammarAccess.getWeightedMetricAccess().getMetricTypeKeyword_5_0());
                         
-                    otherlv_8=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleWeightedMetric7619); 
+                    otherlv_8=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleWeightedMetric7620); 
 
                         	newLeafNode(otherlv_8, grammarAccess.getWeightedMetricAccess().getEqualsSignKeyword_5_1());
                         
@@ -8167,7 +8161,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getWeightedMetricAccess().getMetricTypeMetricTypeCrossReference_6_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleWeightedMetric7644);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleWeightedMetric7645);
             ruleEString();
 
             state._fsp--;
@@ -8181,7 +8175,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_10=(Token)match(input,17,FollowSets000.FOLLOW_17_in_ruleWeightedMetric7656); 
+            otherlv_10=(Token)match(input,17,FollowSets000.FOLLOW_17_in_ruleWeightedMetric7657); 
 
                 	newLeafNode(otherlv_10, grammarAccess.getWeightedMetricAccess().getCommaKeyword_7());
                 
@@ -8196,11 +8190,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_ruleWeightedMetric7669); 
+                    otherlv_11=(Token)match(input,87,FollowSets000.FOLLOW_87_in_ruleWeightedMetric7670); 
 
                         	newLeafNode(otherlv_11, grammarAccess.getWeightedMetricAccess().getWeightKeyword_8_0());
                         
-                    otherlv_12=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleWeightedMetric7681); 
+                    otherlv_12=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleWeightedMetric7682); 
 
                         	newLeafNode(otherlv_12, grammarAccess.getWeightedMetricAccess().getEqualsSignKeyword_8_1());
                         
@@ -8219,7 +8213,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getWeightedMetricAccess().getWeightEDoubleParserRuleCall_9_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleEDouble_in_ruleWeightedMetric7704);
+            pushFollow(FollowSets000.FOLLOW_ruleEDouble_in_ruleWeightedMetric7705);
             lv_weight_13_0=ruleEDouble();
 
             state._fsp--;
@@ -8241,7 +8235,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_14=(Token)match(input,28,FollowSets000.FOLLOW_28_in_ruleWeightedMetric7716); 
+            otherlv_14=(Token)match(input,28,FollowSets000.FOLLOW_28_in_ruleWeightedMetric7717); 
 
                 	newLeafNode(otherlv_14, grammarAccess.getWeightedMetricAccess().getRightParenthesisKeyword_10());
                 
@@ -8329,7 +8323,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_ruleAdaptationScope7766); 
+                    enumLiteral_0=(Token)match(input,88,FollowSets000.FOLLOW_88_in_ruleAdaptationScope7767); 
 
                             current = grammarAccess.getAdaptationScopeAccess().getNOT_SETEnumLiteralDeclaration_0().getEnumLiteral().getInstance();
                             newLeafNode(enumLiteral_0, grammarAccess.getAdaptationScopeAccess().getNOT_SETEnumLiteralDeclaration_0()); 
@@ -8346,7 +8340,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_ruleAdaptationScope7783); 
+                    enumLiteral_1=(Token)match(input,89,FollowSets000.FOLLOW_89_in_ruleAdaptationScope7784); 
 
                             current = grammarAccess.getAdaptationScopeAccess().getTHISEnumLiteralDeclaration_1().getEnumLiteral().getInstance();
                             newLeafNode(enumLiteral_1, grammarAccess.getAdaptationScopeAccess().getTHISEnumLiteralDeclaration_1()); 
@@ -8363,7 +8357,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_ruleAdaptationScope7800); 
+                    enumLiteral_2=(Token)match(input,90,FollowSets000.FOLLOW_90_in_ruleAdaptationScope7801); 
 
                             current = grammarAccess.getAdaptationScopeAccess().getLEAST_UTILIZED_FIRSTEnumLiteralDeclaration_2().getEnumLiteral().getInstance();
                             newLeafNode(enumLiteral_2, grammarAccess.getAdaptationScopeAccess().getLEAST_UTILIZED_FIRSTEnumLiteralDeclaration_2()); 
@@ -8380,7 +8374,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_ruleAdaptationScope7817); 
+                    enumLiteral_3=(Token)match(input,91,FollowSets000.FOLLOW_91_in_ruleAdaptationScope7818); 
 
                             current = grammarAccess.getAdaptationScopeAccess().getMOST_UTILIZED_FIRSTEnumLiteralDeclaration_3().getEnumLiteral().getInstance();
                             newLeafNode(enumLiteral_3, grammarAccess.getAdaptationScopeAccess().getMOST_UTILIZED_FIRSTEnumLiteralDeclaration_3()); 
@@ -8397,7 +8391,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_ruleAdaptationScope7834); 
+                    enumLiteral_4=(Token)match(input,92,FollowSets000.FOLLOW_92_in_ruleAdaptationScope7835); 
 
                             current = grammarAccess.getAdaptationScopeAccess().getRANDOMEnumLiteralDeclaration_4().getEnumLiteral().getInstance();
                             newLeafNode(enumLiteral_4, grammarAccess.getAdaptationScopeAccess().getRANDOMEnumLiteralDeclaration_4()); 
@@ -8414,7 +8408,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_ruleAdaptationScope7851); 
+                    enumLiteral_5=(Token)match(input,93,FollowSets000.FOLLOW_93_in_ruleAdaptationScope7852); 
 
                             current = grammarAccess.getAdaptationScopeAccess().getALLEnumLiteralDeclaration_5().getEnumLiteral().getInstance();
                             newLeafNode(enumLiteral_5, grammarAccess.getAdaptationScopeAccess().getALLEnumLiteralDeclaration_5()); 
@@ -8497,7 +8491,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_ruleAdaptationDirection7896); 
+                    enumLiteral_0=(Token)match(input,88,FollowSets000.FOLLOW_88_in_ruleAdaptationDirection7897); 
 
                             current = grammarAccess.getAdaptationDirectionAccess().getNOT_SETEnumLiteralDeclaration_0().getEnumLiteral().getInstance();
                             newLeafNode(enumLiteral_0, grammarAccess.getAdaptationDirectionAccess().getNOT_SETEnumLiteralDeclaration_0()); 
@@ -8514,7 +8508,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_ruleAdaptationDirection7913); 
+                    enumLiteral_1=(Token)match(input,94,FollowSets000.FOLLOW_94_in_ruleAdaptationDirection7914); 
 
                             current = grammarAccess.getAdaptationDirectionAccess().getINCREASEEnumLiteralDeclaration_1().getEnumLiteral().getInstance();
                             newLeafNode(enumLiteral_1, grammarAccess.getAdaptationDirectionAccess().getINCREASEEnumLiteralDeclaration_1()); 
@@ -8531,7 +8525,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_ruleAdaptationDirection7930); 
+                    enumLiteral_2=(Token)match(input,95,FollowSets000.FOLLOW_95_in_ruleAdaptationDirection7931); 
 
                             current = grammarAccess.getAdaptationDirectionAccess().getDECREASEEnumLiteralDeclaration_2().getEnumLiteral().getInstance();
                             newLeafNode(enumLiteral_2, grammarAccess.getAdaptationDirectionAccess().getDECREASEEnumLiteralDeclaration_2()); 
@@ -8548,7 +8542,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_ruleAdaptationDirection7947); 
+                    enumLiteral_3=(Token)match(input,96,FollowSets000.FOLLOW_96_in_ruleAdaptationDirection7948); 
 
                             current = grammarAccess.getAdaptationDirectionAccess().getMIGRATEEnumLiteralDeclaration_3().getEnumLiteral().getInstance();
                             newLeafNode(enumLiteral_3, grammarAccess.getAdaptationDirectionAccess().getMIGRATEEnumLiteralDeclaration_3()); 
@@ -8679,7 +8673,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_ruleRelationalOperator7992); 
+                    enumLiteral_0=(Token)match(input,97,FollowSets000.FOLLOW_97_in_ruleRelationalOperator7993); 
 
                             current = grammarAccess.getRelationalOperatorAccess().getEQUALEnumLiteralDeclaration_0().getEnumLiteral().getInstance();
                             newLeafNode(enumLiteral_0, grammarAccess.getRelationalOperatorAccess().getEQUALEnumLiteralDeclaration_0()); 
@@ -8696,7 +8690,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_ruleRelationalOperator8009); 
+                    enumLiteral_1=(Token)match(input,98,FollowSets000.FOLLOW_98_in_ruleRelationalOperator8010); 
 
                             current = grammarAccess.getRelationalOperatorAccess().getNOT_EQUALEnumLiteralDeclaration_1().getEnumLiteral().getInstance();
                             newLeafNode(enumLiteral_1, grammarAccess.getRelationalOperatorAccess().getNOT_EQUALEnumLiteralDeclaration_1()); 
@@ -8713,7 +8707,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_ruleRelationalOperator8026); 
+                    enumLiteral_2=(Token)match(input,99,FollowSets000.FOLLOW_99_in_ruleRelationalOperator8027); 
 
                             current = grammarAccess.getRelationalOperatorAccess().getGREATEREnumLiteralDeclaration_2().getEnumLiteral().getInstance();
                             newLeafNode(enumLiteral_2, grammarAccess.getRelationalOperatorAccess().getGREATEREnumLiteralDeclaration_2()); 
@@ -8730,7 +8724,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_ruleRelationalOperator8043); 
+                    enumLiteral_3=(Token)match(input,100,FollowSets000.FOLLOW_100_in_ruleRelationalOperator8044); 
 
                             current = grammarAccess.getRelationalOperatorAccess().getGREATER_EQUALEnumLiteralDeclaration_3().getEnumLiteral().getInstance();
                             newLeafNode(enumLiteral_3, grammarAccess.getRelationalOperatorAccess().getGREATER_EQUALEnumLiteralDeclaration_3()); 
@@ -8747,7 +8741,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_ruleRelationalOperator8060); 
+                    enumLiteral_4=(Token)match(input,101,FollowSets000.FOLLOW_101_in_ruleRelationalOperator8061); 
 
                             current = grammarAccess.getRelationalOperatorAccess().getLESSEnumLiteralDeclaration_4().getEnumLiteral().getInstance();
                             newLeafNode(enumLiteral_4, grammarAccess.getRelationalOperatorAccess().getLESSEnumLiteralDeclaration_4()); 
@@ -8764,7 +8758,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_ruleRelationalOperator8077); 
+                    enumLiteral_5=(Token)match(input,102,FollowSets000.FOLLOW_102_in_ruleRelationalOperator8078); 
 
                             current = grammarAccess.getRelationalOperatorAccess().getLESS_EQUALEnumLiteralDeclaration_5().getEnumLiteral().getInstance();
                             newLeafNode(enumLiteral_5, grammarAccess.getRelationalOperatorAccess().getLESS_EQUALEnumLiteralDeclaration_5()); 
@@ -8781,7 +8775,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_ruleRelationalOperator8094); 
+                    enumLiteral_6=(Token)match(input,103,FollowSets000.FOLLOW_103_in_ruleRelationalOperator8095); 
 
                             current = grammarAccess.getRelationalOperatorAccess().getEQUALEnumLiteralDeclaration_6().getEnumLiteral().getInstance();
                             newLeafNode(enumLiteral_6, grammarAccess.getRelationalOperatorAccess().getEQUALEnumLiteralDeclaration_6()); 
@@ -8798,7 +8792,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_ruleRelationalOperator8111); 
+                    enumLiteral_7=(Token)match(input,104,FollowSets000.FOLLOW_104_in_ruleRelationalOperator8112); 
 
                             current = grammarAccess.getRelationalOperatorAccess().getNOT_EQUALEnumLiteralDeclaration_7().getEnumLiteral().getInstance();
                             newLeafNode(enumLiteral_7, grammarAccess.getRelationalOperatorAccess().getNOT_EQUALEnumLiteralDeclaration_7()); 
@@ -8815,7 +8809,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_ruleRelationalOperator8128); 
+                    enumLiteral_8=(Token)match(input,105,FollowSets000.FOLLOW_105_in_ruleRelationalOperator8129); 
 
                             current = grammarAccess.getRelationalOperatorAccess().getGREATEREnumLiteralDeclaration_8().getEnumLiteral().getInstance();
                             newLeafNode(enumLiteral_8, grammarAccess.getRelationalOperatorAccess().getGREATEREnumLiteralDeclaration_8()); 
@@ -8832,7 +8826,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_ruleRelationalOperator8145); 
+                    enumLiteral_9=(Token)match(input,106,FollowSets000.FOLLOW_106_in_ruleRelationalOperator8146); 
 
                             current = grammarAccess.getRelationalOperatorAccess().getGREATER_EQUALEnumLiteralDeclaration_9().getEnumLiteral().getInstance();
                             newLeafNode(enumLiteral_9, grammarAccess.getRelationalOperatorAccess().getGREATER_EQUALEnumLiteralDeclaration_9()); 
@@ -8849,7 +8843,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_ruleRelationalOperator8162); 
+                    enumLiteral_10=(Token)match(input,107,FollowSets000.FOLLOW_107_in_ruleRelationalOperator8163); 
 
                             current = grammarAccess.getRelationalOperatorAccess().getLESSEnumLiteralDeclaration_10().getEnumLiteral().getInstance();
                             newLeafNode(enumLiteral_10, grammarAccess.getRelationalOperatorAccess().getLESSEnumLiteralDeclaration_10()); 
@@ -8866,7 +8860,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_ruleRelationalOperator8179); 
+                    enumLiteral_11=(Token)match(input,108,FollowSets000.FOLLOW_108_in_ruleRelationalOperator8180); 
 
                             current = grammarAccess.getRelationalOperatorAccess().getLESS_EQUALEnumLiteralDeclaration_11().getEnumLiteral().getInstance();
                             newLeafNode(enumLiteral_11, grammarAccess.getRelationalOperatorAccess().getLESS_EQUALEnumLiteralDeclaration_11()); 
@@ -8917,7 +8911,7 @@ public class InternalStaLangParser extends AbstractInternalAntlrParser {
             "",
             "",
             "",
-            "\1\7\1\10",
+            "\1\10\1\7",
             "",
             "",
             "\1\11",
@@ -8965,430 +8959,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[]{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});
+        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});
     }
 
 
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 d1e1b515c4575a9b4bd4daeddc715a05d808cb60..9787a3b0a400e428295d10e76f156eb34573c153 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=EString 
+	 *         name=ID 
 	 *         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 fc6e7f81b87a9b622487c9dd5ba12948fb46951b..cd3fc1e20ee3855381f1db7c4816ff3395f9ffa1 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 cNameEStringParserRuleCall_2_0 = (RuleCall)cNameAssignment_2.eContents().get(0);
+		private final RuleCall cNameIDTerminalRuleCall_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=EString ("[id:" id=EString "]")? "{" ("parameters" ":"
+		//	importDeclaration+=ImportDeclaration* "AdaptationProcess" name=ID ("[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=EString ("[id:" id=EString "]")? "{" ("parameters" ":"
+		//importDeclaration+=ImportDeclaration* "AdaptationProcess" name=ID ("[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=EString
+		//name=ID
 		public Assignment getNameAssignment_2() { return cNameAssignment_2; }
 
-		//EString
-		public RuleCall getNameEStringParserRuleCall_2_0() { return cNameEStringParserRuleCall_2_0; }
+		//ID
+		public RuleCall getNameIDTerminalRuleCall_2_0() { return cNameIDTerminalRuleCall_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=EString ("[id:" id=EString "]")? "{" ("parameters" ":"
+	//	importDeclaration+=ImportDeclaration* "AdaptationProcess" name=ID ("[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)* "}";
diff --git a/edu.kit.ipd.descartes.mm.adaptation.sta/src/edu/kit/ipd/descartes/mm/adaptation/StaLang.xtext b/edu.kit.ipd.descartes.mm.adaptation.sta/src/edu/kit/ipd/descartes/mm/adaptation/StaLang.xtext
index 70335500e6c3a2ae446ef114547cea12d1d08e7f..5aa0880428ce554c63e621a10b5663191738943e 100644
--- a/edu.kit.ipd.descartes.mm.adaptation.sta/src/edu/kit/ipd/descartes/mm/adaptation/StaLang.xtext
+++ b/edu.kit.ipd.descartes.mm.adaptation.sta/src/edu/kit/ipd/descartes/mm/adaptation/StaLang.xtext
@@ -36,13 +36,6 @@ VariationType returns adaptationpoints::VariationType:
 	PropertyRange | SetOfConfigurations;
 
 
-
-
-
-
-
-
-
 EString returns ecore::EString:
 	STRING | ID;